@import url('https://fonts.googleapis.com/css2?family=Urbanist:ital,wght@0,100..900;1,100..900&display=swap');





* {

    margin: 0;

    padding: 0;

    box-sizing: border-box;

    font-family: "Urbanist", sans-serif !important;

}

#wpadminbar .ab-icon,
#wpadminbar .ab-icon:before,
#wpadminbar .ab-item:before,
.dashicons,
.dashicons-before:before {
    font-family: dashicons !important;
}



html {

    font-size: 62.5%;

    scroll-behavior: smooth;

}



/* ---------------------------------------------------------------

   FLUID TYPE SCALE  (no per-breakpoint font sizes - clamp() only)

   Body text is fluid; every em-based size below follows it.

   Min value @ ~360px wide  ->  max value @ ~1920px wide

   --------------------------------------------------------------- */

body {

    font-family: "Urbanist", sans-serif !important;

    background: #ffffff;

    color: #000;

    letter-spacing: 0.02em;

    font-size: clamp(1.6rem, 1.55rem + 0.12vw, 1.8rem);

    line-height: 1.55;

}



.elementor-widget-image-box .elementor-image-box-description {

    font-family: "Urbanist", sans-serif !important;

    color: #000;

    line-height: 1.5;

    margin-bottom: 0 !important;

}





/* purple-small-haeding */





.purple-heading {

    font-size: 2rem !important;

    line-height: 5rem;

    color: #223973 !important;

    position: relative;

    font-weight: 600 !important;

   

}



.purple-heading::after {

    content: '';

    position: absolute;

    width: 32%;

    background: #D9D9D9;

    height: 3px;

    left: 0;

    bottom: -12px;

    border-radius: 30px;

}



.purple-heading::before {

    content: '';

    position: absolute;

    width: 11%;

    background: #6277AD;

    height: 3px;

    left: 0;

    bottom: -12px;

    z-index: 1;

    border-radius: 30px;

}



.purple-heading-cen {

    font-size: 2rem !important;

    line-height: 5rem;

    color: #223973 !important;

    position: relative;

    font-weight: 600 !important;

    text-align: center!important;

    display: flex !important;

    justify-content: center;

}





.purple-heading-cen::before {

    content: '';

    position: absolute;

    width: 60px;

    background: #6152AD;

    height: 3px;

    left: 50%;

    bottom: -4px;

    z-index: 1;

    border-radius: 30px;

    transform: translate(-50%, 10px);

}





.banner-heading {

    font-size: clamp(4rem, 2.85rem + 3.2vw, 9rem);

    color: #000;

    font-weight: 600;

    line-height: 1.1;

}



.banner-colorTxt {

    color: #223973;

    font-family: "Merriweather", serif !important;

    font-style: italic;

    font-weight: 400;

    display: block;

}

.banner-inner-heading {

    font-size: clamp(3.2rem, 2.46rem + 2.05vw, 6.4rem);

    color: #000;

    font-weight: 600;

    line-height: 1.2;

}

.banner-subheading {

    font-size: clamp(1.7rem, 1.62rem + 0.2vw, 2rem) !important;

    line-height: 1.5;

}

.section-heading {

    font-size: clamp(2.6rem, 2.1rem + 1.1vw, 4.5rem);

    color: #000;

    font-weight: 600;

    line-height: 1.3;

}

.section-heading .elementor-heading-title {

    line-height: 1.3;

    margin: 0;

    padding: 0;

}

.section-subheading{

    font-size: clamp(1.8rem, 1.6rem + 0.35vw, 2.4rem);

    font-weight: 600;

    letter-spacing: .02em;

}



.section-subheading .elementor-heading-title {

    line-height: 1.3;

   

}



.purple-heading-cen .elementor-heading-title {

    line-height: 1.5;

 

}



.purple-heading .elementor-heading-title {

    line-height: 1.5;

 

}



.colorTxt {

    color: #223973;

    font-family: "Merriweather", serif !important;

    font-style: italic;

    font-weight: 400;



}



.section-description {

    font-size: clamp(1.7rem, 1.55rem + 0.3vw, 2rem);

    line-height: 1.5;

    color: #000;



}



p {

    font-size: 1em;

    line-height: 1.55;

    margin: 0 0 1em 0;

}



.text-center {

    text-align: center;

}





.purple-button .elementor-button-icon {

    font-size: 24px;

    transition: transform 0.3s ease;

}





.what-sci-wrapper .elementor-button-icon {

    font-size: 14px;



}



.purple-button:hover .elementor-button-icon {

    transform: translateX(4px);

}



.alan-button:hover .elementor-button-icon {

    transform: translateX(-4px);

}



.alan-button:hover .elementor-button-text {

    transform: translateX(4px);

}

.alan-button .elementor-button-text, .alan-button .elementor-button-icon {



    transition: transform 0.3s ease;

}

.width-200 .elementor-button {

    width: 200px;

}



.plast-button .plast-arrow {



    transition: transform 0.3s ease;

}

.plast-button:hover .plast-arrow {

    transform: translateX(4px);

}



.cringe-box {

    position: relative;

}



.cringe-box::before {

    position: absolute;

    content: '';

    width: 2px;

    top: 50%;

    left: 40px;

    height: 100%;

    border-left: 3px dashed #6152AD;

}





.elementor-widget-image-box .elementor-image-box-title {

    font-size: 1.1em;

    line-height: 1.5;

    font-weight: 600;

    color: #000;

    margin-bottom: 10px;

}

.alan-button .elementor-button {

   

    padding: 0 !important;

}



.button-imageBox .elementor-image-box-title {

    font-size: 1.5rem;

    line-height: 1.5;

    color: #ffffff;

    background: #6152AD;

    border-radius: 12px;

    display: inline-flex;

    padding: 3px 16px;

    margin-bottom: 12px;

}

.button-imageBox{

      transition: all 0.3s ease;

}

.button-imageBox .elementor-image-box-img{

  transition: all 0.3s ease;

}

.button-imageBox:hover .elementor-image-box-img{

     transform: translateY(-6px);

}





.gatekeep-box .elementor-image-box-img{

  transition: all 0.3s ease;

}

.gatekeep-box:hover .elementor-image-box-img{

     transform: translateX(-6px);

}



 

.podcast-form-popup-btn .subs-arrow{

  transition: all 0.3s ease;

}

.podcast-form-popup-btn:hover .subs-arrow{

     transform: translateX(-6px);

}



.move-up {

    transition: all 0.3s ease;

}

.science-box {

    position: relative;

}



.science-box::before {

    position: absolute;

    content: '';

    width: 2px;

    height: 100%;

    left: 88px;

    top: 0;

    background: #9880F4;

}



.real-life-image {

    top: 50%;

    transform: translate(10px, -50%);

}



.edition-box {

    position: relative;

}



.edition-box::before {

    position: absolute;

    content: '';

    width: 1.5px;

    height: 100%;

    left: 62px;

    top: 0;

    background: #9880f47d;

}





.research-paper-box {

    position: relative;

}



.research-paper-box::before {

    position: absolute;

    content: '';

    width: 1.5px;

    height: 100%;

    left: -14px;

    top: 0;

    background: linear-gradient(180deg, #a087ff 20%, #4e437f 60%, #1e1931 100%);

}





.elementor-button {

    line-height: unset;

    text-transform: capitalize;

    padding: 10px 22px !important;

}



.always-section {

    position: relative;

}



.always-section::after {

    position: absolute;

    content: '';

    width: 100%;

    height: 62%;

    background: linear-gradient(135deg, #060A11 0%, #6152AD 100%);

    z-index: -1;

    top: 50%;

    transform: translate(0%, -50%);

}





.elementor-widget-image-box:has(:hover) .elementor-image-box-title,

.elementor-widget-image-box:has(:focus) .elementor-image-box-title {

    color: #000;

}





.core-principles-section .elementor-widget-image-box:has(:hover) .elementor-image-box-title,

.core-principles-section .elementor-widget-image-box:has(:focus) .elementor-image-box-title {

    color: #000;

}





.social-box .elementor-image-box-title {

    position: relative;

    margin-bottom: 20px;

}



.social-box .elementor-image-box-title::before {

    position: absolute;

    width: 100px;

    height: 4px;

    content: '';

    background-color: #7473BB;

    border-radius: 20px;

    left: 0;

    bottom: -8px;

}



.realLife-btn {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    background: #ffffff;

    color: #000000;

    text-decoration: none;

    padding: 0;

    border-radius: 12px;

    font-size: .85em;

    font-weight: 600;

    transition: 0.3s ease;

    margin-bottom: 0 !important;

}



.realLife-btn span {

    font-size: 24px;

    transition: transform 0.3s ease;

}



.realLife-btn:hover {

    background: #ffffff;

    color: #7473BB;

    cursor: pointer;

    transition: transform 0.3s ease;

}



.realLife-btn:hover span {

    transform: translateX(4px);

}



.featured-books-grid {

    display: flex;

    justify-content: space-between;

    flex-wrap: wrap;

    gap: 14px;

}



.featured-book-link {

    /* flex: 1; */

    width: 48%;

}



.featured-book-card {

    display: flex;

    align-items: center;

    gap: 16px;

    padding: 13px 16px;

    background: rgba(255, 255, 255, 0.08);

    backdrop-filter: blur(16px);

    -webkit-backdrop-filter: blur(16px);

    border: 1px solid rgba(255, 255, 255, 0.18);

    border-radius: 20px;

    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25), 0 0 24px rgba(152, 128, 244, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.12);

    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease, background 0.35s ease;

}

.featured-book-link:hover .featured-book-card {

    transform: translateY(-4px);

    background: rgba(255, 255, 255, 0.12);

    border-color: rgba(152, 128, 244, 0.45);

    box-shadow: 0 14px 40px rgba(0, 0, 0, 0.3), 0 0 32px rgba(152, 128, 244, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.16);

}



/* Section 3 ("Featured Reads") main heading: keep it on one line, even on

   narrow phones. The colored "Reads" span is `display: block` by default

   (.banner-colorTxt, meant for headings that stack on purpose elsewhere) -

   override it back to inline just here so it sits next to "Featured". */

.page-id-3495 .elementor-element-26b5688 .section-heading {

    white-space: nowrap;

}

.page-id-3495 .elementor-element-26b5688 .section-heading .banner-colorTxt {

    display: inline;

}



/* Section 3 ("Featured Reads"): fit inside one viewport fold on common laptop

   heights. Elementor's own boxed-container padding (60px top+bottom) plus a

   3-4 line card description were pushing this well past 700px tall - trimmed

   here, and the description is clamped to 2 lines (.featured-desc, above),

   to bring it comfortably under one screen alongside the fixed site header. */

.page-id-3495 .elementor-element-d79af53 > .e-con-inner {

    padding-top: 32px;

    padding-bottom: 32px;

}

.page-id-3495 .elementor-element-e84a0e7 {

    gap: 14px;

}

.page-id-3495 .elementor-element-dc9a5d3 {

    margin-bottom: 0;

}



/* =========================================================================

   SCIENCE READS PAGE - BANNER: softer blend where the peach text panel meets

   the photo, slow-drifting glow blobs for depth, a staggered fade-up entrance

   for the copy, a pulsing eyebrow dot, a shimmering headline accent on hover,

   and a livelier button. The photo is the section's own background-image;

   customjs/custom.js adds a gentle mouse-parallax drift to its position.

   Elementor ids: section #0727b6d, content col #c0aace4, eyebrow #7d348f7,

   heading #2d62a69, button #2f9cc82.

   ========================================================================= */

.page-id-3495 .elementor-element-0727b6d {

    position: relative;

    overflow: hidden;

}



/* soften the hard vertical seam between the peach panel and the photo */

.page-id-3495 .elementor-element-0727b6d::before {

    content: '';

    position: absolute;

    inset: 0;

    background: linear-gradient(90deg, #FBEFE4 0%, #FBEFE4 38%, rgba(251, 239, 228, 0.55) 50%, rgba(251, 239, 228, 0) 64%);

    pointer-events: none;

    z-index: 1;

}



/* slow-drifting soft color blobs behind the text, for depth */

.page-id-3495 .elementor-element-0727b6d::after {

    content: '';

    position: absolute;

    top: -20%;

    left: -10%;

    width: 46%;

    height: 140%;

    background:

        radial-gradient(circle at 20% 30%, rgba(152, 128, 244, 0.22) 0%, transparent 55%),

        radial-gradient(circle at 70% 75%, rgba(97, 82, 173, 0.16) 0%, transparent 50%);

    filter: blur(10px);

    pointer-events: none;

    z-index: 1;

    animation: bannerBlobDrift 12s ease-in-out infinite;

}

@keyframes bannerBlobDrift {

    0%, 100% { transform: translate(0, 0) scale(1); }

    50%      { transform: translate(3%, -4%) scale(1.06); }

}



.page-id-3495 .elementor-element-c0aace4 {

    position: relative;

    z-index: 2;

}



/* staggered entrance for the copy */

.page-id-3495 .elementor-element-7d348f7,

.page-id-3495 .elementor-element-2d62a69,

.page-id-3495 .elementor-element-c0aace4 > .e-cedc49f-53fb568,

.page-id-3495 .elementor-element-2f9cc82 {

    opacity: 0;

    animation: bannerFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-3495 .elementor-element-7d348f7 { animation-delay: 0.05s; }

.page-id-3495 .elementor-element-2d62a69 { animation-delay: 0.18s; }

.page-id-3495 .elementor-element-c0aace4 > .e-cedc49f-53fb568 { animation-delay: 0.32s; }

.page-id-3495 .elementor-element-2f9cc82 { animation-delay: 0.46s; }

@keyframes bannerFadeUp {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: translateY(0); }

}



@media (prefers-reduced-motion: reduce) {

    .page-id-3495 .elementor-element-0727b6d::after {

        animation: none;

    }

    .page-id-3495 .elementor-element-7d348f7,

    .page-id-3495 .elementor-element-2d62a69,

    .page-id-3495 .elementor-element-c0aace4 > .e-cedc49f-53fb568,

    .page-id-3495 .elementor-element-2f9cc82 {

        opacity: 1;

        animation: none;

    }

}





/* headline: gentle shimmer sweep across the italic accent on hover */

.page-id-3495 .elementor-element-2d62a69 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-3495 .elementor-element-2d62a69:hover .colorTxt {

    background-position: 100% 0%;

}



/* button: glowing lift + light-sweep on hover */

.page-id-3495 .elementor-element-2f9cc82 .elementor-button {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-3495 .elementor-element-2f9cc82 .elementor-button:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-3495 .elementor-element-2f9cc82 .elementor-button::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-3495 .elementor-element-2f9cc82 .elementor-button:hover::before {

    left: 130%;

}





.featured-book-content h2 {

    font-size: 1em;

    line-height: 1.4em;

    font-weight: 600;

    color: #fff;

}



.featured-author {

    font-size: .85em;

    color: #979797;

    font-style: italic;

}



.featured-desc {

    font-size: .8em;

    line-height: 1.35;

    color: #ffffff;

}



.featured-book-image {

    flex: 1;

    transform: perspective(1000px) rotateY(12deg) skewY(-1deg) scale(0.7);

    box-shadow: 1px 1px 0px #fff, 2px 1.5px 0px #e0e0e0, 3px 2px 0px #ccc, 4px 2.5px 0px #b3b3b3, 8px 10px 15px rgba(0,0,0,0.25);

    border-radius: 1px 4px 4px 1px;

    transform-origin: center;

}



.featured-book-content {

    flex: 2;

}



.year-filter {

    display: flex;

    justify-content: center;

    gap: 15px;

}



.books-grid {

    display: flex;

    gap: 20px;

    justify-content: center;

    margin-top: 65px;

    flex-wrap: wrap;

}



.book-card {

    width: 23%;

    position: relative;

}



.book-card::after {

    position: absolute;

    content: '';

    width: 100%;

    height: 59%;

    bottom: 0;

    left: 0;

    background: linear-gradient(180deg, #FFF0E5 0%, #F3ECFD 100%);

    z-index: -1;

    border-radius: 20px;

}



.filter-btn {

    border-radius: 50px;

    font-size: .85em;

    padding: 5px 32px;

    background: #E8D8FF;

    border: 1px solid #7473BB;

    color: #3f3f3f;

    text-decoration: none;

}



.filter-btn.active {

    background: #040822;

    color: #fff;

}





.book-title {

    font-size: 1em;

    line-height: 1.5;

    font-weight: 600;

    color: #000000;

}



.book-author {

    font-size: 16px;

    color: #000000;

    font-style: italic;

}



.book-image {

    margin-bottom: 0px;

    width: 67%;

    transform: perspective(1000px) rotateY(12deg) skewY(-1deg) scale(0.7);

    box-shadow: 1px 1px 0px #fff, 2px 1.5px 0px #e0e0e0, 3px 2px 0px #ccc, 4px 2.5px 0px #b3b3b3, 8px 10px 15px rgba(0,0,0,0.25);

    border-radius: 1px 4px 4px 1px;

    transform-origin: center;

}



.elementor-book-card {

    padding: 0 29px;

}



.gene-box {

    position: relative;

}



.gene-box::after {

    position: absolute;

    content: '';

    width: 100%;

    height: 59%;

    bottom: 0;

    left: 0;

    background: linear-gradient(180deg, #FFF0E5 0%, #F3ECFD 100%);

    z-index: -1;

    border-radius: 20px;

}



.science-box .elementor-image-box-content {

    padding-left: 20px;

}

.start-list{

    color: #000;

        margin: 0 0 0rem 0rem;

    margin-bottom: 0px;

     font-size: 1em;

    line-height: 1.5;

}





/* Small laptops */



.box-heading {

    font-size: clamp(1.8rem, 1.65rem + 0.25vw, 2.1rem);

    line-height: 1.4;

    font-weight: 600;

}



/* Header Menu CSS */

/* Header */

.main-menu {

    margin-left: 0 !important;

}



.menu-toggle {

    padding: 0 12px !important;

}



.overlay-menu {

    justify-content: start !important;

    padding: 0px !important;

}



.overlay-menu ul li a {

    color: #fff;

    text-decoration: none;

    font-size: 1em !important;

    letter-spacing: 1px;

    transition: 0.3s;

    line-height: 2.3em;

}



.overlay-menu .dropdown-menu-chl li a {

    font-size: .85em !important;

    line-height: 1.5em;

    /* font-size: 22px !important; */

    color: #cfcfcf !important;

}



.main-header {



    width: 100%;

    z-index: 1000;

    position: fixed;



}

.logo.profile {

    padding: 6px 0;

}

.container-menu {

    display: flex;

    justify-content: space-between;

    max-width: 87%;

    margin: 0 auto;

}



.main-header {

    transition: 0.3s;

}



.main-header.scrolled {

    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);

    background: #fff;

}



/* Profile */

.profile {

    display: flex;

    align-items: center;

    gap: 10px;

}



.profile img {

    width: 53px;

    /* height: 45px; */

    border-radius: 50%;

}



.profile span {

    font-size: clamp(2.2rem, 1.6rem + 1.15vw, 3.4rem);

    font-weight: 600;

}

.scroll-down-button .elementor-button {

   height: 59px !important;

    padding: 10px 14px !important;

}

.scroll-down-button:hover {

   transform: translateY(-8px);

   transition: transform .8s ease;

}

.scroll-down-wrapper {

    position: absolute;

    bottom: 0;

    left: 50%;

    transform: translate(-50%, -50%);

}

/* Right section */

.header-right {

    display: flex;

    align-items: stretch;

    justify-content: end;

    height: 100%;

}



.social-iconsse {

    display: flex;

    /* height: max-content; */

    align-items: center;

}



/* Social Icons */

.social-iconsse a {

    color: #000;

    font-size: 18px;

    margin: 0 14px;

    transition: 0.3s;

}



.social-iconsse a:hover {

    color: #6c5ce7;

}



.recentAdvice .featured-main-title{

     font-size: 1em;

    line-height: 1.4em;

    font-weight: 600;

    color: #fff;

}



.recentAdvice .featured-main-excerpt{

      font-size: .8em;

    line-height: normal;

    color: #ffffff;

}





.recentAdvice .featured-side-title{

     font-size: 1em;

    line-height: 1.4em;

    font-weight: 600;

    color: #fff;

}



.recentAdvice .featured-side-excerpt{

      font-size: .8em;

    line-height: normal;

    color: #ffffff;

}



.recentAdvice .featured-side-date{

   font-size: .85em;

    color: #979797;

    font-style: italic;

}

.recentAdvice .featured-side-image {

    width: 20%;

    height: auto;}



 .recentAdvice .featured-side-image img{

    height: auto;

min-height: 100px;

 }

 .research-date {

    

      color: #6c5ce7 !important;

      font-style: italic;

}



.post-title {

   font-size: 1em;

    line-height: 1.4em;

    font-weight: 600;

  

    margin-bottom: 0;

}

.post-title a {

    text-decoration: none;

    color: #111;

}

.custom-slide-item {

    

    min-height: 390px;

}





/* will be removed */

.paper-section .featured-main-title{

    color: #000000;

}



.paper-section .featured-main-excerpt{

    color: #000000;

}





.paper-section .featured-side-title{

       color: #000000;

}



.paper-section .featured-side-excerpt{

    color: #000000;

}

.paper-section .featured-side-title a {

       color: #000000;



}



.paper-section .featured-main-title a {

   color: #000000;



}



.load-more-btn {

    background-color: #6152AD !important;

    text-decoration: none !important;

    font-size: 18px;

    font-weight: 600;

    border-radius: 11px 11px 11px 11px !important;

 

    text-transform: capitalize;

}



#loadMoreBtn {

      background-color: #6152AD !important;

    text-decoration: none !important;

}



 .recentAdvice .featured-main-post img {

  

    height: 400px;



}

.move-up{

  transition: all 0.3s ease;

}

.move-up:hover {

    transform: translateY(-6px);

   

}





.move-left{

  transition: all 0.3s ease;

}

.move-left:hover {

    transform: translateX(-6px);

}





/* non traditional */



.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {

    top: 400px !important;



}



/* .swiper-pagination-bullet {

    background: #ffffff !important;

} */

.careers-worth-sect .custom-slide-item {

    background: #ffffff00 !important;

    box-shadow: none;

}

.careers-worth-sect .post-title {

   

   

 

}

.careers-worth-sect .post-title a {

    text-decoration: none;

  color: #ffffff !important;

}

.book-btn {

    background: #6152AD;

    color: #fff;

    padding: 0px 18px;

    text-decoration: none;

    /* border-radius: 3px; */

    font-size: 17px;

    width: 168px;

    height: 100%;

    display: flex;

    align-items: center;

    justify-content: center;

    font-weight: 500;

}



.careers-worth-sect .post-content {

    padding: 18px 0;

}



.load-more-books{

  background-color: #6152AD !important;

text-decoration: none !important;

    font-size: 18px;

    font-weight: 600;

    border-radius: 11px 11px 11px 11px;

    padding: 20px 20px 20px 20px;

    text-transform: capitalize;

    

}

.custom-category-slider {

    padding-bottom: 3px !important;

}

/* Burger */

.menu-toggle {

    width: 50px;

    cursor: pointer;

    z-index: 1001;

    height: 100%;

    padding: 0 5px;

    background: #000;

    display: flex;

    align-items: center;

    flex-direction: column;

    justify-content: center;

}



.menu-toggle span {

    display: block;

    height: 3px;

    background: #ffffff;

    margin: 3px 0;

    transition: 0.3s;

    width: 100%;

}



/* Overlay Menu */

.overlay-menu {

    position: fixed;

    top: 0;

    right: 0;

    width: 25%;

    height: 100vh;

    background: #000000f0;

    display: flex;

    justify-content: end;

    align-items: center;

    opacity: 0;

    visibility: hidden;

    transition: 0.4s ease;

    z-index: 9;

    padding: 50px;

}



/* Active state */

.overlay-menu.active {

    opacity: 1;

    visibility: visible;

}



/* Menu Items */

.overlay-menu ul {

    list-style: none;

    text-align: start;

}



.featured-body{

    padding:16px 20px 22px;

}



.featured-tag{

    font-size:14px;

    color:#6152AD;

    margin-bottom:5px;

    font-weight:600;

}



.featured-body h3{

     font-size: 1em;

    line-height: 1.4em;

    font-weight: 600;

    margin-bottom: 12px;

    min-height: 50px;

}





.featured-body p{

    font-size: .8em;

    line-height: normal;

    color: #000000;

    

}



.read-more {

 font-size:14px;

      color:#6152AD;

    font-weight: 600;

}

.featured-link{

    font-size:14px;

    font-weight:600;

    color:#6152AD;

}

.featured-blog-slider {

    width: 100%;

    max-width: 1700px;

    margin: auto;

    

}

.blog-content{

    padding:18px 18px 20px;

}



.blog-content h3{

  font-size: 1em;

    line-height: 1.4em;

    font-weight: 600;

    margin-bottom: 0;

}



.blog-content p{

     font-size: .8em;

    line-height: normal;

    color: #000000;

    

}

.custom-blog-wrapper{

  

    margin:auto;

  

}





.overlay-menu ul li a {

    color: #fff;

    text-decoration: none;

    /* font-size: 28px;

    letter-spacing: 1px; */

    transition: 0.3s;

}



.overlay-menu ul li a:hover {

    color: #6c5ce7;

}



/* Burger Animation */

.menu-toggle.active span:nth-child(1) {

    transform: rotate(45deg) translate(5px, 5px);

    background: #ffffff;

}



.menu-toggle.active span:nth-child(2) {

    opacity: 0;

}



.menu-toggle.active span:nth-child(3) {

    transform: rotate(-45deg) translate(7px, -8px);

    background: #ffffff;

}



.has-dropdown {

    width: 100%;

}



.dropdown-toggle-chl {

    display: flex;

    gap: 15px;

    color: #fff;

    align-items: center;

}



.dropdown-arrow {

    color: #fff;

    font-size: 28px;

    cursor: pointer;

    transition: 0.3s;

}



/* DROPDOWN MENU */



.dropdown-menu-chl {

    list-style: none;

    padding: 1px 15px;

    margin-top: 15px;

    display: none;

    color: #fff;

    /* background: #000;

    box-shadow: 1px 1px 5px #00000029; */

    transition:

        max-height 0.5s ease,

        opacity 0.4s ease,

        margin-top 0.4s ease;

}



.dropdown-menu-chl li {

    margin-left: 0px !important;

}





/* ACTIVE */



.has-dropdown.active .dropdown-menu-chl {

    display: block;

}





.has-dropdown.active .dropdown-arrow {

    transform: rotate(45deg);

}



/* MOBILE */





/* CF7 collaborate-me form styles */



/* Layout */

.cf7-row {

    display: flex;

    gap: 20px;

    margin-bottom: 25px;

}



.cf7-col {

    width: 50%;

}



.cf7-full {

    margin-bottom: 25px;

}



/* Labels */

.cf7-row label,

.cf7-full label {

    display: block;

    color: #5e4b42;

    font-size: 12px;

    letter-spacing: 3px;

    margin-bottom: 10px;

    font-weight: 600;

    text-transform: uppercase;

}



/* Inputs */

.wpcf7 input[type="text"],

.wpcf7 input[type="email"],

.wpcf7 textarea,

.wpcf7 select {

    width: 100%;

    background: rgba(255, 255, 255, 0.55);

    border: 1px solid rgba(120, 90, 70, 0.25);

    color: #3d2f28;

    padding: 18px 20px;

    font-size: 16px;

    border-radius: 4px;

    box-sizing: border-box;

    backdrop-filter: blur(6px);

    transition: all 0.3s ease;

}



/* Focus Effect */

.wpcf7 input[type="text"]:focus,

.wpcf7 input[type="email"]:focus,

.wpcf7 textarea:focus,

.wpcf7 select:focus {

    border-color: #c97d52;

    outline: none;

    background: rgba(255, 255, 255, 0.8);

}



/* Textarea */

.wpcf7 textarea {

    height: 180px;

    resize: none;

}



/* Placeholder */

.wpcf7 input::placeholder,

.wpcf7 textarea::placeholder {

    color: #8a7468;

}



/* Submit Button */

.cf7-submit-wrap {

    margin-top: 10px;

}



.wpcf7 input[type="submit"] {

    background: #c97d52;

    color: #fff;

    border: none;

    padding: 18px 40px;

    font-size: 16px;

    font-weight: 700;

    letter-spacing: 2px;

    cursor: pointer;

    text-transform: uppercase;

    border-radius: 4px;

    transition: all 0.3s ease;

}



.wpcf7 input[type="submit"]:hover {

    background: #b46a41;

    transform: translateY(-2px);

}



/* Bottom Note */

.cf7-note {

    color: #7a6558;

    margin-top: 25px;

    font-size: 14px;

    line-height: 1.6;

}



/* Select Wrapper */

.cf7-select-wrap {

    margin-bottom: 25px;

    position: relative;

}



/* Select Field */

.wpcf7-select.cf7-select {

    width: 100%;

    background: rgba(255, 255, 255, 0.55);

    border: 1px solid rgba(120, 90, 70, 0.25);

    color: #3d2f28;

    padding: 18px 20px;

    font-size: 16px;

    border-radius: 4px;

    appearance: none;

    -webkit-appearance: none;

    -moz-appearance: none;

    cursor: pointer;

}



/* Dropdown Options */

.wpcf7-select.cf7-select option {

    background: #fff;

    color: #3d2f28;

}



/* Custom Arrow */

.cf7-select-wrap::after {

    content: "▼";

    position: absolute;

    right: 20px;

    top: 58%;

    transform: translateY(-50%);

    color: #7a6558;

    font-size: 12px;

    pointer-events: none;

}



.cvp-title {

    font-size: 1em !important;

    font-weight: normal !important;

    font-weight: bold !important;

}



/* Mobile */



/* ================================

PRESS COVERAGE SLIDER

================================ */



.ck-press-slider {

    width: 100%;

    padding-bottom: 60px;

    overflow: hidden;

}



.ck-press-slider .swiper-wrapper {

    align-items: stretch;

}



.ck-press-slider .swiper-slide {

    height: auto;

}



/* ================================

CARD

================================ */



.ck-press-card {

    background: #ffffff;

    border-radius: 18px;

    overflow: hidden;

    height: 100%;

    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);

    transition: all 0.3s ease;

}



.ck-press-card:hover {

    transform: translateY(-6px);

    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);

}



.ck-press-card a {

    text-decoration: none;

    color: inherit;

    display: flex;

    flex-direction: column;

    height: 100%;

}



/* ================================

IMAGE

================================ */



.ck-press-image {

    position: relative;

    overflow: hidden;

}



.ck-press-image img {

    width: 100%;

    height: 260px;

    object-fit: cover;

    display: block;

    transition: transform 0.4s ease;

}



.ck-press-card:hover .ck-press-image img {

    transform: scale(1.05);

}



/* ================================

CONTENT

================================ */



.ck-press-content {

    padding: 24px;

    display: flex;

    flex-direction: column;

    flex-grow: 1;

}



.ck-press-title {

    font-size: clamp(1.9rem, 1.6rem + 0.4vw, 2.2rem);

    line-height: 1.25;

    font-weight: 600;

    margin: 0 0 12px;

    color: #000;

}



.ck-press-excerpt {

    font-size: clamp(1.5rem, 1.4rem + 0.2vw, 1.6rem);

    line-height: 1.5;

    color: #333;



}



/* ================================

PAGINATION

================================ */



.ck-press-slider .swiper-pagination {

    position: relative;

    margin-top: 30px;

}



.ck-press-slider .swiper-pagination-bullet {

    width: 10px;

    height: 10px;

    background: #999;

    opacity: 1;

}



.ck-press-slider .swiper-pagination-bullet-active {

    background: #000;

}



/* ================================

NAVIGATION BUTTONS (OPTIONAL)

================================ */



.ck-press-slider .swiper-button-prev,

.ck-press-slider .swiper-button-next {

    width: 42px;

    height: 42px;

    border-radius: 50%;

    background: #fff;

    box-shadow: 0 3px 10px rgba(0,0,0,0.15);

    color: #000;

}



.ck-press-slider .swiper-button-prev:after,

.ck-press-slider .swiper-button-next:after {

    font-size: 16px;

    font-weight: 700;

}



/* ================================

TABLET

================================ */





/* ================================

MOBILE

================================ */





/* =========================

   COLLABORATE CONTACT FORM

   ========================= */



/* Remove default CF7 spacing */

.collaborate-contact-form p {

    margin: 0;

}



/* Main Form Container */

.collaborate-contact-form {

    background: #ffffff;

    padding: 34px;

    border-radius: 22px;

    box-shadow: 0 4px 20px rgba(0,0,0,0.05);

    max-width: 900px;

    margin: 0 auto;

}



/* =========================

   ROWS & SPACING

   ========================= */



.collaborate-cf7-row {

    display: flex;

    gap: 28px;

    margin-bottom: 18px; /* reduced */

}



.collaborate-cf7-col {

    width: 50%;

}



.collaborate-cf7-full {

    margin-bottom: 18px; /* reduced */

}



/* =========================

   LABELS

   ========================= */



.collaborate-contact-form label {

    display: block;

    font-size: 16px;

    color: #111111;

    font-weight: 500;

    margin-bottom: 10px; /* reduced */

    line-height: 1.4;

}



/* =========================

   INPUTS

   ========================= */



.collaborate-contact-form input[type="text"],

.collaborate-contact-form input[type="email"],

.collaborate-contact-form textarea,

.collaborate-contact-form select {

    width: 100%;

    background: #ffffff;

    border: 1px solid #d9d9d9;

    border-radius: 10px;

    padding: 16px 18px;

    font-size: 16px;

    color: #111111;

    font-family: inherit;

    box-sizing: border-box;

    transition: all 0.25s ease;

    outline: none;

    margin: 0;

}



/* Heights */

.collaborate-contact-form input[type="text"],

.collaborate-contact-form input[type="email"],

.collaborate-contact-form select {

    height: 56px;

}



/* Textarea */

.collaborate-contact-form textarea {

    height: 115px;

    resize: none;

    line-height: 1.7;

    padding-top: 14px;

}



/* =========================

   PLACEHOLDER

   ========================= */



.collaborate-contact-form input::placeholder,

.collaborate-contact-form textarea::placeholder {

    color: #a8a8a8;

    opacity: 1;

}



/* =========================

   FOCUS

   ========================= */



.collaborate-contact-form input:focus,

.collaborate-contact-form textarea:focus,

.collaborate-contact-form select:focus {

    border-color: #6152AD;

    box-shadow: 0 0 0 3px rgba(97,82,173,0.08);

}



/* =========================

   SELECT

   ========================= */



.collaborate-cf7-select-wrap {

    position: relative;

}



.collaborate-contact-form select {

    appearance: none;

    -webkit-appearance: none;

    -moz-appearance: none;

    padding-right: 50px;

    cursor: pointer;

}



/* Arrow */

.collaborate-cf7-select-wrap::after {

    content: "";

    position: absolute;

    right: 22px;

    top: 63%;

    width: 10px;

    height: 10px;

    border-right: 2px solid #111;

    border-bottom: 2px solid #111;

    transform: translateY(-50%) rotate(45deg);

    pointer-events: none;

}



/* =========================

   SUBMIT BUTTON

   ========================= */



.collaborate-cf7-submit-wrap {

    margin-top: 8px;

}



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

    background: #6152AD;

    color: #ffffff;

    border: none;

    border-radius: 10px;

    height: 62px;

    padding: 0 34px;

    font-size: 16px;

    font-weight: 700;

    cursor: pointer;

    transition: all 0.25s ease;

    min-width: 275px;

    margin: 0;

}



/* Hover */

.collaborate-contact-form input[type="submit"]:hover {

    background: #54469a;

    transform: translateY(-1px);

}



/* =========================

   NOTE

   ========================= */



.collaborate-cf7-note {

    margin-top: 12px;

    font-size: 15px;

    color: #8d8d8d;

    line-height: 1.5;

}



/* =========================

   VALIDATION

   ========================= */



.collaborate-contact-form .wpcf7-not-valid-tip {

    font-size: 13px;

    margin-top: 6px;

}



.collaborate-contact-form .wpcf7-response-output {

    margin-top: 18px !important;

    border-radius: 10px;

}

.swiper-slide-image{

    margin: 0 auto;

}



.brand-chloe-section .swiper-slide {

    flex-shrink: 0;

    width: auto !important;

    height: 100%;

    position: relative;

    transition-property: transform;

    display: inline-flex !important;

    margin-right: 0 !important;

}

.brand-chloe-section .swiper-slide-inner {



    margin: 0 28px !important;

}

.elementor-3520 .elementor-element.elementor-element-c8fae14 .swiper-wrapper {

    display: flex;

    align-items: center;

    justify-content: center !important;

}

.houston-image .elementor-widget-image {

    text-align: end;

}





/* home page */



.page-id-10 .chloe-logo {

    color: #fff;

}



.page-id-10 .main-header.scrolled .chloe-logo {

   color: #000;

}

.the-foundation-bx{

    position: relative;

     transition: transform .8s ease;

      border-radius: 10px;



}

.the-foundation-bx:hover {

   transform: translateY(-8px);

   transition: transform .8s ease;

}





.the-foundation-bx::before {

    position: absolute;

    content: '';

    width: 3px;

    height: 100%;

    left: -14px;

    top: 0;

    background: linear-gradient(360deg, #a087ff0f 20%, #5a4d96 60%, #1e1931 100%);

     transition: transform .8s ease;

     border-radius: 10px;

}



.the-foundation-bx:hover::before {

      background: linear-gradient(360deg, #0000000f 20%, #000000 60%, #000000 100%);

       transition: transform .8s ease;

}



.elementor-10 .elementor-element.elementor-element-3494cf2 {

  

    --n-tabs-heading-width: 189px;

  

}

/* "What I Cover" cards (.service-box / .science-overlay): see the "HOME PAGE - WHAT I COVER" section at the end of this file */



.load-more-section .podcast-load-more-wrap{

    display:none;

}





/* home-page-tab-section */



/* Tab styling */

.transfer-tabs .e-n-tab-title {

    position: relative;

    overflow: hidden;

}



.transfer-tabs .e-n-tab-title::after {

    content: "";

    position: absolute;

    left: 0;

    bottom: 0;

    width: 0;

    height: 3px;

    background: #6b4fc4;

}



.transfer-tabs .e-n-tab-title.tab-progress::after {

    animation: progressBar 5s linear forwards;

}



@keyframes progressBar {

    from {

        width: 0%;

    }

    to {

        width: 100%;

    }

}

.transfer-tabs .e-n-tab-title {

    display: inline-flex;

    width: fit-content;

}



.transfer-tabs [role="tabpanel"] {

    animation: fadeTab .5s ease;

}



@keyframes fadeTab {

    from {

        opacity: 0;

        transform: translateY(15px);

    }

    to {

        opacity: 1;

        transform: translateY(0);

    }

}



/* chloe the sciencist page */

.curious-image {

    width: 555px;

}



/* =========================

   MOBILE

   ========================= */





/* Full HD and bigger desktops */





/* Home page: pull purple stats strip up over hero image - Tablet view */





/* =========================================================================

   ABOUT ME PAGE (page-id-3490) — UI polish

   ========================================================================= */



/* Hero: content sat too low with a big empty gap above "About" — rebalance */

.page-id-3490 .elementor-element-4334a10 .e-con-inner {

    padding-top: 60px;

}



/* "Community & Impact" 2x2 cards already carry a hard purple drop-shadow;

   give them the same hover-lift interaction the rest of the page's cards have */

.page-id-3490 .elementor-element-f36bd89 > .elementor-element {

    transition: transform 0.25s ease, box-shadow 0.25s ease;

}

.page-id-3490 .elementor-element-f36bd89 > .elementor-element:hover {

    transform: translate(-4px, -4px);

    box-shadow: 10px 10px 0px 0px #6152AD;

}



/* "As Featured In" logos — subtle lift on hover */

.page-id-3490 .featured-slider .swiper-slide {

    transition: transform 0.25s ease;

}

.page-id-3490 .featured-slider .swiper-slide:hover {

    transform: translateY(-4px);

}



/* =========================================================================

   HOME PAGE — UI polish (cards + hover depth for the two flattest sections)

   ========================================================================= */



/* "My Story" cards: see the "HOME PAGE - MY STORY" section at the end of this file */



/* Header "Collaborate" button gets squeezed by the icon row in this width range - keep it on one line site-wide */





/* =========================================================================

   HOME PAGE - HERO + PURPLE STATS STRIP (125K+ / Since 2019 / 2023-Present)

   Elementor ids: hero #46beed7, strip wrapper #e7dff45, purple box #9e087c7,

   3-col grid #0349847, decorative icons .e-0006ef2-6e95d9b / .e-c20e027-d5a47c1

   ========================================================================= */



/* Hero: full screen (100vh). The strip is pulled up by about half its own height,

   so on the first fold exactly the top half of the strip is visible. */

.elementor-10 .elementor-element.elementor-element-46beed7 {

    --min-height: 100vh;

}



/* Strip wrapper: pulled up over the hero, always above it */

.elementor-10 .elementor-element.elementor-element-e7dff45 {

    --padding-top: 0px;

    --padding-bottom: 0px;

    --margin-top: -67px; /* strip is ~134px tall on desktop */

    position: relative;

    z-index: 3;

}



/* Purple box: depth, softer gradient, roomier padding */

.elementor-10 .elementor-element.elementor-element-9e087c7 {

    --border-radius: 20px;

    --padding-top: 16px;

    --padding-bottom: 16px;

    --padding-left: 24px;

    --padding-right: 24px;

    background-image: linear-gradient(135deg, #6a5bc2 0%, #4f4099 100%);

    box-shadow: 0 22px 44px -12px rgba(46, 32, 110, 0.45);

}



.elementor-10 .elementor-element.elementor-element-0349847 {

    --padding-top: 0px;

    --padding-bottom: 0px;

}



/* 3 equal columns with thin dividers, content centred */

.elementor-10 .elementor-element-e7dff45 .elementor-element-0349847 > .elementor-widget-image-box {

    padding: 0 18px;

    align-self: start;

}

/* tablet + desktop: the 3rd column has the longest text, give it a bit more room */



.elementor-10 .elementor-element-e7dff45 .elementor-element-0349847 > .elementor-widget-image-box + .elementor-widget-image-box {

    border-left: 1px solid rgba(255, 255, 255, 0.25);

}



.elementor-10 .elementor-element-e7dff45 .elementor-widget-image-box .elementor-image-box-title {

    font-size: clamp(2.3rem, 1.85rem + 0.8vw, 3.1rem);

    line-height: 1.2;

    margin-bottom: 4px;

    letter-spacing: 0.01em;

}

.elementor-10 .elementor-element-e7dff45 .elementor-widget-image-box .elementor-image-box-description {

    font-size: clamp(1.3rem, 1.2rem + 0.2vw, 1.5rem);

    line-height: 1.4;

    max-width: 32ch;

    margin: 0 auto !important;

    text-wrap: balance;

    color: rgba(255, 255, 255, 0.92);

}



/* Tablet: strip keeps 3 columns, icons move into the side gutters */





/* Mobile: one column, horizontal dividers, decorative icons hidden (they covered the text) */





/* =========================================================================

   HOME PAGE - MY STORY  (2 cards | photo | 2 cards, scroll-drawn line)

   Elementor ids: intro #dfd36ba, row #a0b57a2, cards grid #31255c3

   (4 wrappers > .the-foundation-bx), photo container #532234c.

   The scroll line is driven by customjs/custom.js (sets --fill / .is-active).

   ========================================================================= */



/* One shared type scale for the box/column headings and texts of "My Story" and "What I Cover"

   (change them here and both sections follow). */

.home {

    --box-title-size: clamp(1.6rem, 0.022rem + 1.155vw, 2.3rem); /* 16px up to 1366px, ~16.9px @1440, ~22.4px @1920 */

    --box-title-line: 1.32;

    --box-text-size: clamp(1.5rem, 0.7rem + 0.55vw, 1.9rem);   /* ~15px @1440, ~17.5px @1920 */

    --box-text-line: 1.55;

}



/* Intro paragraph: shorter line length */

.home .elementor-element-dfd36ba {

    max-width: 760px;

    margin-inline: auto;

}



/* Cards grid (tablet + mobile): 2 columns, equal size. Desktop overrides below. */

.home .elementor-element-31255c3 {

    --sg: 20px;                        /* row gap = length of the line linking two cards */

    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    grid-template-rows: repeat(2, 1fr);

    grid-auto-flow: column;

    gap: var(--sg) 32px;

    padding: 10px 10px 10px 24px;

}

.home .elementor-element-31255c3 > .e-con {

    --width: 100%;

    width: 100%;

    padding: 0;

    display: flex;

}



/* Card - flat on the left so the progress line touches it */

.home .elementor-element-31255c3 .the-foundation-bx {

    position: relative;

    flex: 1 1 auto;

    width: 100%;

    background: #faf9ff;

    border-radius: 0 14px 14px 0;

    box-shadow: 0 2px 14px rgba(97, 82, 173, 0.10);

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

.home .elementor-element-31255c3 .the-foundation-bx:hover {

    transform: translateY(-3px);

    box-shadow: 0 14px 28px rgba(97, 82, 173, 0.20);

}

.home .elementor-element-31255c3 .the-foundation-bx .elementor-image-box-wrapper {

    position: relative;

    height: 100%;

    padding: 18px 20px 20px 34px;

}



/* Icon = greyed watermark in the bottom-right corner (no space taken in the card).

   Size is locked with !important because Elementor sets this figure's width as a

   % of the card, which squashed it on ~1366px screens. */

.home .elementor-element-31255c3 .the-foundation-bx .elementor-image-box-img {

    position: absolute;

    bottom: 8px;

    right: 10px;

    width: clamp(96px, 5.6vw, 130px) !important;

    height: clamp(96px, 5.6vw, 130px);

    margin: 0;

    opacity: 0.2;

    filter: grayscale(1);

    pointer-events: none;

    transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.3s ease;

}

.home .elementor-element-31255c3 .the-foundation-bx:hover .elementor-image-box-img {

    opacity: 0.34;

    transform: scale(1.1) rotate(-7deg);

}

.home .elementor-element-31255c3 .the-foundation-bx .elementor-image-box-img img {

    width: 100% !important;

    height: 100% !important;

    max-width: none;

    object-fit: contain;

}



/* Title = "chapter" line, description = softer grey; both a little tighter */

.home .elementor-element-31255c3 .the-foundation-bx .elementor-image-box-title,

.home .elementor-element-31255c3 .the-foundation-bx:has(:hover) .elementor-image-box-title {

    position: relative;

    font-size: var(--box-title-size);

    line-height: var(--box-title-line);

    font-weight: 600;

    color: #3b3190;

    margin-bottom: 8px;

    padding-right: 0;

}

.home .elementor-element-31255c3 .the-foundation-bx .elementor-image-box-description {

    position: relative;

    font-size: var(--box-text-size);

    line-height: var(--box-text-line);

    color: #3f3f4f;

}



/* Connecting line attached to the card's left edge: grey track (::before) +

   purple fill (::after) that grows on scroll. It runs on through the gap to the

   next card in the same column. */

.home .elementor-element-31255c3 .the-foundation-bx::before,

.home .elementor-element-31255c3 .the-foundation-bx::after {

    content: '';

    position: absolute;

    left: 0;

    top: 0;

    width: 4px;

    height: calc(100% + var(--sg));

    border-radius: 4px;

    transition: none;

    z-index: 1;

}

.home .elementor-element-31255c3 .the-foundation-bx::before,

.home .elementor-element-31255c3 .the-foundation-bx:hover::before {

    background: rgba(97, 82, 173, 0.16);

}

.home .elementor-element-31255c3 .the-foundation-bx::after {

    background: linear-gradient(180deg, #6152AD, #8a78e6);

    transform: scaleY(var(--fill, 1));

    transform-origin: top;

}

/* last card of a column: line stops at the card's bottom edge */

.home .elementor-element-31255c3 > .e-con:nth-child(4) .the-foundation-bx::before,

.home .elementor-element-31255c3 > .e-con:nth-child(4) .the-foundation-bx::after {

    height: 100%;

}





/* Icon node sitting on the line (white circle, icon set by customjs/custom.js via --icon).

   Grey until the line reaches the card, then it turns coloured with a purple ring. */

.home .elementor-element-31255c3 .the-foundation-bx .elementor-image-box-wrapper::before {

    content: '';

    position: absolute;

    left: -21px;

    top: 6px;

    width: 46px;

    height: 46px;

    box-sizing: border-box;

    border-radius: 50%;

    border: 3px solid rgba(97, 82, 173, 0.30);

    background: #fff var(--icon, none) center / 84% no-repeat;

    filter: grayscale(1) opacity(0.75);

    z-index: 2;

    transition: filter 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;

}

.home .elementor-element-31255c3 .the-foundation-bx.is-active .elementor-image-box-wrapper::before {

    border-color: #6152AD;

    box-shadow: 0 0 0 4px rgba(97, 82, 173, 0.16);

    filter: none;

}



/* Desktop: ONE 3-column grid -> [2 cards] [photo] [2 cards].

   The wrapper containers are flattened (display: contents) so the four cards and

   the photo become direct grid items of the row container. */





/* Mobile: one column, still connected */





/* -------------------------------------------------------------------------

   SCIENCE READS PAGE - "Behind the List" section 2 photo: extra air between

   the photo and the text column to its right, a gentle zoom on hover, and

   colorful floating glowing science icons scattered at random spots around

   it - never on top of it (icons appended + positioned by customjs/custom.js

   as .story-float-icon inside .elementor-element-e893940, each with its own

   --c color and --tx/--ty/--dur/--delay bob).

   Elementor ids: row #bee6e30, photo col #e893940, text col #39e0cc1.

   ------------------------------------------------------------------------- */

.page-id-3495 .elementor-element-bee6e30 {

    column-gap: 70px;

}



.page-id-3495 .elementor-element-e893940 {

    position: relative;

}

.page-id-3495 .elementor-element-e893940 .elementor-element-e9074ac img {

    transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3495 .elementor-element-e893940:hover .elementor-element-e9074ac img {

    transform: scale(1.06);

}



.page-id-3495 .story-float-icon {

    position: absolute;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 54px;

    height: 54px;

    border-radius: 50%;

    color: var(--c, #6152AD);

    background: radial-gradient(circle, color-mix(in srgb, var(--c, #6152AD) 24%, transparent) 0%, color-mix(in srgb, var(--c, #6152AD) 7%, transparent) 68%, transparent 100%);

    box-shadow: 0 0 18px 4px color-mix(in srgb, var(--c, #6152AD) 30%, transparent);

    z-index: 3;

    cursor: pointer;

    transition: color 0.35s ease, background 0.35s ease, box-shadow 0.35s ease, transform 0.35s ease;

}

.page-id-3495 .story-float-icon svg {

    width: 26px;

    height: 26px;

}

.page-id-3495 .story-float-icon:hover {

    color: #fff;

    background: radial-gradient(circle, color-mix(in srgb, var(--c, #6152AD) 65%, white 15%) 0%, var(--c, #6152AD) 72%, transparent 100%);

    box-shadow: 0 0 28px 8px color-mix(in srgb, var(--c, #6152AD) 55%, transparent);

    transform: scale(1.14);

}



/* gentle bob: direction/duration/delay per icon are randomized by

   customjs/custom.js via --tx/--ty/--dur/--delay, so the drift feels organic

   rather than four identical clones. */

@keyframes storyIconFloat {

    0%, 100% { translate: 0 0; }

    50%      { translate: var(--tx, 4px) var(--ty, -8px); }

}

@media (prefers-reduced-motion: no-preference) {

    .page-id-3495 .story-float-icon {

        animation-name: storyIconFloat;

        animation-timing-function: ease-in-out;

        animation-iteration-count: infinite;

        animation-duration: var(--dur, 6s);

        animation-delay: var(--delay, 0s);

    }

}



/* keep it calm below tablet: not enough width for corner icons without

   overlapping the stacked text column */





/* =========================================================================

   HOME PAGE - section eyebrows ("My Story", "What I Cover", ...)

   Elementor adds a 15px bottom margin on top of the container gap, leaving the

   underlined eyebrow ~26px away from the heading. Remove the extra margin.

   ========================================================================= */

.home .elementor-widget.purple-heading-cen:not(:last-child) {

    margin-bottom: 0;

}



/* -------------------------------------------------------------------------

   HOME PAGE - purple stats strip: slowly floating decorative icons

   (left = .e-0006ef2-6e95d9b, right = .e-c20e027-d5a47c1). Uses the individual

   `translate` / `rotate` properties so it never clashes with Elementor's own

   positioning. Off for visitors who prefer reduced motion.

   ------------------------------------------------------------------------- */

@keyframes stripIconFloatLeft {

    0%, 100% { translate: 0 0;      rotate: -4deg; opacity: 0.50; }

    50%      { translate: 4px -12px; rotate: 5deg;  opacity: 0.85; }

}

@keyframes stripIconFloatRight {

    0%, 100% { translate: 0 -8px;   rotate: 4deg;  opacity: 0.85; }

    50%      { translate: -4px 6px; rotate: -5deg; opacity: 0.50; }

}

@media (prefers-reduced-motion: no-preference) {

    .elementor-10 .elementor-element-9e087c7 > .e-image-base.e-0006ef2-6e95d9b {

        animation: stripIconFloatLeft 6s ease-in-out infinite;

    }

    .elementor-10 .elementor-element-9e087c7 > .e-image-base.e-c20e027-d5a47c1 {

        animation: stripIconFloatRight 7s ease-in-out infinite;

    }

}





/* =========================================================================

   HOME PAGE - WHAT I COVER  (open columns; a tinted copy of each photo's own

   shape sits behind it; on hover the capsules replace the description)

   Elementor ids: section #13a61f2, columns row #4cf7755, each column = .service-box

   (image-box widget + a.science-overlay holding the <ul>).

   customjs/custom.js also auto-highlights one column at a time (class .is-auto), sets, per column:

     --photo     url() of the column's photo (used as a mask for the tinted shape)

     --desc-top  distance from the column top to the description (where capsules appear)

   ========================================================================= */



/* Section background */

.elementor-10 .elementor-element.elementor-element-13a61f2:not(.elementor-motion-effects-element-type-background) {

    background-image: linear-gradient(180deg, #F0EAF8 0%, #F9E9DD 100%);

}



/* Row of columns */

.home .elementor-element-4cf7755 {

    --gap: 0px;

    gap: 0;

    padding: 30px 10px 10px;

    align-items: stretch;

}



/* Column (no box): thin divider between neighbours */

.home .elementor-element-4cf7755 > .service-box {

    --width: auto;

    --tint: #DDD2F5;

    --tint-dark: #B4A3E8;

    position: relative;

    isolation: isolate;

    overflow: visible;

    flex: 1 1 0;

    width: auto;

    min-width: 0;

    padding: 0 30px;

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;

    background: none;

    border: 0;

    border-radius: 0;

    box-shadow: none;

    cursor: pointer;

    transition: none;

}

.home .elementor-element-4cf7755 > .service-box:nth-child(2) { --tint: #F9D9C0; --tint-dark: #EDB18A; }

.home .elementor-element-4cf7755 > .service-box:nth-child(3) { --tint: #CFE2FA; --tint-dark: #8DB9EF; }

.home .elementor-element-4cf7755 > .service-box:is(:hover, .is-auto, :focus-within) {

    transform: none;

    box-shadow: none;

}

/* divider between neighbours: a short line, same height as the content */

.home .elementor-element-4cf7755 > .service-box::before {

    display: none;

}

.home .elementor-element-4cf7755 > .service-box + .service-box::before {

    display: block;

    content: '';

    position: absolute;

    left: 0;

    top: 14px;

    bottom: 14px;

    width: 1px;

    background: rgba(97, 82, 173, 0.24);

    transform: none;

    clip-path: none;

    border-radius: 0;

    z-index: 0;

}



/* Photo, with a tinted copy of its own shape behind it */

.home .elementor-element-4cf7755 > .service-box > .elementor-widget-image-box {

    width: 100%;

}

.home .elementor-element-4cf7755 .service-box .elementor-image-box-img {

    position: relative;

    display: grid;

    place-items: center;

    width: clamp(150px, 15vw, 230px) !important;

    max-width: 100%;

    aspect-ratio: 1 / 1;

    margin: 0 auto 26px !important;

}

.home .elementor-element-4cf7755 .service-box .elementor-image-box-img::before {

    content: '';

    position: absolute;

    inset: 0;

    background: var(--tint);

    -webkit-mask: var(--photo, linear-gradient(#0000, #0000)) center / contain no-repeat;

    mask: var(--photo, linear-gradient(#0000, #0000)) center / contain no-repeat;

    transform: rotate(0deg) scale(1);

    transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);

}

/* dotted outline of the same shape, a little darker than the fill */

.home .elementor-element-4cf7755 .service-box .elementor-image-box-img::after {

    content: '';

    position: absolute;

    inset: 0;

    background: radial-gradient(circle, var(--tint-dark) 1.3px, transparent 1.8px) 0 0 / 5.5px 5.5px;

    -webkit-mask: var(--photo, linear-gradient(#0000, #0000)) center / 117% no-repeat,

                  var(--photo, linear-gradient(#0000, #0000)) center / 108% no-repeat;

    -webkit-mask-composite: xor;

    mask: var(--photo, linear-gradient(#0000, #0000)) center / 117% no-repeat,

          var(--photo, linear-gradient(#0000, #0000)) center / 108% no-repeat;

    mask-composite: exclude;

    transform: rotate(0deg) scale(1);

    transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);

    pointer-events: none;

}

.home .elementor-element-4cf7755 .service-box:is(:hover, .is-auto, :focus-within) .elementor-image-box-img::before,

.home .elementor-element-4cf7755 .service-box:is(:hover, .is-auto, :focus-within) .elementor-image-box-img::after {

    transform: rotate(-4deg) scale(1.05);

}

.home .elementor-element-4cf7755 .service-box .elementor-image-box-img img {

    position: relative;

    z-index: 1;

    width: 80% !important;

    height: auto !important;

    max-width: none;

    filter: drop-shadow(0 8px 12px rgba(46, 32, 110, 0.20));

    transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.home .elementor-element-4cf7755 .service-box:is(:hover, .is-auto, :focus-within) .elementor-image-box-img img {

    transform: translateY(-5px) scale(1.04);

}



/* Title (small underline grows on hover) + description */

.home .elementor-element-4cf7755 .service-box .elementor-image-box-title {

    position: relative;

    font-size: var(--box-title-size);

    line-height: var(--box-title-line);

    font-weight: 600;

    margin: 0 0 6px;

    padding-bottom: 8px;

    color: #1d1a3a;

}

.home .elementor-element-4cf7755 .service-box:has(:hover) .elementor-image-box-title {

    color: #1d1a3a;

}

.home .elementor-element-4cf7755 .service-box .elementor-image-box-title::after {

    content: '';

    position: absolute;

    left: 50%;

    bottom: 0;

    width: 0;

    height: 2px;

    border-radius: 2px;

    background: #6152AD;

    transform: translateX(-50%);

    transition: width 0.4s ease;

}

.home .elementor-element-4cf7755 .service-box:is(:hover, .is-auto, :focus-within) .elementor-image-box-title::after {

    width: 44px;

}

.home .elementor-element-4cf7755 .service-box .elementor-image-box-description {

    max-width: 34ch;

    margin: 0 auto;

    font-size: var(--box-text-size);

    line-height: var(--box-text-line);

    color: #5b5872;

    transition: opacity 0.3s ease;

}



/* The <a> holding the list. Its ::before stretches over the whole column

   (whole column = one link). */

.home .elementor-element-4cf7755 .service-box > .science-overlay {

    position: static;

    inset: auto;

    width: 100%;

    height: auto;

    margin-top: 0;

    padding: 16px 0 0;

    background: none;

    display: block;

    text-decoration: none;

    transition: none;

}

.home .elementor-element-4cf7755 .service-box > .science-overlay::before {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 3;

}

.home .elementor-element-4cf7755 .service-box > .science-overlay::after {

    display: none;

}

/* the duplicate title + description inside the link are not needed */

.home .elementor-element-4cf7755 .service-box > .science-overlay > .elementor-widget-image-box {

    display: none;

}



/* List as small capsules with a check icon */

.home .elementor-element-4cf7755 .service-box .science-overlay ul {

    list-style: none;

    margin: 0;

    padding: 0;

    display: flex;

    flex-wrap: wrap;

    justify-content: center;

    gap: 6px;

}

.home .elementor-element-4cf7755 .service-box .science-overlay li {

    position: relative;

    margin: 0;

    padding: 4px 12px 4px 28px;

    border-radius: 12px;

    background: rgba(255, 255, 255, 0.82);

    border: 1px solid rgba(97, 82, 173, 0.16);

    font-family: "Urbanist", sans-serif !important;

    font-size: clamp(1.2rem, 1.1rem + 0.15vw, 1.35rem);

    font-weight: 500;

    line-height: 1.3;

    color: #3b3190;

}

.home .elementor-element-4cf7755 .service-box .science-overlay li::before {

    content: '';

    position: absolute;

    left: 8px;

    top: 50%;

    width: 15px;

    height: 15px;

    transform: translateY(-50%);

    background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='12' fill='%236152AD' fill-opacity='0.18'/><path d='M7 12.5l3.2 3.2L17 9' fill='none' stroke='%236152AD' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/></svg>") center / contain no-repeat;

}



/* Desktop / mouse: capsules appear on hover, in the place of the description.

   (Touch screens and mobile keep the capsules under the description, always visible.) */





/* Tablet: 3 columns stay in one row, smaller */





/* Mobile: stacked, horizontal dividers */





/* "What I Cover" - while a column is auto-highlighted, the line under its heading fills

   from the centre outwards over the whole interval, like a loader (a faint track sits behind it).

   The duration comes from customjs/custom.js (--auto-ms). A real mouse hover keeps the short underline. */

@keyframes wicAutoLoader {

    from { width: 0; }

    to   { width: 132px; }

}

.home .elementor-element-4cf7755 .service-box .elementor-image-box-title::before {

    content: '';

    position: absolute;

    left: 50%;

    bottom: 0;

    width: 132px;

    height: 2px;

    border-radius: 2px;

    background: rgba(97, 82, 173, 0.18);

    transform: translateX(-50%);

    opacity: 0;

    transition: opacity 0.3s ease;

}

.home .elementor-element-4cf7755 .service-box.is-auto .elementor-image-box-title::before {

    opacity: 1;

}

.home .elementor-element-4cf7755 .service-box.is-auto .elementor-image-box-title::after {

    width: 0;

    animation: wicAutoLoader var(--auto-ms, 3800ms) linear forwards;

}





/* =========================================================================

   HOME PAGE - FEATURED ACROSS  (black section with the two rows of press logos)

   Elementor ids: section #2a7bd3a, header #fd60e08 (button widget #a536090),

   logos #d899c11 (an HTML widget with its own inline <style>, so the selectors

   below start with .home to win over it).

   ========================================================================= */



/* CTA: outlined button (same 11px corners as the rest of the site), fills purple on hover */

.home .elementor-element-a536090 .elementor-button-wrapper {

    text-align: center;

}

.home .elementor-element-a536090 .elementor-button {

    padding: 12px 28px !important;

    border-radius: 11px;                /* same corner radius as the other site buttons */

    background: transparent;

    color: #fff !important;

    border: 1px solid rgba(255, 255, 255, 0.32);

    font-weight: 600;

    letter-spacing: 0.01em;

    transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;

}

.home .elementor-element-a536090 .elementor-button:hover,

.home .elementor-element-a536090 .elementor-button:focus-visible {

    background: #6152AD;

    border-color: #6152AD;

    color: #fff !important;

    transform: translateY(-2px);

    box-shadow: 0 10px 24px -8px rgba(97, 82, 173, 0.75);

}

.home .elementor-element-a536090 .elementor-button-text {

    color: inherit;

    display: inline-block;

    transition: transform 0.3s ease;

}

.home .elementor-element-a536090 .elementor-button:hover .elementor-button-text {

    transform: translateX(3px);

}



/* Logos closer to the button */

.home .elementor-element-d899c11 {

    margin-top: -26px;

}



/* Rows: soft fade at both ends, pause while the mouse is over a row */

.home .logo-section .logo-marquee {

    padding: 12px 0;                    /* headroom so a hovered tile can lift without being clipped */

    margin: 2px 0;

    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 11%, #000 89%, transparent 100%);

    mask-image: linear-gradient(90deg, transparent 0, #000 11%, #000 89%, transparent 100%);

}

.home .logo-section .logo-track {

    gap: 22px;

}

.home .logo-section .marquee-left .logo-track {

    animation-duration: 48s;

}

.home .logo-section .marquee-right .logo-track {

    animation-duration: 48s;

}

.home .logo-section .logo-marquee:hover .logo-track {

    animation-play-state: paused;

}



/* Tiles: smaller, even, hairline border, no diagonal fade */

.home .logo-section .logo-card {

    width: clamp(170px, 15vw, 240px);

    height: clamp(88px, 7.6vw, 118px);

    border-radius: 14px;

    border: 1px solid rgba(255, 255, 255, 0.12);

    background-color: rgba(255, 255, 255, 0.045);

    -webkit-mask-image: none;

    mask-image: none;

    transition: transform 0.35s ease, background-color 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;

}

.home .logo-section .logo-card img {

    max-width: 100%;

    opacity: 0.8;

    transition: opacity 0.35s ease, transform 0.35s ease;

}

.home .logo-section .logo-card:hover {

    transform: translateY(-5px);

    background-color: rgba(255, 255, 255, 0.10);

    border-color: rgba(150, 130, 235, 0.65);

    box-shadow: 0 14px 30px -12px rgba(97, 82, 173, 0.7);

}

.home .logo-section .logo-card:hover img {

    opacity: 1;

    transform: scale(1.05);

}



/* Mobile: compact tiles */





/* Visitors who prefer reduced motion: no auto-scroll, rows can be swiped instead */

@media (prefers-reduced-motion: reduce) {

    .home .logo-section .logo-track {

        animation: none !important;

    }

    .home .logo-section .logo-marquee {

        overflow-x: auto;

    }

}





/* =========================================================================

   HOME PAGE - FRESH OFF THE BENCH  (bento: one big featured video + 3 small tiles;

   posts as tiles with a category chip; play buttons on the videos)

   Elementor ids: cards row #1c6c20a, video card #1f3f0ef (shortcode #8736e80 = .ydqh-posts-grid),

   posts card #2d22d04 (shortcode #409d123 = .new-homepage-mix-grid), photo #767fb82.

   Both shortcodes carry an inline <style>, so selectors start with .home to win over it.

   customjs/custom.js adds data-cat (category chip) and .is-empty (blank excerpts) to the post tiles.

   ========================================================================= */



/* Card links ("Read Along ->", "Explore ->"): same button shape as the rest of the site */

.home .elementor-element-4209220 .elementor-button,

.home .elementor-element-bc79721 .elementor-button {

    padding: 8px 16px !important;

    border-radius: 11px;

    background: transparent;

    border: 1px solid rgba(97, 82, 173, 0.40);

    color: #6152AD !important;

    font-weight: 600;

    transition: background 0.3s ease, border-color 0.3s ease, color 0.3s ease, transform 0.3s ease;

}

.home .elementor-element-4209220 .elementor-button:hover,

.home .elementor-element-bc79721 .elementor-button:hover,

.home .elementor-element-4209220 .elementor-button:focus-visible,

.home .elementor-element-bc79721 .elementor-button:focus-visible {

    background: #6152AD;

    border-color: #6152AD;

    color: #fff !important;

    transform: translateY(-2px);

}



/* The video card is a wrapping flex column; in that mode the browser measured the video block at a

   tiny provisional width (height collapsed to ~21px). Non-wrapping fixes it. */

.home .elementor-element-1f3f0ef {

    --flex-wrap: nowrap;

    flex-wrap: nowrap;

}

.home .elementor-element-8736e80 {

    width: 100%;

}



/* Desktop: wider video card, more compact posts card (less padding, narrower photo) */





/* ---------- Videos: bento grid (big featured video on top, three tiles under it) ---------- */

.home .elementor-element-8736e80 .ydqh-posts-grid {

    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    grid-template-rows: auto auto;

    gap: 10px;

}

.home .elementor-element-8736e80 .ydqh-post-thumb-link {

    position: relative;

    border-radius: 12px;

    overflow: hidden;

    box-shadow: 0 10px 20px -12px rgba(46, 32, 110, 0.55);

    transition: transform 0.35s ease, box-shadow 0.35s ease;

}

.home .elementor-element-8736e80 .ydqh-post-thumb-link:hover {

    transform: translateY(-3px);

    box-shadow: 0 18px 28px -12px rgba(46, 32, 110, 0.6);

}

.home .elementor-element-8736e80 .ydqh-post-thumb-link:first-child {

    grid-column: 1 / -1;

    aspect-ratio: 16 / 9;

    border-radius: 16px;

    --pl: 60px;

}

.home .elementor-element-8736e80 .ydqh-post-thumb-link:not(:first-child) {

    aspect-ratio: 16 / 10;

    --pl: 32px;

}

/* images fill their tile and never add height themselves */

.home .elementor-element-8736e80 .ydqh-post-thumb-link img {

    position: absolute;

    inset: 0;

    width: 100%;

    height: 100%;

    aspect-ratio: auto;

    object-fit: cover;

    transition: transform 0.5s ease;

}

.home .elementor-element-8736e80 .ydqh-post-thumb-link:hover img {

    transform: scale(1.06);

}



/* Desktop (cards side by side): the featured video keeps a proper 16:9 shape at every screen size, so the

   video card sets the row height; the posts card stretches to match and spreads its three tiles evenly. */





/* Play button (all videos) */

.home .elementor-element-8736e80 .ydqh-post-thumb-link::after {

    content: '';

    position: absolute;

    left: 50%;

    top: 50%;

    width: var(--pl, 30px);

    height: var(--pl, 30px);

    transform: translate(-50%, -50%);

    border-radius: 50%;

    background: rgba(24, 18, 60, 0.58) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M9 6.5v11a1 1 0 0 0 1.5.86l9-5.5a1 1 0 0 0 0-1.72l-9-5.5A1 1 0 0 0 9 6.5z' fill='%23ffffff'/></svg>") 54% 50% / 46% no-repeat;

    box-shadow: 0 0 0 calc(var(--pl, 30px) * 0.12) rgba(255, 255, 255, 0.22);

    -webkit-backdrop-filter: blur(3px);

    backdrop-filter: blur(3px);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.3s ease;

    pointer-events: none;

}

.home .elementor-element-8736e80 .ydqh-post-thumb-link:hover::after {

    transform: translate(-50%, -50%) scale(1.14);

    background-color: #6152AD;

}

/* label on the featured video */

.home .elementor-element-8736e80 .ydqh-post-thumb-link:first-child::before {

    content: 'Watch now';

    position: absolute;

    left: 10px;

    bottom: 10px;

    z-index: 1;

    padding: 3px 10px;

    border-radius: 8px;

    background: rgba(24, 18, 60, 0.62);

    color: #fff;

    font-size: 1.2rem;

    font-weight: 600;

    line-height: 1.3;

    pointer-events: none;

}



/* ---------- Posts: tiles ---------- */

.home .elementor-element-409d123 .new-homepage-mix-grid {

    gap: 10px;

}

.home .elementor-element-409d123 .new-homepage-mix-item {

    position: relative;

    padding: 12px 52px 12px 16px;

    background: rgba(255, 255, 255, 0.85);

    border: 1px solid rgba(97, 82, 173, 0.14);

    border-radius: 14px;

    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease, background 0.3s ease;

}

.home .elementor-element-409d123 .new-homepage-mix-item:hover {

    transform: translateY(-3px);

    background: #fff;

    border-color: rgba(97, 82, 173, 0.45);

    box-shadow: 0 14px 26px -14px rgba(60, 40, 140, 0.5);

}

.home .elementor-element-409d123 .new-homepage-mix-item[data-cat]::before {

    content: attr(data-cat);

    display: inline-block;

    margin-bottom: 6px;

    padding: 1px 9px;

    border-radius: 8px;

    background: #ECE4F7;

    color: #534AB7;

    font-size: 1.15rem;

    font-weight: 600;

    line-height: 1.5;

}

.home .elementor-element-409d123 .new-homepage-mix-title {

    font-size: clamp(1.5rem, 1.2rem + 0.3vw, 1.75rem);

    line-height: 1.35;

    font-weight: 700;

}

.home .elementor-element-409d123 .new-homepage-mix-title a {

    color: #1d1a3a;

}

/* whole tile is one link */

.home .elementor-element-409d123 .new-homepage-mix-title a::after {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 2;

}

.home .elementor-element-409d123 .new-homepage-mix-excerpt {

    margin-top: 3px;

    font-size: clamp(1.3rem, 1.15rem + 0.2vw, 1.5rem);

    line-height: 1.5;

    color: #5b5872;

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

}

.home .elementor-element-409d123 .new-homepage-mix-excerpt.is-empty {

    display: none;

}

/* arrow badge */

.home .elementor-element-409d123 .new-homepage-mix-item::after {

    content: '\2197';

    position: absolute;

    right: 14px;

    top: 50%;

    width: 30px;

    height: 30px;

    margin-top: -15px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ECE4F7;

    color: #534AB7;

    font-size: 1.5rem;

    line-height: 1;

    transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease;

}

.home .elementor-element-409d123 .new-homepage-mix-item:hover::after {

    background: #6152AD;

    color: #fff;

    transform: translate(2px, -2px);

}



/* ---------- Photo: rounded tile, slow zoom on hover ---------- */

.home .elementor-element-767fb82 {

    overflow: hidden;

    border-radius: 18px;

}

.home .elementor-element-767fb82 .elementor-widget-image,

.home .elementor-element-767fb82 .elementor-widget-container {

    height: 100%;

}

.home .elementor-element-767fb82 img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    border-radius: 18px;

    transition: transform 0.8s ease;

}

.home .elementor-element-2d22d04:hover .elementor-element-767fb82 img {

    transform: scale(1.04);

}



/* "Fresh Off the Bench" - the videos rotate automatically (customjs/custom.js moves the first video to the

   end of the list every few seconds). The video that arrives in the featured slot fades/zooms in. */

@keyframes wicVideoIn {

    from { opacity: 0; transform: scale(0.965); }

    to   { opacity: 1; transform: none; }

}

.home .elementor-element-8736e80 .ydqh-posts-grid.is-rotating .ydqh-post-thumb-link:first-child {

    animation: wicVideoIn 0.6s ease both;

}

.home .elementor-element-8736e80 .ydqh-posts-grid.is-rotating .ydqh-post-thumb-link:last-child {

    animation: wicVideoIn 0.5s ease 0.1s both;

}

@media (prefers-reduced-motion: reduce) {

    .home .elementor-element-8736e80 .ydqh-posts-grid.is-rotating .ydqh-post-thumb-link {

        animation: none !important;

    }

}



/* Loader on the featured video: a bar along its bottom edge fills over the rotation interval,

   so visitors can see the next video is about to come in. The <span class="wic-loader"> is added by

   customjs/custom.js; --rot-ms is the interval. Hidden while paused (mouse over the videos). */

@keyframes wicLoaderFill {

    from { transform: scaleX(0); }

    to   { transform: scaleX(1); }

}

.home .elementor-element-8736e80 .wic-loader {

    position: absolute;

    left: 0;

    right: 0;

    bottom: 0;

    z-index: 5;

    height: 5px;

    background: rgba(255, 255, 255, 0.22);

    pointer-events: none;

    transition: opacity 0.3s ease;

}

.home .elementor-element-8736e80 .wic-loader i {

    display: block;

    height: 100%;

    background: linear-gradient(90deg, #8f7fe6, #ffffff);

    transform-origin: left center;

    transform: scaleX(0);

    animation: wicLoaderFill var(--rot-ms, 5500ms) linear forwards;

}

.home .elementor-element-8736e80 .ydqh-posts-grid.is-paused .wic-loader {

    opacity: 0;

}

.home .elementor-element-8736e80 .ydqh-posts-grid.is-paused .wic-loader i {

    animation: none;

}

@media (prefers-reduced-motion: reduce) {

    .home .elementor-element-8736e80 .wic-loader {

        display: none;

    }

}





/* =========================================================================

   HOME PAGE - REFORMING ACADEMIA PODCAST  (compact "live" section, fits in one screen)

   Elementor ids: section #0a2ab12 (the client's microphone photo is its background and stays clear),

   header #091b31d, row #51015a5, left column #c0184cc with the platform buttons #c950b40

   (Apple #e68791e, Spotify #ad8e140), episode list #e5a72cb (AJAX-loaded .podcast-item cards),

   "Explore More" #2175dd8.

   ========================================================================= */



/* ---------- Section: tighter vertical spacing ---------- */

.elementor-10 .elementor-element.elementor-element-0a2ab12 {

    --padding-top: 26px;

    --padding-bottom: 82px;             /* the Instagram card below overlaps the last ~50px of this section */

}

.home .elementor-element-091b31d {

    gap: 14px;                          /* keeps the eyebrow's underline clear of the heading */

}

.home .elementor-element-091b31d .section-heading {

    font-size: clamp(2.4rem, 1.9rem + 0.9vw, 3.6rem);

}

.home .elementor-element-1dff3d6 {

    max-width: 760px;

}

.home .elementor-element-1dff3d6 .elementor-heading-title {

    font-size: clamp(1.5rem, 1.2rem + 0.45vw, 1.9rem);

    line-height: 1.45;

}

.home .elementor-element-51015a5 {

    --padding-top: 0px;

    --padding-bottom: 0px;

    align-items: flex-end;

}



/* ---------- Equalizer icon (replaces the play triangle on every episode) ---------- */

@keyframes wicEq {

    0%, 100% { background-size: 3px 30%, 3px 85%, 3px 55%, 3px 100%; }

    25%      { background-size: 3px 90%, 3px 40%, 3px 100%, 3px 50%; }

    50%      { background-size: 3px 45%, 3px 100%, 3px 35%, 3px 80%; }

    75%      { background-size: 3px 100%, 3px 55%, 3px 75%, 3px 30%; }

}

.home .elementor-element-e5a72cb .podcast-play-btn {

    position: relative;

    width: 42px;

    height: 42px;

    color: #5a4cc4;

    background: #e9e5ff;

    border: 1px solid #ffffff;

    transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;

}

.home .elementor-element-e5a72cb .podcast-play-btn .play-icon {

    display: none;

}

.home .elementor-element-e5a72cb .podcast-play-btn::before {

    content: '';

    width: 19px;

    height: 16px;

    background:

        linear-gradient(currentColor, currentColor) 0 100% / 3px 30% no-repeat,

        linear-gradient(currentColor, currentColor) 5px 100% / 3px 85% no-repeat,

        linear-gradient(currentColor, currentColor) 10px 100% / 3px 55% no-repeat,

        linear-gradient(currentColor, currentColor) 16px 100% / 3px 100% no-repeat;

    animation: wicEq 1.15s ease-in-out infinite;

}

.home .elementor-element-e5a72cb .podcast-play-btn::before {

    transition: opacity 0.25s ease, transform 0.3s ease;

}

/* play triangle: hidden until the card is hovered, then it replaces the equalizer */

.home .elementor-element-e5a72cb .podcast-play-btn::after {

    content: '';

    position: absolute;

    left: 50%;

    top: 50%;

    width: 16px;

    height: 16px;

    margin: -8px 0 0 -7px;

    background: currentColor;

    -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M7 4.6v14.8a1 1 0 0 0 1.5.86l12-7.4a1 1 0 0 0 0-1.72l-12-7.4A1 1 0 0 0 7 4.6z'/></svg>") center / contain no-repeat;

    mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M7 4.6v14.8a1 1 0 0 0 1.5.86l12-7.4a1 1 0 0 0 0-1.72l-12-7.4A1 1 0 0 0 7 4.6z'/></svg>") center / contain no-repeat;

    opacity: 0;

    transform: scale(0.5);

    transition: opacity 0.25s ease, transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);

}

/* every episode's bars keep moving; on hover the button turns white and the bars turn into a dark play icon */

.home .elementor-element-e5a72cb .podcast-item:hover .podcast-play-btn {

    color: #1d1a3a;

    background: #ffffff;

    border-color: #ffffff;

}

.home .elementor-element-e5a72cb .podcast-item:hover .podcast-play-btn::before {

    opacity: 0;

    transform: scale(0.4);

}

.home .elementor-element-e5a72cb .podcast-item:hover .podcast-play-btn::after {

    opacity: 1;

    transform: scale(1);

}

@media (prefers-reduced-motion: reduce) {

    .home .elementor-element-e5a72cb .podcast-play-btn::before {

        animation: none !important;

        background-size: 3px 55%, 3px 85%, 3px 45%, 3px 100%;

    }

}



/* ---------- Episodes: one glass card each ---------- */

.home .elementor-element-e5a72cb .custom-podcast-wrapper {

    padding: 0;

    background: none;

    border: 0;

    border-radius: 0;

}

.home .elementor-element-e5a72cb .podcast-list {

    gap: 10px;

}

.home .elementor-element-e5a72cb .podcast-item {

    gap: 14px;

    padding: 11px 16px 11px 11px;

    border: 1px solid rgba(255, 255, 255, 0.16);

    border-bottom: 1px solid rgba(255, 255, 255, 0.16);

    border-radius: 14px;

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.03));

    -webkit-backdrop-filter: blur(12px);

    backdrop-filter: blur(12px);

    box-shadow: 0 10px 24px -16px rgba(0, 0, 0, 0.8), inset 0 1px 0 rgba(255, 255, 255, 0.10);

    transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease, background 0.4s ease;

}

.home .elementor-element-e5a72cb .podcast-item:hover {

    transform: translate(6px, -4px);

    border-color: rgba(169, 156, 245, 0.7);

    background: linear-gradient(135deg, rgba(150, 130, 235, 0.22), rgba(255, 255, 255, 0.05));

    box-shadow: 0 20px 34px -16px rgba(97, 82, 173, 0.85), inset 0 1px 0 rgba(255, 255, 255, 0.16);

}

.home .elementor-element-e5a72cb .podcast-left {

    gap: 14px;

}

.home .elementor-element-e5a72cb .podcast-image {

    width: 124px;

    min-width: 124px;

    aspect-ratio: 16 / 9;

    border-radius: 9px;

    border: 1px solid rgba(255, 255, 255, 0.16);

}

.home .elementor-element-e5a72cb .podcast-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.5s ease;

}

.home .elementor-element-e5a72cb .podcast-item:hover .podcast-image img {

    transform: scale(1.08);

}

.home .elementor-element-e5a72cb .podcast-title {

    margin: 0 0 4px;

}

.home .elementor-element-e5a72cb .podcast-title a {

    font-size: clamp(1.5rem, 1.3rem + 0.3vw, 1.75rem);

    line-height: 1.3;

}

.home .elementor-element-e5a72cb .podcast-description {

    font-size: clamp(1.25rem, 1.15rem + 0.2vw, 1.4rem);

    line-height: 1.5;

    -webkit-line-clamp: 2;

}

.home .elementor-element-e5a72cb .podcast-play-wrap {

    min-width: 42px;

}



/* ---------- Platform CTAs: glass buttons with a brand-coloured hover ---------- */

.home .elementor-element-c950b40 {

    gap: 12px;

    --width: auto;

}

.home .elementor-element-c950b40 > a {

    padding: 0;

    transition: transform 0.3s ease;

}

.home .elementor-element-c950b40 > a:hover {

    transform: translateY(-3px);

}

.home .elementor-element-c950b40 > a > .e-con {

    width: 100%;

    min-height: 0;

    padding: 9px 18px 9px 14px;

    gap: 12px;

    border-radius: 11px;

    border: 1px solid #8f7fe6;          /* Apple Podcasts: purple-blue border by default */

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.04)) !important;

    -webkit-backdrop-filter: blur(12px);

    backdrop-filter: blur(12px);

    transition: border-color 0.3s ease, background 0.3s ease;

}

.home .elementor-element-c950b40 > a[href*="spotify"] > .e-con {

    border-color: #1ed760;              /* Spotify: green border by default */

}

.home .elementor-element-c950b40 .e-paragraph-base:first-child {

    text-transform: uppercase;

    letter-spacing: 0.09em;

    font-size: 1.05rem;

    line-height: 1.2;

    opacity: 0.85;

}

.home .elementor-element-c950b40 > a > .e-con img {

    max-width: 34px;

}

.home .elementor-element-c950b40 > a:hover > .e-con {

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.17), rgba(255, 255, 255, 0.07)) !important;

    box-shadow: none;

}



/* ---------- Explore More ---------- */

.home .elementor-element-2175dd8,

.home .elementor-element-2175dd8 .elementor-widget-container {

    padding: 0 !important;

    margin: 0;

    width: auto;

}

.home .elementor-element-2175dd8 .elementor-button .elementor-button-content-wrapper {

    gap: 12px;

}

.home .elementor-element-2175dd8 .elementor-button {

    display: inline-flex;

    align-items: center;

    width: auto;

    white-space: nowrap;

    padding: 0 22px !important;

    height: 52px;

    font-size: 1.6rem;

    border-radius: 11px;

    border: 1px solid rgba(255, 255, 255, 0.22);

    transition: background 0.3s ease, transform 0.3s ease, border-color 0.3s ease;

}

.home .elementor-element-2175dd8 .elementor-button:hover {

    transform: translateY(-2px);

    border-color: rgba(169, 156, 245, 0.8);

}



/* ---------- Desktop: keep the left half clear for the microphone photo ----------

   The platform buttons and "Explore More" move to one row under the episode list. */





/* ---------- Tablet / mobile ---------- */





/* =========================================================================

   HOME PAGE - SCIENCE ON THE SCROLL  (Instagram banner card)

   Elementor ids: card #38f366a (lavender background image stays), photos #908d43f (one image with three

   polaroids), title #088f63c, line #790a8bf, button #63da033 (Instagram link).

   Text is untouched: only motion and styling.

   ========================================================================= */



/* Card: soft lift + a slow Instagram-coloured glow in the corners */

.home .elementor-element-38f366a {

    position: relative;

    isolation: isolate;

    box-shadow: 0 26px 50px -30px rgba(60, 40, 140, 0.55);

    transition: box-shadow 0.4s ease;

}

.home .elementor-element-38f366a::before {

    content: '';

    position: absolute;

    inset: 0;

    z-index: -1;

    border-radius: inherit;

    pointer-events: none;

    background:

        radial-gradient(420px 220px at 100% 100%, rgba(253, 121, 168, 0.20), transparent 70%),

        radial-gradient(360px 200px at 0% 0%, rgba(120, 100, 230, 0.16), transparent 70%);

    animation: wicIgGlow 9s ease-in-out infinite alternate;

}

@keyframes wicIgGlow {

    from { opacity: 0.55; }

    to   { opacity: 1; }

}

.home .elementor-element-38f366a:hover {

    box-shadow: 0 34px 60px -30px rgba(60, 40, 140, 0.7);

}



/* Photos: float gently, fan out a little when the card is hovered */

@keyframes wicIgFloat {

    0%, 100% { translate: 0 0;   rotate: -0.6deg; }

    50%      { translate: 0 -8px; rotate: 0.8deg; }

}

.home .elementor-element-ab9ac04 img {

    animation: wicIgFloat 6.5s ease-in-out infinite;

    transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1), filter 0.4s ease;

    filter: drop-shadow(0 14px 18px rgba(60, 40, 140, 0.22));

    transform-origin: 50% 90%;

}

.home .elementor-element-38f366a:hover .elementor-element-ab9ac04 img {

    transform: scale(1.06) rotate(-2.5deg);

    filter: drop-shadow(0 22px 26px rgba(60, 40, 140, 0.32));

}



/* Curvy line between the title and the button. customjs/custom.js injects an SVG wave into #790a8bf and

   draws it from the text towards the button as the section scrolls into view (--p = progress 0-1). */

.home .elementor-element-790a8bf {

    position: relative;

    align-self: stretch;

    min-height: 64px;

    min-width: 90px;

}





.home .elementor-element-500bf77 {

    display: none;

}

.home .wic-wave {

    position: absolute;

    left: 0;

    right: 0;

    top: 50%;

    height: 64px;

    margin-top: -32px;

    pointer-events: none;

    overflow: visible;

}

.home .wic-wave svg {

    display: block;

    width: 100%;

    height: 100%;

    overflow: visible;

}

.home .wic-wave .wave-track,

.home .wic-wave .wave-draw {

    fill: none;

    stroke-linecap: round;

    stroke-dasharray: 8 8;

    vector-effect: non-scaling-stroke;

}

.home .wic-wave .wave-track {

    stroke: rgba(97, 82, 173, 0.20);

    stroke-width: 2;

}

.home .wic-wave .wave-draw {

    stroke: url(#wicWaveGrad);

    stroke-width: 3;

}

/* arrow head: rides on the tip of the drawn line and turns with the curve */

.home .wic-wave .wave-arrow {

    position: absolute;

    left: 0;

    top: 0;

    width: 12px;

    height: 12px;

    margin: -6px 0 0 -9px;

    border-top: 3px solid var(--arrow, #bc1888);

    border-right: 3px solid var(--arrow, #bc1888);

    border-radius: 2px;

    opacity: 0;

    transition: opacity 0.2s ease;

}

.home .wic-wave.is-on .wave-arrow {

    opacity: 1;

}



/* Follow button: the real Instagram gradient (yellow / orange / red / magenta / purple) */

.home .elementor-element-63da033 .elementor-button {

    position: relative;

    white-space: nowrap;

    padding: 12px 24px !important;

    border: 0;

    border-radius: 11px;

    color: #fff;

    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);

    background-size: 140% 140%;

    background-position: 0% 50%;

    box-shadow: 0 10px 22px -14px rgba(220, 39, 67, 0.8);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background-position 0.5s ease;

}

.home .elementor-element-63da033 .elementor-button:hover,

.home .elementor-element-63da033 .elementor-button:focus-visible {

    transform: translateY(-3px);

    background-position: 100% 50%;

    box-shadow: 0 18px 30px -14px rgba(220, 39, 67, 0.85);

}

.home .elementor-element-63da033 .elementor-button-icon svg {

    transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.home .elementor-element-63da033 .elementor-button:hover .elementor-button-icon svg {

    transform: rotate(-12deg) scale(1.18);

}





@media (prefers-reduced-motion: reduce) {

    .home .elementor-element-38f366a::before,

    .home .elementor-element-ab9ac04 img,

    .home .wic-wave {

        animation: none;

    }

}





/* =========================================================================

   HOME PAGE - LET'S COLLABORATE  (pill tabs + one framed card/photo unit)

   Elementor ids: section #441c207 (#workwithchloe-sect), tabs widget #3494cf2 (.transfer-tabs),

   each panel = .e-n-tabs-content > .e-con > .e-con-boxed > .e-con-inner > [card, photo].

   The auto-cycle and its progress line come from the existing tab script; only styling is changed here.

   ========================================================================= */



/* Section background: a little more colour so the frame stands out */

.elementor-10 .elementor-element.elementor-element-441c207:not(.elementor-motion-effects-element-type-background) {

    background-image: linear-gradient(180deg, #FFFFFF 0%, #EEE8FB 100%);

}



/* ---------- Tabs as pill buttons ---------- */

.home .transfer-tabs {

    --n-tabs-heading-width: 250px;

}

.home .transfer-tabs .e-n-tabs {

    gap: 0;                             /* the active tab runs straight into the card */

}

.home .transfer-tabs .e-n-tabs-heading {

    gap: 12px;

}

.home .transfer-tabs .e-n-tab-title {

    display: flex;

    align-items: center;

    justify-content: flex-start !important;

    text-align: left;

    white-space: nowrap;

    width: calc(100% - 18px);

    padding: 13px 20px;

    border: 1px solid rgba(97, 82, 173, 0.25);

    border-radius: 11px;

    background: #ffffff !important;

    box-shadow: 0 6px 12px -10px rgba(60, 40, 140, 0.35);

    transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, width 0.3s ease;

}

.home .transfer-tabs .e-n-tab-title .e-n-tab-title-text {

    color: #2b2470 !important;

    -webkit-text-stroke: 0 !important;

    font-size: clamp(1.5rem, 1.3rem + 0.3vw, 1.75rem);

    font-weight: 600;

    transition: color 0.3s ease;

}

.home .transfer-tabs .e-n-tab-title:hover {

    border-color: rgba(97, 82, 173, 0.6);

}

/* active tab: reaches across the gap and joins the card's purple left edge */

.home .transfer-tabs .e-n-tab-title[aria-selected="true"] {

    position: relative;

    z-index: 3;

    width: calc(100% + 4px);

    margin-right: -4px;

    background: #6152AD !important;

    border-color: #6152AD;

    border-radius: 11px 0 0 11px;

    box-shadow: none;

}

.home .transfer-tabs .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text {

    color: #ffffff !important;

}

/* auto-cycle progress line: runs along the bottom of the active pill */

.home .transfer-tabs .e-n-tab-title::after {

    bottom: 0 !important;

    height: 4px;

    background: rgba(255, 255, 255, 0.85);

}



/* ---------- Panel: text card and photo become one framed unit ---------- */

.home .transfer-tabs .e-n-tabs-content > .e-con > .e-con-boxed {

    align-items: stretch;

    background: #ffffff;

    border: 1px solid rgba(97, 82, 173, 0.16);

    border-left: 4px solid #6152AD;

    border-radius: 6px 22px 22px 6px;

    overflow: hidden;

    box-shadow: 0 12px 24px -20px rgba(60, 40, 140, 0.30);

}

.home .transfer-tabs .e-n-tabs-content > .e-con > .e-con-boxed > .e-con-inner {

    gap: 0;

    align-items: stretch;

}

.home .transfer-tabs .e-n-tabs-content .e-con-inner > .e-con-full:first-child {

    --width: 58%;

    border: 0;

    border-radius: 0;

    background: transparent;

    padding: 26px 30px 26px 32px;

    gap: 6px;

}

.home .transfer-tabs .e-n-tabs-content .e-con-inner > .e-con-full:last-child {

    --width: 42%;

    flex: 1 1 0;

    min-width: 0;

    min-height: 0;

    border-radius: 0;

    background-position: center;

}



/* title + description */

.home .transfer-tabs .e-n-tabs-content .elementor-image-box-title {

    font-size: clamp(1.8rem, 1.4rem + 0.5vw, 2.3rem);

    line-height: 1.3;

    font-weight: 700;

    color: #6152AD;

    margin-bottom: 6px;

    text-transform: capitalize;

}

/* 4: intro text and bullet text share one size, colour and weight */

.home .transfer-tabs .e-n-tabs-content .elementor-image-box-description {

    color: #3d3a55;

    font-size: clamp(1.45rem, 1.3rem + 0.25vw, 1.65rem);

    line-height: 1.5;

    font-weight: 400;

}



/* list items: round icon badges that nudge on hover */

.home .transfer-tabs .e-n-tabs-content .elementor-position-left {

    transition: transform 0.3s ease;

}

.home .transfer-tabs .e-n-tabs-content .elementor-position-left:hover {

    transform: translateX(5px);

}

.home .transfer-tabs .e-n-tabs-content .elementor-position-left .elementor-image-box-img {

    width: 44px !important;

    flex: 0 0 44px;

    margin-right: 14px !important;

}

.home .transfer-tabs .e-n-tabs-content .elementor-position-left .elementor-image-box-img img {

    width: 44px;

    height: 44px;

    padding: 7px;

    border-radius: 50%;

    background: #f1ecfc;

    border: 1px solid rgba(97, 82, 173, 0.22);

    box-shadow: 0 4px 8px -6px rgba(97, 82, 173, 0.5);

    transition: background 0.3s ease, transform 0.3s ease;

}

.home .transfer-tabs .e-n-tabs-content .elementor-position-left:hover .elementor-image-box-img img {

    background: #e2d9fb;

    transform: scale(1.08) rotate(-6deg);

}

.home .transfer-tabs .e-n-tabs-content .elementor-position-left .elementor-image-box-description {

    line-height: 1.4;

}



/* CTA: one strong solid button */

.home .transfer-tabs .e-n-tabs-content .alan-button {

    margin-top: 10px;

}

.home .transfer-tabs .e-n-tabs-content .alan-button .elementor-button {

    padding: 12px 24px !important;

    border-radius: 11px;

    background: #6152AD;

    color: #ffffff;

    font-weight: 600;

    box-shadow: 0 8px 14px -10px rgba(97, 82, 173, 0.6);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;

}

.home .transfer-tabs .e-n-tabs-content .alan-button .elementor-button-text {

    color: #ffffff;

}

.home .transfer-tabs .e-n-tabs-content .alan-button .elementor-button:hover {

    background: #5845BD;

    transform: translateY(-3px);

    box-shadow: 0 12px 18px -12px rgba(97, 82, 173, 0.75);

}

.home .transfer-tabs .e-n-tabs-content .alan-button:hover .elementor-button-text {

    transform: translateX(4px);

}



/* ---------- Tablet / mobile ---------- */





/* =========================================================================

   HOME PAGE - BEFORE YOU GO  (newsletter section)

   Elementor ids: section #d4586a8, row #01f34f9, text column #92babc2 (button = .podcast-form-popup-btn #9c56a7b),

   photo column #d14b583 (image #8547849). Text is untouched: only spacing, button and motion.

   ========================================================================= */



/* ---------- Text column: even rhythm ---------- */

.home .elementor-element-92babc2 {

    gap: 0;

}

.home .elementor-element-92babc2 .elementor-element-c99492d {

    margin-bottom: 16px;

}

.home .elementor-element-92babc2 .section-heading {

    margin-bottom: 14px;

}

.home .elementor-element-92babc2 > .e-paragraph-base {

    max-width: 52ch;

    margin: 0 0 22px;

    font-size: clamp(1.55rem, 1.35rem + 0.3vw, 1.85rem);

    line-height: 1.6;

    color: #2b2842;

}

/* eyebrow underline: a little stronger */

.home .elementor-element-c99492d .elementor-heading-title {

    color: #223973;

}



/* ---------- Subscribe: compact button with the arrow next to the label ---------- */

.home .elementor-element-f6eba8c {

    --width: auto;

    width: auto;

    align-self: flex-start;

}

.home .elementor-element-9c56a7b.podcast-form-popup-btn {

    --width: auto;

    width: fit-content;

    min-width: 0;

    flex: 0 0 auto;

    align-items: center;

    gap: 12px;

    padding: 12px 22px 12px 18px;

    border-radius: 11px;

    background: #6152AD;

    box-shadow: 0 10px 18px -12px rgba(97, 82, 173, 0.75);

    cursor: pointer;

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;

}

.home .elementor-element-9c56a7b.podcast-form-popup-btn > .e-con {

    --width: auto;

    width: auto;

    flex: 0 0 auto;

    padding: 0;

    background: none;

}

.home .elementor-element-9c56a7b .elementor-element-f8ed20e img {

    width: 30px;

    height: auto;

    transform-origin: 50% 80%;

    animation: wicMailNudge 3.6s ease-in-out infinite;

}

.home .elementor-element-9c56a7b .elementor-element-369e874 img {

    width: 26px;

    height: auto;

}

.home .elementor-element-9c56a7b .e-32c60bb-549071b {

    margin: 0;

    font-size: 1.7rem;

    font-weight: 600;

    color: #fff;

    letter-spacing: 0.01em;

}

.home .elementor-element-9c56a7b.podcast-form-popup-btn:hover {

    background: #5845BD;

    transform: translateY(-3px);

    box-shadow: 0 16px 24px -12px rgba(97, 82, 173, 0.85);

}

.home .elementor-element-9c56a7b.podcast-form-popup-btn:hover .subs-arrow {

    transform: translateX(6px);

}

@keyframes wicMailNudge {

    0%, 86%, 100% { transform: rotate(0deg); }

    90% { transform: rotate(-9deg); }

    94% { transform: rotate(8deg); }

    97% { transform: rotate(-4deg); }

}



/* ---------- Photo: gentle float, soft join with the footer, floating chips ---------- */

.home .elementor-element-d14b583 {

    position: relative;

    isolation: isolate;

}

.home .elementor-element-8547849 img {

    animation: wicByGFloat 7s ease-in-out infinite;

    -webkit-mask-image: linear-gradient(180deg, #000 86%, transparent 100%);

    mask-image: linear-gradient(180deg, #000 86%, transparent 100%);

}

@keyframes wicByGFloat {

    0%, 100% { translate: 0 0; }

    50%      { translate: 0 -8px; }

}

/* three small chips that drift around her: mail, book, sparkle */

.home .elementor-element-d14b583::before,

.home .elementor-element-d14b583::after,

.home .elementor-element-8547849::after {

    content: '';

    position: absolute;

    z-index: 2;

    width: 46px;

    height: 46px;

    border-radius: 14px;

    background-color: #ffffff;

    background-repeat: no-repeat;

    background-position: center;

    background-size: 24px;

    box-shadow: 0 12px 22px -12px rgba(60, 40, 140, 0.55);

    border: 1px solid rgba(97, 82, 173, 0.16);

    pointer-events: none;

}

.home .elementor-element-d14b583::before {

    left: 6%;

    top: 20%;

    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152AD' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='14' rx='2'/><path d='M3 7l9 6 9-6'/></svg>");

    animation: wicChipA 6s ease-in-out infinite;

}

.home .elementor-element-d14b583::after {

    right: 8%;

    top: 30%;

    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23bc1888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 5a2 2 0 0 1 2-2h13v16H6a2 2 0 0 0-2 2z'/><path d='M4 19V5'/></svg>");

    animation: wicChipB 7.5s ease-in-out infinite;

}

.home .elementor-element-8547849::after {

    right: 14%;

    top: 4%;

    width: 38px;

    height: 38px;

    border-radius: 50%;

    background-size: 20px;

    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f09433'><path d='M12 2l2.2 6.3L20.5 10l-6.3 1.7L12 18l-2.2-6.3L3.5 10l6.3-1.7z'/></svg>");

    animation: wicChipC 5s ease-in-out infinite;

}

@keyframes wicChipA {

    0%, 100% { translate: 0 0; rotate: -6deg; }

    50%      { translate: 6px -14px; rotate: 4deg; }

}

@keyframes wicChipB {

    0%, 100% { translate: 0 0; rotate: 6deg; }

    50%      { translate: -8px 12px; rotate: -4deg; }

}

@keyframes wicChipC {

    0%, 100% { translate: 0 0; scale: 1; }

    50%      { translate: 5px -8px; scale: 1.15; }

}

@media (prefers-reduced-motion: reduce) {

    .home .elementor-element-8547849 img,

    .home .elementor-element-9c56a7b .elementor-element-f8ed20e img,

    .home .elementor-element-d14b583::before,

    .home .elementor-element-d14b583::after,

    .home .elementor-element-8547849::after {

        animation: none;

    }

}



/* ---------- Tablet / mobile ---------- */





/* =========================================================================

   HOME PAGE - MOBILE POLISH (phones and small tablets)

   ========================================================================= */



/* Connected tabs (tablet and phone): the active tab runs straight into the card below it */





/* =========================================================================

   FOOTER  (site-wide, from footer.php - compact layout)

   footer.php carries its own inline <style>, so these selectors start with `footer.footer`

   to win over it. Text and links are untouched: only spacing, hover effects and layout.

   ========================================================================= */



footer.footer {

    position: relative;

    padding: 30px 0 18px;

}

/* thin gradient line that joins the footer to the section above */

footer.footer::before {

    content: '';

    position: absolute;

    left: 0;

    right: 0;

    top: 0;

    height: 2px;

    background: linear-gradient(90deg, transparent, #6152AD 20%, #bc1888 55%, #f09433 80%, transparent);

    opacity: 0.85;

}



/* ---------- Brand row ---------- */

footer.footer .footer-top-chl {

    gap: 28px;

    justify-content: space-between;

    margin-bottom: 22px;

    padding-bottom: 22px;

}

footer.footer .brand-section {

    gap: 16px;

    flex: 0 0 auto;

}

footer.footer .brand-section::after {

    display: none;

}

footer.footer .brand-img {

    width: 72px;

    height: 72px;

    border: 2px solid rgba(143, 107, 255, 0.55);

    box-shadow: 0 0 0 5px rgba(143, 107, 255, 0.12);

    object-fit: cover;

}

footer.footer .brand-section h3 {

    font-size: 1.5em;

    margin-bottom: 2px !important;

}

footer.footer .footer-top-chl > .d-flex {

    flex: 1 1 auto;

    justify-content: flex-end;

    gap: 24px;

    padding-left: 28px;

    border-left: 1px solid rgba(255, 255, 255, 0.10);

}

footer.footer .footer-top-chl > .d-flex p {

    margin: 0 !important;

    max-width: 44ch;

    font-size: 0.95em;

    line-height: 1.55;

    color: #dfe2f5;

}

footer.footer .right-img-logo {

    width: 170px;

    opacity: 0.32;

}



/* ---------- Link columns: compact ---------- */

footer.footer .footer-row-2 {

    padding-bottom: 14px;

    row-gap: 6px;

}

footer.footer .footer-container-2 h5 {

    margin-bottom: 16px;

    font-size: 1em;

    letter-spacing: 0.01em;

}

footer.footer .footer-row-2 a {

    display: flex;

    align-items: center;

    margin: 0;

    padding: 4px 0;

    font-size: 0.86em;

    line-height: 1.3;

    color: #dadcf0;

    transition: color 0.25s ease, transform 0.25s ease;

}

footer.footer .footer-row-2 a .section-icon {

    flex: 0 0 auto;

    margin-right: 9px;

    font-size: 16px;

    font-weight: 400;

    color: #a99cf5;

    transition: color 0.25s ease, transform 0.25s ease;

}

footer.footer .footer-row-2 a:hover {

    color: #ffffff;

    transform: translateX(4px);

}

footer.footer .footer-row-2 a:hover .section-icon {

    color: #ffffff;

    transform: scale(1.12);

}



/* ---------- Newsletter panel ---------- */

footer.footer .newsletter-box {

    margin-top: 20px;

    padding: 14px 22px;

    gap: 14px 20px;

    border: 1px solid rgba(143, 107, 255, 0.38);

    border-radius: 16px;

    background: linear-gradient(135deg, rgba(123, 92, 255, 0.24), rgba(123, 92, 255, 0.06));

    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);

}

footer.footer .newsletter-image-box {

    gap: 16px;

}

footer.footer .newsletter-image-box img {

    width: 64px;

}

footer.footer .newsletter-image-box p {

    font-size: 1.05em;

    margin-bottom: 2px !important;

}

footer.footer .newsletter-image-box small {

    font-size: 0.85em;

    color: #d5d8f0;

    line-height: 1.4;

}

footer.footer .newsletter-btn {

    padding: 12px 24px;

    border-radius: 11px;

    text-transform: none;

    letter-spacing: 0.01em;

    font-size: 1em;

    font-weight: 600;

    background: #7b5cff;

    box-shadow: 0 10px 18px -12px rgba(123, 92, 255, 0.9);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;

}

footer.footer .newsletter-btn:hover {

    opacity: 1;

    background: #6b4bf0;

    transform: translateY(-3px);

    box-shadow: 0 16px 24px -12px rgba(123, 92, 255, 1);

}



/* ---------- Bottom bar ---------- */

footer.footer .footer-bottom {

    margin-top: 18px;

    padding-top: 14px;

    border-top: 1px solid rgba(255, 255, 255, 0.08);

    gap: 10px 24px;

    font-size: 13px;

}

footer.footer .privacy-policy-box.text-white {

    color: rgba(255, 255, 255, 0.28) !important;     /* the "|" separators */

    gap: 12px;

    align-items: center;

    flex-wrap: wrap;

}

footer.footer .privacy-policy-box span,

footer.footer .privacy-policy-box a {

    color: #d5d8f0;

}

footer.footer .footer-bottom a:hover {

    color: #a99cf5;

}

footer.footer .footer-right {

    gap: 14px;

    color: rgba(255, 255, 255, 0.28);

    flex-wrap: wrap;

}

footer.footer .footer-right .d-flex {

    color: #d5d8f0;

}

footer.footer .footer-right .d-flex a {

    font-size: 13px;

}

footer.footer .social-icons {

    display: flex;

    gap: 8px;

}

footer.footer .social-icons a {

    display: inline-flex !important;

    align-items: center;

    justify-content: center;

    width: 34px;

    height: 34px;

    margin: 0 !important;

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.08) !important;

    font-size: 1.4rem !important;

    transition: transform 0.3s ease, background 0.3s ease;

}

footer.footer .social-icons i {

    margin: 0;

    font-size: 16px;

    color: #cfd3ff;

    transition: color 0.3s ease;

}

footer.footer .social-icons a:hover {

    transform: translateY(-3px);

}

footer.footer .social-icons a:hover i {

    color: #fff;

}

footer.footer .social-icons a[href*="youtube"]:hover   { background: #ff0033 !important; }

footer.footer .social-icons a[href*="tiktok"]:hover    { background: #111 !important; box-shadow: 2px 2px 0 #25f4ee, -2px -2px 0 #fe2c55; }

footer.footer .social-icons a[href*="facebook"]:hover  { background: #1877f2 !important; }

footer.footer .social-icons a[href*="instagram"]:hover { background: linear-gradient(45deg, #f09433, #dc2743 55%, #bc1888) !important; }

footer.footer .social-icons a[href*="linkedin"]:hover  { background: #0a66c2 !important; }

footer.footer .social-icons a[href*="pinterest"]:hover { background: #e60023 !important; }



/* ---------- Tablet ---------- */





/* ---------- Phone ---------- */





/* =========================================================================

   LARGE SCREENS - fluid text for the footer and the "Latest from Chloe" tiles

   Sizes grow with the screen (about 15px @1440 -> 17px @1920 for links) instead of staying fixed.

   The phone rules earlier in the footer section still win on small screens.

   ========================================================================= */



/* Footer */

footer.footer .footer-container-2 h5 {

    font-size: clamp(1.6rem, 1rem + 0.5vw, 2.15rem);

}

footer.footer .footer-row-2 a {

    font-size: clamp(1.45rem, 0.9rem + 0.4vw, 1.85rem);

}

footer.footer .footer-row-2 a .section-icon {

    font-size: clamp(16px, 0.6rem + 0.7vw, 21px);

}

footer.footer .brand-section h3 {

    font-size: clamp(2.4rem, 1.4rem + 0.9vw, 3.4rem);

}

footer.footer .brand-img {

    width: clamp(72px, 5vw, 96px);

    height: clamp(72px, 5vw, 96px);

}

footer.footer .tagline {

    font-size: clamp(1.6rem, 1rem + 0.45vw, 2.2rem);

}

footer.footer .footer-top-chl > .d-flex p {

    font-size: clamp(1.5rem, 0.9rem + 0.5vw, 2rem);

    max-width: 48ch;

}

footer.footer .right-img-logo {

    width: clamp(170px, 12vw, 240px);

}

footer.footer .newsletter-image-box img {

    width: clamp(64px, 4.6vw, 86px);

}

footer.footer .newsletter-image-box p {

    font-size: clamp(1.7rem, 1.1rem + 0.45vw, 2.25rem);

}

footer.footer .newsletter-image-box small {

    font-size: clamp(1.35rem, 0.85rem + 0.35vw, 1.8rem);

}

footer.footer .newsletter-btn {

    font-size: clamp(1.5rem, 0.95rem + 0.4vw, 1.95rem);

    padding: clamp(12px, 0.9vw, 16px) clamp(24px, 1.8vw, 32px);

}

footer.footer .footer-bottom,

footer.footer .footer-bottom a,

footer.footer .footer-right .d-flex a {

    font-size: clamp(1.3rem, 0.8rem + 0.35vw, 1.7rem);

}

footer.footer .social-icons a {

    width: clamp(34px, 2.4vw, 44px);

    height: clamp(34px, 2.4vw, 44px);

}

footer.footer .social-icons i {

    font-size: clamp(16px, 1.1vw, 21px);

}



/* Latest from Chloe post tiles + card buttons */

.home .elementor-element-409d123 .new-homepage-mix-title {

    font-size: clamp(1.5rem, 0.85rem + 0.55vw, 2.1rem);

}

.home .elementor-element-409d123 .new-homepage-mix-excerpt {

    font-size: clamp(1.3rem, 0.75rem + 0.45vw, 1.75rem);

}

.home .elementor-element-409d123 .new-homepage-mix-item[data-cat]::before {

    font-size: clamp(1.15rem, 0.7rem + 0.35vw, 1.5rem);

}

.home .elementor-element-4209220 .elementor-button,

.home .elementor-element-bc79721 .elementor-button {

    font-size: clamp(1.4rem, 0.85rem + 0.4vw, 1.85rem);

}





/* Reforming Academia Podcast - fluid text and sizes on tablet / desktop / large screens

   (phones keep the compact sizes set in the podcast section above) */





/* 1025-1439px: platform buttons a little narrower so "Explore More" never touches them */





/* =========================================================================

   TABLET (768-1024px) fixes for the home page

   ========================================================================= */





/* 1025-1199px: not enough width for three buttons on one row - "Explore More" gets its own row below */





/* =========================================================================

   ABOUT ME PAGE - HERO  (page-id-3490, section #4334a10, content #a7a7084, buttons #903493b)

   Text is untouched. Background: landscape banner on desktop/tablet, portrait banner on phones

   (its top 60% is empty for the text, Chloe is in the bottom 40%).

   ========================================================================= */



/* Sub-line: balanced wrapping (no lonely last word) */

.page-id-3490 .elementor-element-a7a7084 .banner-subheading {

    max-width: 30em;

    text-wrap: balance;

    font-size: clamp(1.7rem, 1.4rem + 0.4vw, 2.3rem) !important;

    line-height: 1.5;

    margin-bottom: 4px;

}



/* Buttons: Instagram gradient for the Instagram one (same as the home page), CV button keeps the black */

.page-id-3490 .elementor-element-470c66c .elementor-button {

    border: 0;

    border-radius: 11px;

    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);

    background-size: 140% 140%;

    background-position: 0% 50%;

    box-shadow: 0 10px 22px -14px rgba(220, 39, 67, 0.8);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background-position 0.5s ease;

}

.page-id-3490 .elementor-element-470c66c .elementor-button:hover {

    transform: translateY(-3px);

    background-position: 100% 50%;

    box-shadow: 0 18px 30px -14px rgba(220, 39, 67, 0.85);

}

.page-id-3490 .elementor-element-e09948d .elementor-button {

    border-radius: 11px;

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;

}

.page-id-3490 .elementor-element-e09948d .elementor-button:hover {

    transform: translateY(-3px);

    box-shadow: 0 16px 26px -14px rgba(0, 0, 0, 0.6);

}



/* Tablet: the landscape banner is cropped by the narrow screen - keep Chloe's face in view and the text clear of her */





/* Phone: section as tall as the portrait banner allows, text at the top, Chloe fully visible below it */





/* About Me hero - "scroll down" cue: a flowing dashed curve from under the buttons to the next section,

   ending in a bouncing arrow + label (built by customjs/custom.js, desktop only) */

.wic-scrollcue {

    position: absolute;

    z-index: 3;

    width: 150px;

    display: none;

    text-decoration: none;

    color: #223973;

}



.wic-scrollcue svg {

    display: block;

    width: 100%;

    height: calc(100% - 46px);

    overflow: visible;

}

.wic-scrollcue .cue-track,

.wic-scrollcue .cue-draw {

    fill: none;

    stroke-linecap: round;

    stroke-dasharray: 9 9;

    vector-effect: non-scaling-stroke;

}

/* grey path, always visible */

.wic-scrollcue .cue-track {

    stroke: rgba(34, 57, 115, 0.22);

    stroke-width: 3;

}

/* coloured path: revealed along the same path as the visitor scrolls (mask set by custom.js) */

.wic-scrollcue .cue-draw {

    stroke: url(#wicCueGrad);

    stroke-width: 3;

}

/* dot at the tip of the coloured line */

.wic-scrollcue .cue-dot {

    position: absolute;

    left: 0;

    top: 0;

    width: 12px;

    height: 12px;

    margin: -6px 0 0 -6px;

    border-radius: 50%;

    background: #fff;

    border: 3px solid #6152AD;

    box-shadow: 0 0 0 5px rgba(97, 82, 173, 0.16);

    opacity: 0;

    transition: opacity 0.25s ease;

}

.wic-scrollcue.is-on .cue-dot {

    opacity: 1;

}

.wic-scrollcue.is-done .cue-dot {

    animation: wicCuePulse 1.6s ease-in-out infinite;

}

@keyframes wicCuePulse {

    0%, 100% { box-shadow: 0 0 0 4px rgba(97, 82, 173, 0.2); }

    50%      { box-shadow: 0 0 0 11px rgba(97, 82, 173, 0); }

}

.wic-scrollcue .cue-end {

    position: absolute;

    left: 0;

    bottom: 0;

    display: flex;

    align-items: center;

    gap: 10px;

    font-size: 1.4rem;

    font-weight: 600;

    letter-spacing: 0.06em;

    text-transform: uppercase;

    white-space: nowrap;

}

.wic-scrollcue .cue-arrow {

    width: 34px;

    height: 34px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #6152AD;

    color: #fff;

    font-size: 1.7rem;

    animation: wicCueBounce 1.5s ease-in-out infinite;

    box-shadow: 0 10px 18px -10px rgba(97, 82, 173, 0.9);

}

@keyframes wicCueBounce {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(7px); }

}

.wic-scrollcue:hover .cue-arrow {

    background: #223973;

}

@media (prefers-reduced-motion: reduce) {

    .wic-scrollcue .cue-arrow,

    .wic-scrollcue.is-done .cue-dot { animation: none; }

}





/* =========================================================================

   ABOUT ME PAGE - COMMUNITY & IMPACT  (page-id-3490, section #f671ed8)

   Row #1783882: left column #c9dd667 (cards #3933dde, #5e42710), photo #a3bf68e (background image),

   right column #f644403 (cards #cb57b59, #c491efd).

   Numbered story steps 01-04 (down the left column, then down the right), joined by a dotted line

   that turns coloured as each step scrolls into view (customjs/custom.js sets .is-active / .link-on).

   ========================================================================= */



.page-id-3490 .elementor-element-1783882 {

    counter-reset: ci-step;

    align-items: stretch;

    gap: 6px;

}

.page-id-3490 .elementor-element-c9dd667,

.page-id-3490 .elementor-element-f644403 {

    gap: 52px;

    justify-content: center;

}



/* Same type scale as the "My Story" boxes on the home page */

.page-id-3490 {

    --box-title-size: clamp(1.6rem, 0.022rem + 1.155vw, 2.3rem);

    --box-title-line: 1.32;

    --box-text-size: clamp(1.5rem, 0.7rem + 0.55vw, 1.9rem);

    --box-text-line: 1.55;

}



/* Step card (compact, same look as the My Story cards) */

.page-id-3490 :is(.elementor-element-3933dde, .elementor-element-5e42710, .elementor-element-cb57b59, .elementor-element-c491efd) {

    position: relative;

    padding: 12px 16px 12px !important;

    background: #faf9ff !important;

    background-image: none !important;

    border: 1px solid rgba(97, 82, 173, 0.14) !important;

    border-radius: 16px !important;

    box-shadow: 0 2px 14px rgba(97, 82, 173, 0.10);

    transition: transform 0.3s ease, box-shadow 0.3s ease;

    overflow: visible;

}

.page-id-3490 :is(.elementor-element-3933dde, .elementor-element-5e42710, .elementor-element-cb57b59, .elementor-element-c491efd):hover {

    transform: translateY(-3px);

    box-shadow: 0 14px 28px rgba(97, 82, 173, 0.20);

}

/* Elementor's own solid background layer on the cards */

.elementor-3490 .elementor-element:is(.elementor-element-3933dde, .elementor-element-5e42710, .elementor-element-cb57b59, .elementor-element-c491efd):not(.elementor-motion-effects-element-type-background) {

    background-color: #faf9ff !important;

}



.page-id-3490 :is(.elementor-element-3933dde, .elementor-element-5e42710, .elementor-element-cb57b59, .elementor-element-c491efd) > .elementor-widget-image-box {

    padding: 0;

}



/* Watermark: the card's icon, very light grey, bottom-right (Elementor's own ::before overlay is reset first) */

.page-id-3490 :is(.elementor-element-3933dde, .elementor-element-5e42710, .elementor-element-cb57b59, .elementor-element-c491efd)::before {

    content: '' !important;

    position: absolute !important;

    inset: auto 10px 8px auto !important;

    width: clamp(78px, 5.6vw, 104px) !important;

    height: clamp(78px, 5.6vw, 104px) !important;

    display: block !important;

    opacity: 0.10 !important;

    filter: grayscale(1);

    mix-blend-mode: normal !important;

    border: 0 !important;

    border-radius: 0 !important;

    background: var(--icon, none) center / contain no-repeat !important;

    pointer-events: none;

    z-index: 0;

}



/* Coloured icon circle: sits before the heading, half of it bleeding out above the card's top-left */

.page-id-3490 .elementor-element-1783882 .elementor-widget-image-box {

    position: static;

}

.page-id-3490 .elementor-element-1783882 .elementor-image-box-wrapper {

    position: static;

    padding-right: 0;

}

.page-id-3490 .elementor-element-1783882 .elementor-image-box-img {

    position: absolute;

    top: calc(var(--ci-icon) / -2);

    left: 18px;

    width: var(--ci-icon) !important;

    height: var(--ci-icon);

    margin: 0 !important;

    z-index: 3;

    pointer-events: none;

    transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3490 .elementor-element-1783882 .elementor-image-box-img img {

    width: 100% !important;

    height: 100% !important;

    max-width: none;

    object-fit: contain;

    padding: 10px;

    border-radius: 50%;

    background: #ffffff;

    border: 2px solid rgba(97, 82, 173, 0.28);

    box-shadow: 0 8px 16px -8px rgba(97, 82, 173, 0.6);

    transition: border-color 0.4s ease, box-shadow 0.4s ease;

}

.page-id-3490 .is-active .elementor-image-box-img img,

.page-id-3490 :is(.elementor-element-3933dde, .elementor-element-5e42710, .elementor-element-cb57b59, .elementor-element-c491efd).is-active .elementor-image-box-img img {

    border-color: #9a86ec;

    box-shadow: 0 0 0 4px rgba(150, 130, 235, 0.16), 0 8px 16px -8px rgba(97, 82, 173, 0.5);

}

.page-id-3490 :is(.elementor-element-3933dde, .elementor-element-5e42710, .elementor-element-cb57b59, .elementor-element-c491efd):hover .elementor-image-box-img {

    transform: scale(1.08) rotate(-6deg);

}

/* the heading starts below the bleeding half of the circle */

.page-id-3490 :is(.elementor-element-3933dde, .elementor-element-5e42710, .elementor-element-cb57b59, .elementor-element-c491efd) {

    --ci-icon: clamp(50px, 3.6vw, 60px);

    padding-top: calc(var(--ci-icon) / 2 + 8px) !important;

}



/* Border drawn around the card (starts at the circle) + line down to the next card (both built by custom.js) */

.ci-border {

    position: absolute;

    inset: 0;

    width: 100%;

    height: 100%;

    overflow: visible;

    pointer-events: none;

    z-index: 2;

}

.ci-border .ci-b-track {

    fill: none;

    stroke: rgba(150, 130, 235, 0.10);

    stroke-width: 1;

}

.ci-border .ci-b-draw {

    fill: none;

    stroke: #9a86ec;

    stroke-width: 1.4;

    stroke-linecap: round;

    stroke-dasharray: 1;

    stroke-dashoffset: 1;

}

.ci-link {

    position: absolute;

    left: 0;

    top: 100%;

    width: 0;

    border-left: 2px dotted rgba(150, 130, 235, 0.30);

    pointer-events: none;

    z-index: 2;

}

.ci-link .ci-link-fill {

    position: absolute;

    left: -2px;

    top: 0;

    width: 0;

    height: 100%;

    border-left: 2px dotted #9a86ec;

    clip-path: inset(0 0 100% 0);

}

.page-id-3490 .elementor-element-1783882 .elementor-image-box-content {

    position: relative;

}

.page-id-3490 .elementor-element-1783882 .elementor-image-box-title {

    color: #3b3190;

    font-size: var(--box-title-size);

    line-height: var(--box-title-line);

    font-weight: 600;

    margin-bottom: 6px;

    text-transform: none;

}

.page-id-3490 .elementor-element-1783882 .elementor-image-box-description {

    color: #3f3f4f;

    font-size: var(--box-text-size);

    line-height: var(--box-text-line);

}



/* Photo: gentle float */

.elementor-3490 .elementor-element.elementor-element-a3bf68e:not(.elementor-motion-effects-element-type-background) {

    background-size: contain;

    background-position: center;

    background-repeat: no-repeat;

}

/* (the centred photo stays still - a floating photo left a moving white gap above the dark section) */



/* Tablet: photo on top (full width), the four steps in two columns below it */





/* Phone: photo once, on top; steps stacked with the connector running down the whole list */





/* Community & Impact: compact spacing so the section fits in one screen on desktop */





/* =========================================================================

   ABOUT ME PAGE - BEYOND THE LAB  (page-id-3490, section #192af20 .core-principles-section)

   Left column #1e94d3e (heading, sub-line, photo), right column #f36bd89 (the four cards).

   Four dark glass cards; the round photo of each story sits half outside the card's left edge.

   Text is untouched. Text sizes follow the same scale as the home page "My Story" boxes.

   ========================================================================= */

.page-id-3490 .core-principles-section {

    --padding-top: 48px;

    --padding-bottom: 36px;

}

.page-id-3490 .core-principles-section .elementor-element-f36bd89 {

    gap: 26px;

    justify-content: center;

}



/* Card */

.page-id-3490 .core-principles-section .elementor-element-f36bd89 > .e-con {

    position: relative;

    padding: 16px 22px 16px 88px !important;

    border-radius: 16px !important;

    border: 1px solid rgba(255, 255, 255, 0.14) !important;

    box-shadow: 0 16px 30px -22px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;

    transition: transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;

}

.page-id-3490 .core-principles-section .elementor-element-f36bd89 > .e-con:not(.elementor-motion-effects-element-type-background) {

    background-color: rgba(255, 255, 255, 0.06) !important;

    background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.02)) !important;

}

.page-id-3490 .core-principles-section .elementor-element-f36bd89 > .e-con:hover {

    transform: translateX(6px);

    border-color: rgba(154, 134, 236, 0.6) !important;

    box-shadow: 0 20px 34px -22px rgba(97, 82, 173, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;

}



/* Round photo: half outside the card, on its left edge */

.page-id-3490 .core-principles-section .real-life-image {

    position: absolute !important;

    left: -34px !important;

    right: auto !important;

    top: 50% !important;

    bottom: auto !important;

    width: 82px !important;

    height: 82px;

    margin: 0 !important;

    transform: translateY(-50%) !important;

    z-index: 3;

    transition: rotate 0.45s cubic-bezier(0.34, 1.56, 0.64, 1), scale 0.45s ease;

}

.page-id-3490 .core-principles-section .real-life-image img {

    width: 100% !important;

    height: 100% !important;

    object-fit: cover;

    border-radius: 50%;

    border: 3px solid #9a86ec;

    box-shadow: 0 0 0 5px rgba(154, 134, 236, 0.18), 0 10px 18px -8px rgba(0, 0, 0, 0.8);

}

.page-id-3490 .core-principles-section .elementor-element-f36bd89 > .e-con:hover .real-life-image {

    rotate: -6deg;

    scale: 1.08;

}



/* Text: same scale as the My Story boxes, light on dark */

.page-id-3490 .core-principles-section .elementor-image-box-title {

    color: #c9bcff !important;

    font-size: var(--box-title-size);

    line-height: var(--box-title-line);

    font-weight: 600;

    margin-bottom: 6px;

}

.page-id-3490 .core-principles-section .elementor-image-box-description {

    color: #dfe1f2 !important;

    font-size: var(--box-text-size);

    line-height: var(--box-text-line);

}



/* Tablet + phone: the photo bleeds out of the card's top-left instead of its left edge */





/* Beyond the Lab: the glow circle and the photo no longer stretch the row - the four cards decide the height */





/* Beyond the Lab - overlap / decoration fixes */

/* the two big glow circles sit BEHIND all content (they were painting a grey layer over the heading) */

.page-id-3490 .core-principles-section {

    isolation: isolate;

}

.page-id-3490 .core-principles-section .elementor-element-25893fa,

.page-id-3490 .core-principles-section .elementor-element-7ec5a37 {

    z-index: -1 !important;

    pointer-events: none;

}

/* the bottom-right decoration belongs at the bottom of the last card (it kept its position from the old, taller layout) */



/* the photo is cropped at its own left edge: fade that edge softly so it doesn't look cut off */

.page-id-3490 .core-principles-section .elementor-element-6b2dffc img {

    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 26%);

    mask-image: linear-gradient(90deg, transparent 0%, #000 26%);

}



/* handwritten note: keep only the text; the curved arrow is redrawn as an SVG that draws itself on scroll (custom.js) */

.page-id-3490 .core-principles-section .elementor-element-e332add img {

    clip-path: polygon(0 0, 100% 0, 100% 57.4%, 54.3% 57.4%, 54.3% 100%, 0 100%);

}

.page-id-3490 .core-principles-section .elementor-element-e332add .wic-arrow {

    position: absolute;

    inset: 0;

    width: 100%;

    height: 100%;

    overflow: visible;

    pointer-events: none;

}

.wic-arrow .arrow-line {

    fill: none;

    stroke: #a79fbd;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-dasharray: 1;

    stroke-dashoffset: 1;

}

.wic-arrow .arrow-head {

    fill: none;

    stroke: #a79fbd;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;

    opacity: 0;

    transition: opacity 0.3s ease;

}



/* Community & Impact (desktop): the centred photo sits right on the bottom edge of the section (touching the dark

   section below); the cards move up a little so their bottoms stay clear of that edge */





/* =========================================================================

   ABOUT ME PAGE - AS FEATURED IN  (section #c0f8365, carousel #a2ac0e4 .featured-slider)

   Same feel as the home page "Featured Across" strip: a continuous, slow drift with faded ends, even logo

   sizes, pause + lift on hover. customjs/custom.js turns the Elementor carousel into the strip (clones the

   logos once and stops the carousel); without JavaScript the normal carousel keeps working.

   Background, heading and button are untouched.

   ========================================================================= */

.page-id-3490 .featured-slider.is-marquee .elementor-swiper-button,

.page-id-3490 .featured-slider.is-marquee .swiper-pagination {

    display: none !important;

}

.page-id-3490 .featured-slider.is-marquee .swiper {

    overflow: hidden;

    padding: 14px 0;

    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 9%, #000 91%, transparent 100%);

    mask-image: linear-gradient(90deg, transparent 0, #000 9%, #000 91%, transparent 100%);

}

.page-id-3490 .featured-slider.is-marquee .swiper-wrapper {

    display: flex !important;

    align-items: center;

    width: max-content !important;

    gap: clamp(46px, 5vw, 92px);

    animation: wicAboutMarquee var(--marquee-s, 42s) linear infinite;

}

.page-id-3490 .featured-slider.is-marquee .swiper:hover .swiper-wrapper {

    animation-play-state: paused;

}

@keyframes wicAboutMarquee {

    from { transform: translate3d(0, 0, 0); }

    to   { transform: translate3d(calc(-50% - (clamp(46px, 5vw, 92px) / 2)), 0, 0); }

}

.page-id-3490 .featured-slider.is-marquee .swiper-slide {

    width: auto !important;

    flex: 0 0 auto;

    margin: 0 !important;

    transition: transform 0.35s ease;

}

.page-id-3490 .featured-slider.is-marquee .swiper-slide:hover {

    transform: translateY(-5px);

}

.page-id-3490 .featured-slider.is-marquee .swiper-slide-inner {

    margin: 0;

    display: flex;

    align-items: center;

    justify-content: center;

}

.page-id-3490 .featured-slider.is-marquee .swiper-slide-image {

    width: auto !important;

    height: clamp(44px, 3.9vw, 68px);

    max-width: clamp(130px, 12vw, 210px);

    object-fit: contain;

    opacity: 0.78;

    filter: grayscale(0.35);

    transition: opacity 0.35s ease, filter 0.35s ease, transform 0.35s ease;

}

.page-id-3490 .featured-slider.is-marquee .swiper-slide:hover .swiper-slide-image {

    opacity: 1;

    filter: none;

    transform: scale(1.06);

}



@media (prefers-reduced-motion: reduce) {

    .page-id-3490 .featured-slider.is-marquee .swiper-wrapper {

        animation: none;

    }

    .page-id-3490 .featured-slider.is-marquee .swiper {

        overflow-x: auto;

    }

}



/* Beyond the Lab: keep the decorative glow circles inside the dark section (they spilled onto the next section on wide screens) */

.page-id-3490 .core-principles-section {

    overflow: hidden;

}



/* As Featured in: a wider strip (full screen width), clearer logos, more of them visible at once */

.elementor-3490 .elementor-element.elementor-element-60abdc1 {

    --width: 100%;

    width: 100%;

}

.page-id-3490 .elementor-element.featured-slider.is-marquee {

    width: 100vw !important;

    max-width: 100vw !important;

    margin-left: calc(50% - 50vw) !important;

    margin-right: 0 !important;

}

.page-id-3490 .featured-slider.is-marquee .elementor-image-carousel-wrapper,

.page-id-3490 .featured-slider.is-marquee .elementor-widget-container,

.page-id-3490 .featured-slider.is-marquee .swiper {

    width: 100vw !important;

    max-width: 100vw !important;

    margin-left: 0 !important;

    margin-right: 0 !important;

    padding-left: 0 !important;

    padding-right: 0 !important;

    box-sizing: border-box;

}

.page-id-3490 .featured-slider.is-marquee .swiper {

    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 5%, #000 95%, transparent 100%);

    mask-image: linear-gradient(90deg, transparent 0, #000 5%, #000 95%, transparent 100%);

}

.page-id-3490 .featured-slider.is-marquee .swiper-wrapper {

    gap: clamp(34px, 3.6vw, 66px);

}

@keyframes wicAboutMarquee {

    from { transform: translate3d(0, 0, 0); }

    to   { transform: translate3d(calc(-50% - (clamp(34px, 3.6vw, 66px) / 2)), 0, 0); }

}

.page-id-3490 .featured-slider.is-marquee .swiper-slide-image {

    height: clamp(34px, 2.9vw, 52px);

    max-width: clamp(100px, 9vw, 160px);

    opacity: 1;

    filter: none;

}





/* As Featured in: size the full-width strip to its own section, NOT to 100vw (100vw includes the scrollbar and

   caused a horizontal scrollbar on the page). Falls back to 100vw where container units are not supported. */

.page-id-3490 .elementor-element-c0f8365 {

    overflow-x: clip;

}

@supports (width: 1cqw) {

    .page-id-3490 .elementor-element-c0f8365 {

        container-type: inline-size;

    }

    .page-id-3490 .elementor-element.featured-slider.is-marquee {

        width: 100cqw !important;

        max-width: 100cqw !important;

        margin-left: calc(50% - 50cqw) !important;

    }

    .page-id-3490 .featured-slider.is-marquee .elementor-image-carousel-wrapper,

    .page-id-3490 .featured-slider.is-marquee .elementor-widget-container,

    .page-id-3490 .featured-slider.is-marquee .swiper {

        width: 100cqw !important;

        max-width: 100cqw !important;

    }

}





/* =========================================================================

   ABOUT ME PAGE - BEYOND WORK  (page-id-3490, section #dbeeeba, grid #da3960e = 4 photo cards)

   Photo collage: card 1 is a big hero photo with its text laid over the bottom; cards 2-4 are compact

   photo + text rows beside it. Text, photos and section background untouched.

   Text sizes follow the same scale as the home page "My Story" boxes.

   ========================================================================= */

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e {

    display: grid;

    grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);

    grid-template-rows: repeat(3, minmax(0, 1fr));

    gap: 14px;

    height: clamp(430px, 34vw, 520px);

}

/* every card: rounded, clipped, soft shadow, hover lift */

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con {

    position: relative;

    display: flex;

    overflow: hidden;

    padding: 0 !important;

    margin: 0;

    border-radius: 16px !important;

    border: 1px solid rgba(97, 82, 173, 0.10);

    background: #ffffff;

    box-shadow: 0 8px 22px -14px rgba(60, 40, 140, 0.45) !important;

    transition: transform 0.35s ease, box-shadow 0.35s ease;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:hover {

    box-shadow: 0 18px 32px -14px rgba(60, 40, 140, 0.55) !important;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con > .elementor-widget-image {

    overflow: hidden;

    margin: 0;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con > .elementor-widget-image img {

    width: 100%;

    height: 100%;

    max-width: none;

    object-fit: cover;

    display: block;

    transition: transform 0.7s ease;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:hover > .elementor-widget-image img {

    transform: scale(1.07);

}



/* ---- rows (cards 2-4): photo left, text right ---- */

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:not(:first-child) {

    flex-direction: row;

    align-items: stretch;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:not(:first-child) > .elementor-widget-image {

    flex: 0 0 36%;

    width: 36%;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:not(:first-child) > .social-box {

    flex: 1 1 auto;

    min-width: 0;

    margin: 0 !important;

    padding: 12px 16px;

    display: flex;

    align-items: center;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:not(:first-child) .elementor-image-box-img {

    position: absolute;

    left: 10px;

    top: 10px;

    width: 40px !important;

    margin: 0 !important;

    z-index: 3;

}



/* ---- hero (card 1): photo fills the card, text on a dark fade at the bottom ---- */

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:first-child {

    grid-row: 1 / span 3;

    flex-direction: column;

    background: #2b2470;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:first-child > .elementor-widget-image {

    position: absolute;

    inset: 0;

    width: 100%;

    height: 100%;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:first-child > .social-box {

    position: absolute;

    left: 0;

    right: 0;

    bottom: 0;

    margin: 0 !important;

    padding: 70px 22px 22px;

    z-index: 2;

    background: linear-gradient(180deg, rgba(20, 12, 50, 0) 0%, rgba(20, 12, 50, 0.72) 45%, rgba(20, 12, 50, 0.92) 100%);

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:first-child .elementor-image-box-img {

    width: 48px !important;

    margin: 0 0 10px !important;

}



/* icon badge (all cards): white ring, tilts on hover */

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e .elementor-image-box-img {

    transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e .elementor-image-box-img img {

    width: 100%;

    height: auto;

    border-radius: 50%;

    box-shadow: 0 0 0 3px #ffffff, 0 6px 14px -6px rgba(20, 12, 50, 0.6);

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:hover .elementor-image-box-img {

    transform: rotate(-8deg) scale(1.1);

}



/* text */

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e .social-box .elementor-image-box-title {

    font-size: var(--box-title-size) !important;

    line-height: var(--box-title-line);

    font-weight: 600;

    color: #3b3190 !important;

    margin: 0 0 6px;

    padding: 0;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e .social-box .elementor-image-box-description {

    font-size: var(--box-text-size);

    line-height: var(--box-text-line);

    color: #3f3f4f;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:first-child .social-box .elementor-image-box-title {

    color: #ffffff !important;

    font-size: clamp(1.9rem, 0.6rem + 1.2vw, 2.7rem) !important;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:first-child .social-box .elementor-image-box-description {

    color: rgba(255, 255, 255, 0.92);

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:not(:first-child) .social-box .elementor-image-box-content {

    width: 100%;

}



/* ---- tablet + phone: hero on top, the three rows stacked below ---- */





/* Beyond Work fixes: icon anchored to the card (not to the text box), no title underline, rows never wrap on phones */

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e .social-box,

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e .social-box .elementor-image-box-wrapper {

    position: static;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e .social-box .elementor-image-box-title::before,

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e .social-box .elementor-image-box-title::after {

    display: none !important;

    content: none !important;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:not(:first-child) {

    flex-wrap: nowrap !important;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:first-child .social-box {

    position: absolute;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:not(:first-child) > .elementor-widget-image img {

    height: 100%;

    min-height: 100%;

}



/* Beyond Work: icons become light watermarks (bottom-right of each card); tighter section so it fits one screen */

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e .elementor-image-box-img,

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:not(:first-child) .elementor-image-box-img,

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:first-child .elementor-image-box-img {

    position: absolute !important;

    left: auto !important;

    top: auto !important;

    right: 12px !important;

    bottom: 8px !important;

    width: clamp(64px, 5.2vw, 92px) !important;

    margin: 0 !important;

    opacity: 0.13;

    filter: grayscale(1);

    z-index: 1;

    pointer-events: none;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e .elementor-image-box-img img {

    border-radius: 0;

    box-shadow: none !important;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:first-child .elementor-image-box-img {

    opacity: 0.22;

    filter: grayscale(1) brightness(2.4);

    right: 18px !important;

    bottom: 16px !important;

    width: clamp(80px, 6.4vw, 112px) !important;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:hover .elementor-image-box-img {

    transform: scale(1.1) rotate(-6deg);

    opacity: 0.2;

}

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:first-child:hover .elementor-image-box-img {

    opacity: 0.32;

}

/* text keeps clear of the watermark on the rows */

.page-id-3490 .elementor-element-8172a8a .elementor-element-da3960e > .e-con:not(:first-child) > .social-box {

    padding-right: clamp(56px, 5vw, 84px);

}



/* compact section (desktop) */





/* Beyond Work (desktop): rows tall enough for their text; card text a little smaller in the rows only */





/* Beyond Work: a touch tighter on shorter laptop screens (e.g. 1366x768) so it still fits one screen */





/* =========================================================================

   ABOUT ME PAGE - BEFORE YOU GO  (page-id-3490, section #398df70: photo #968e0ed + contact form #e009f65)

   Text, form fields and photo untouched: spacing, sizes, eyebrow, photo area and button only.

   ========================================================================= */

/* eyebrow on one line */

.page-id-3490 .elementor-element-c4adec4,

.page-id-3490 .elementor-element-c4adec4 .elementor-heading-title {

    white-space: nowrap;

    width: auto;

    max-width: none;

}

.page-id-3490 .elementor-element-4f687a4 {

    gap: 12px;

}



/* photo + form share one row; photo is bottom-aligned and never collapses */

.page-id-3490 .elementor-element-5ede399 {

    align-items: flex-end;

    gap: 28px;

}

.elementor-3490 .elementor-element.elementor-element-968e0ed {

    align-self: stretch;

    min-height: 420px;

    background-size: contain !important;

    background-position: center bottom !important;

    background-repeat: no-repeat !important;

}



/* form card: compact, soft frame, same corner radius as the rest of the site */

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form {

    padding: 24px 26px;

    border-radius: 18px;

    border: 1px solid rgba(97, 82, 173, 0.14);

    box-shadow: 0 16px 34px -24px rgba(60, 40, 140, 0.5);

}

.page-id-3490 .elementor-element-e009f65 .collaborate-cf7-row,

.page-id-3490 .elementor-element-e009f65 .collaborate-cf7-full {

    margin-bottom: 12px;

}

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form label {

    font-size: clamp(1.4rem, 0.9rem + 0.3vw, 1.6rem);

    margin-bottom: 6px;

    font-weight: 600;

    color: #2b2470;

}

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form input[type="text"],

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form input[type="email"],

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form select {

    height: 46px;

    padding: 10px 14px;

    border-radius: 11px;

    font-size: 1.5rem;

}

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form textarea {

    height: 84px;

    padding: 10px 14px;

    border-radius: 11px;

    font-size: 1.5rem;

}

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form input:focus,

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form textarea:focus,

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form select:focus {

    border-color: #6152AD;

    box-shadow: 0 0 0 3px rgba(97, 82, 173, 0.14);

}

.page-id-3490 .elementor-element-e009f65 .collaborate-cf7-select-wrap::after {

    top: 62%;

}

/* button: site button shape (11px), hover lift */

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form input[type="submit"],

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form button[type="submit"] {

    height: 50px;

    min-width: 0;

    padding: 0 30px;

    border-radius: 11px;

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;

}

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form input[type="submit"]:hover,

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form button[type="submit"]:hover {

    transform: translateY(-3px);

    box-shadow: 0 14px 22px -12px rgba(97, 82, 173, 0.85);

}

.page-id-3490 .elementor-element-e009f65 .collaborate-cf7-note,

.page-id-3490 .elementor-element-e009f65 .collaborate-contact-form .wpcf7-form > p:last-of-type {

    margin-top: 10px;

    font-size: 1.3rem;

}



/* desktop: photo on the left at a fixed size beside a shorter form, section around one screen */



/* tablet: the form gets more room so the name / email fields are readable */



/* phone: photo above the form at a proper size */





/* Beyond Work (desktop): narrower hero so the three rows are wider - the 4th row's title fits on one line and its text

   has room above and below */





/* Before You Go: eyebrow underline sits below the eyebrow with clear space above the heading;

   the info strip below no longer covers the form's last line */

.page-id-3490 .elementor-element-4f687a4 {

    gap: 22px;

}

.page-id-3490 .elementor-element-e009f65 {

    margin-bottom: 56px;

}





/* =========================================================================

   ABOUT ME PAGE - INFO BAR under "Before You Go"  (section #cd87dc4, bar #eeacc62, grid #bee79b3, 3 .button-imageBox items)

   One connected white bar: icon beside its text, thin dividers between the three items. Text untouched.

   The bar still overlaps the form section above by ~50px, as designed.

   ========================================================================= */

.page-id-3490 .elementor-element-eeacc62 {

    padding: 0 !important;

    background: #ffffff !important;

    background-image: none !important;

    border: 1px solid rgba(97, 82, 173, 0.18);

    border-radius: 16px !important;

    box-shadow: 0 14px 30px -20px rgba(60, 40, 140, 0.5);

    overflow: hidden;

}

.elementor-3490 .elementor-element:is(.elementor-element-eeacc62):not(.elementor-motion-effects-element-type-background) {

    background-color: #ffffff !important;

}

.page-id-3490 .elementor-element-bee79b3 {

    --width: 100%;

    width: 100%;

    gap: 0;

    padding: 0;

    align-items: stretch;

}

.page-id-3490 .elementor-element-bee79b3 > .button-imageBox {

    margin: 0;

    padding: 14px 24px;

    display: flex;

    align-items: center;

    transition: background 0.3s ease;

}

.page-id-3490 .elementor-element-bee79b3 > .button-imageBox + .button-imageBox {

    border-left: 1px solid rgba(97, 82, 173, 0.16);

}

.page-id-3490 .elementor-element-bee79b3 > .button-imageBox:hover {

    background: #faf8ff;

}

.page-id-3490 .elementor-element-bee79b3 .elementor-image-box-wrapper {

    display: flex;

    flex-direction: row;

    align-items: center;

    gap: 14px;

    text-align: left;

    width: 100%;

}

.page-id-3490 .elementor-element-bee79b3 .elementor-image-box-img {

    flex: 0 0 auto;

    width: 46px !important;

    margin: 0 !important;

    transform: none;

    transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3490 .elementor-element-bee79b3 .elementor-image-box-img img {

    width: 46px;

    height: 46px;

    border-radius: 50%;

}

.page-id-3490 .elementor-element-bee79b3 > .button-imageBox:hover .elementor-image-box-img {

    transform: rotate(-8deg) scale(1.1);

}

.page-id-3490 .elementor-element-bee79b3 .elementor-image-box-content {

    flex: 1 1 auto;

    min-width: 0;

    text-align: left;

}

.page-id-3490 .elementor-element-bee79b3 .elementor-image-box-description {

    margin: 0 !important;

    font-size: var(--box-text-size);

    line-height: 1.4;

    color: #3f3f4f;

    text-align: left;

}



/* tablet: three items still in one bar, a little tighter */



/* phone: the three items stack inside the same bar, divided by horizontal lines */



.page-id-3490 .elementor-element-eeacc62::before,

.page-id-3490 .elementor-element-eeacc62::after,

.page-id-3490 .elementor-element-bee79b3::before,

.page-id-3490 .elementor-element-bee79b3::after {

    content: none !important;

    display: none !important;

}

.page-id-3490 .elementor-element-cd87dc4 {

    padding-bottom: 28px;

}





/* =========================================================================

   CHLOE THE SCIENTIST PAGE - HERO  (page-id-3492, section #63217f4, content #f1a870f, button #ada2a6a)

   Text untouched. Same treatment as the About Me hero: balanced sub-line, Instagram-coloured button,

   "scroll down" cue (custom.js), and a smoother white fade behind the text.

   ========================================================================= */

.page-id-3492 .elementor-element-f1a870f .banner-subheading {

    max-width: 30em;

    text-wrap: balance;

    font-size: clamp(1.7rem, 1.4rem + 0.4vw, 2.3rem) !important;

    line-height: 1.5;

    margin-bottom: 4px;

}

.page-id-3492 .elementor-element-ada2a6a .elementor-button {

    border: 0;

    border-radius: 11px;

    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);

    background-size: 140% 140%;

    background-position: 0% 50%;

    box-shadow: 0 10px 22px -14px rgba(220, 39, 67, 0.8);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background-position 0.5s ease;

}

.page-id-3492 .elementor-element-ada2a6a .elementor-button:hover {

    transform: translateY(-3px);

    background-position: 100% 50%;

    box-shadow: 0 18px 30px -14px rgba(220, 39, 67, 0.85);

}

/* soft white fade on the left so the heading and text stay readable over the photo (desktop) */



/* tablet: keep the girl in view, text column stays in the left half */





/* =========================================================================

   CHLOE THE SCIENTIST PAGE - TIMELINE BAR under "Why I Created"  (bar #e5fc3a0, grid #46430db, 3 .button-imageBox items)

   One connected timeline: a dashed track runs through the three icons and is filled in on scroll (custom.js adds .is-on).

   The old dotted-line image (#68f2e1c) is hidden. Text untouched.

   ========================================================================= */

.page-id-3492 .elementor-element-68f2e1c { display: none !important; }

.page-id-3492 .elementor-element-e5fc3a0 {

    border: 1px solid rgba(97, 82, 173, 0.14);

    border-radius: 16px !important;

}

.page-id-3492 .elementor-element-46430db {

    position: relative;

    width: 100% !important;

    max-width: none !important;

    margin: 0 !important;

    padding: 28px 40px 26px;

    column-gap: 28px;

}

/* keep the decorative watermark out of the layout so the three items are centred in the bar */

.page-id-3492 .elementor-element-e5fc3a0 > img.e-image-base {

    position: absolute;

    left: 6px;

    bottom: 0;

    width: auto;

    max-height: 100%;

    max-width: 92px;

    opacity: 0.5;

    pointer-events: none;

}

/* connector from each icon centre to the next one: grey dashes (::after) + purple fill (::before, grows when .is-linked) */

.page-id-3492 .elementor-element-46430db > .button-imageBox:nth-child(-n+2)::before,

.page-id-3492 .elementor-element-46430db > .button-imageBox:nth-child(-n+2)::after {

    content: '';

    position: absolute;

    top: 30px;

    left: 50%;

    width: calc(100% + 28px);

    height: 2px;

    border-radius: 2px;

    pointer-events: none;

    z-index: -1;

}

.page-id-3492 .elementor-element-46430db > .button-imageBox:nth-child(-n+2)::after {

    background: repeating-linear-gradient(90deg, rgba(97, 82, 173, 0.28) 0 6px, transparent 6px 12px);

}

.page-id-3492 .elementor-element-46430db > .button-imageBox:nth-child(-n+2)::before {

    background: linear-gradient(90deg, #8a78e6, #6152AD);

    transform-origin: left center;

    transform: scaleX(0);

    transition: transform 0.9s cubic-bezier(0.4, 0, 0.2, 1);

    z-index: 0;

}

.page-id-3492 .elementor-element-46430db > .button-imageBox.is-linked:nth-child(-n+2)::before {

    transform: scaleX(1);

}

.page-id-3492 .elementor-element-46430db > .button-imageBox {

    position: relative;

    isolation: isolate;

    transition: transform 0.3s ease;

}

.page-id-3492 .elementor-element-46430db .elementor-image-box-title {

    transition: background 0.5s ease;

}

.page-id-3492 .elementor-element-46430db > .button-imageBox:not(.is-on) .elementor-image-box-title {

    background: #a99fdc;

}

.page-id-3492 .elementor-element-46430db .elementor-image-box-img {

    margin-bottom: 12px !important;

}

.page-id-3492 .elementor-element-46430db .elementor-image-box-img img {

    width: 62px;

    height: 62px;

    border-radius: 50%;

    box-shadow: 0 0 0 6px #F3F0F7;

    transition: box-shadow 0.5s ease;

}

.page-id-3492 .elementor-element-46430db > .button-imageBox.is-on .elementor-image-box-img img {

    box-shadow: 0 0 0 6px #F3F0F7, 0 0 0 8px rgba(97, 82, 173, 0.45);

}

.page-id-3492 .elementor-element-46430db .elementor-image-box-title {

    margin-bottom: 8px;

}

.page-id-3492 .elementor-element-46430db .elementor-image-box-description {

    font-size: var(--box-text-size);

    line-height: 1.45;

    margin: 0;

    max-width: 30ch;

    margin-inline: auto;

}





/* CHLOE THE SCIENTIST - "Why I Created" top row: text | photo | goals card on a 3-column grid.

   Side columns are equal; the card is centred against the text column, the photo stands on the bar. */





/* goals card: breathing room between icon and text, comfortable padding */

.elementor-3492 .elementor-element-3152506 { padding: 14px 16px; gap: 12px; }

.elementor-3492 .elementor-element-3152506 .elementor-image-box-wrapper { display: flex; align-items: center; gap: 14px; }

.elementor-3492 .elementor-element-3152506 .elementor-image-box-img { flex: 0 0 auto; margin: 0 !important; }

.elementor-3492 .elementor-element-3152506 .elementor-image-box-content { flex: 1 1 auto; min-width: 0; }

.elementor-3492 .elementor-element-3152506 .elementor-image-box-description { margin: 0; font-size: var(--box-text-size); line-height: 1.45; }





/* =========================================================================

   CHLOE THE SCIENTIST PAGE - EXPLORE / THE FOUR PILLARS  (page-id-3492, section #b9a2190 .core-principles-section)

   Left column #e4d9f66 (heading, sub-line, photo), right column #34fc3d4 (four cards).

   Same treatment as About "Beyond the Lab": dark glass cards, round photo half outside the left edge,

   arrow links become real outline buttons. Text untouched. Compact so the cards fit one screen.

   ========================================================================= */

.page-id-3492 .core-principles-section {

    --padding-top: 56px;

    --padding-bottom: 40px;

    isolation: isolate;

}

.page-id-3492 .core-principles-section .elementor-element-4d36a21,

.page-id-3492 .core-principles-section .elementor-element-d0b3aec {

    z-index: -1 !important;

    pointer-events: none;

}

.page-id-3492 .core-principles-section .elementor-element-34fc3d4 {

    gap: 20px;

    justify-content: center;

}



/* Card */

.page-id-3492 .core-principles-section .elementor-element-34fc3d4 > .e-con {

    position: relative;

    padding: 14px 20px 12px 90px !important;

    border-radius: 16px !important;

    border: 1px solid rgba(255, 255, 255, 0.14) !important;

    box-shadow: 0 16px 30px -22px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;

    gap: 6px;

    transition: transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;

}

.page-id-3492 .core-principles-section .elementor-element-34fc3d4 > .e-con:not(.elementor-motion-effects-element-type-background) {

    background-color: rgba(255, 255, 255, 0.06) !important;

    background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.02)) !important;

}

.page-id-3492 .core-principles-section .elementor-element-34fc3d4 > .e-con:hover {

    transform: translateX(6px);

    border-color: rgba(154, 134, 236, 0.6) !important;

    box-shadow: 0 20px 34px -22px rgba(97, 82, 173, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;

}



/* Round photo: half outside the card on its left edge */

.page-id-3492 .core-principles-section .real-life-image {

    position: absolute !important;

    left: -34px !important;

    right: auto !important;

    top: 50% !important;

    bottom: auto !important;

    width: 88px !important;

    height: 88px;

    margin: 0 !important;

    transform: translateY(-50%) !important;

    z-index: 3;

    transition: rotate 0.45s cubic-bezier(0.34, 1.56, 0.64, 1), scale 0.45s ease;

}

.page-id-3492 .core-principles-section .real-life-image img {

    width: 100% !important;

    height: 100% !important;

    object-fit: cover;

    border-radius: 50%;

    border: 3px solid #9a86ec;

    box-shadow: 0 0 0 5px rgba(154, 134, 236, 0.18), 0 10px 18px -8px rgba(0, 0, 0, 0.8);

}

.page-id-3492 .core-principles-section .elementor-element-34fc3d4 > .e-con:hover .real-life-image {

    rotate: -6deg;

    scale: 1.08;

}



/* Text: same scale as the My Story boxes, light on dark */

.page-id-3492 .core-principles-section .elementor-image-box-title {

    color: #c9bcff !important;

    font-size: var(--box-title-size);

    line-height: var(--box-title-line);

    font-weight: 600;

    margin-bottom: 4px;

}

.page-id-3492 .core-principles-section .elementor-image-box-description {

    color: #dfe1f2 !important;

    font-size: var(--box-text-size);

    line-height: var(--box-text-line);

}



/* Arrow link -> outline button (same 11px corners as the other buttons), bottom right of the card */

.page-id-3492 .core-principles-section .elementor-widget-button {

    align-self: flex-end;

    width: auto;

    max-width: 100%;

}

.page-id-3492 .core-principles-section .elementor-widget-button .elementor-button {

    padding: 5px 14px;

    font-weight: 500;

    border: 1.5px solid #9a86ec;

    border-radius: 11px;

    background: transparent !important;

    color: #d9cfff !important;

    font-size: calc(var(--box-text-size) * 0.94);

    line-height: 1.3;

    box-shadow: none;

    transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3492 .core-principles-section .elementor-widget-button .elementor-button:hover {

    background: #6152AD !important;

    border-color: #6152AD;

    color: #fff !important;

    transform: translateY(-2px);

    box-shadow: 0 12px 22px -12px rgba(97, 82, 173, 0.95);

}



/* Tablet + phone: the photo bleeds out of the card's top-left instead of its left edge */



.page-id-3492 .core-principles-section .elementor-widget-button { margin-top: 4px; }





/* Explore: handwritten note keeps only the text; the curved arrow is redrawn as an SVG that draws itself on scroll (custom.js) */

.page-id-3492 .core-principles-section .elementor-element-c23de1a img {

    clip-path: polygon(0 0, 100% 0, 100% 57.4%, 54.3% 57.4%, 54.3% 100%, 0 100%);

}

.page-id-3492 .core-principles-section .elementor-element-c23de1a .wic-arrow {

    position: absolute;

    inset: 0;

    width: 100%;

    height: 100%;

    overflow: visible;

    pointer-events: none;

}



/* Explore: more compact - wider card column (text wraps to fewer lines), smaller photos, tighter padding */

.page-id-3492 .core-principles-section {

    --padding-top: 40px;

    --padding-bottom: 28px;

}





/* Explore - single fold (desktop): title + button share one row, text below, so each card is ~140px tall.

   The section is one screen high; the photo stands on its bottom edge. */





/* Explore - wider left column (sub-line in fewer lines), text-link CTAs, bigger photo that bleeds into the next section */



/* CTA: plain text link with an arrow, no border */

.page-id-3492 .core-principles-section .elementor-widget-button .elementor-button {

    padding: 2px 0;

    border: 0;

    border-radius: 0;

    background: transparent !important;

    color: #b9a8ff !important;

    font-weight: 500;

    box-shadow: none;

    text-decoration: underline;

    text-decoration-color: transparent;

    text-underline-offset: 5px;

    text-decoration-thickness: 1.5px;

    transition: color 0.25s ease, text-decoration-color 0.25s ease, transform 0.25s ease;

}

.page-id-3492 .core-principles-section .elementor-widget-button .elementor-button:hover {

    background: transparent !important;

    color: #ffffff !important;

    text-decoration-color: #9a86ec;

    transform: translateX(4px);

    box-shadow: none;

}





/* =========================================================================

   CHLOE THE SCIENTIST PAGE - COMMUNITY & IMPACT  (page-id-3492, section #578d9cf)

   Photo column #2d77109 (left), text column #a44ea73 with the 2x2 grid #e8b66c9 of cards

   #f8ac77e #d23573e (row 1) and #5fb5537 #8959708 (row 2).

   Same treatment as the About Me section: equal compact cards, coloured icon circle half outside the card's top-left,

   grey watermark icon bottom-right, thin purple border drawn on scroll (custom.js) with a dotted line down to the next card.

   Text untouched.

   ========================================================================= */

.page-id-3492 {

    --box-title-size: clamp(1.6rem, 0.022rem + 1.155vw, 2.3rem);

    --box-title-line: 1.32;

    --box-text-size: clamp(1.5rem, 0.7rem + 0.55vw, 1.9rem);

    --box-text-line: 1.55;

}

.page-id-3492 :is(.elementor-element-f8ac77e, .elementor-element-d23573e, .elementor-element-5fb5537, .elementor-element-8959708) {

    --ci-icon: clamp(50px, 3.6vw, 60px);

    position: relative;

    padding: calc(var(--ci-icon) / 2 + 8px) 0 12px !important;

    background: #faf9ff !important;

    background-image: none !important;

    border: 1px solid rgba(97, 82, 173, 0.14) !important;

    border-radius: 16px !important;

    box-shadow: 0 2px 14px rgba(97, 82, 173, 0.10) !important;

    transition: transform 0.3s ease, box-shadow 0.3s ease;

    overflow: visible;

}

.page-id-3492 :is(.elementor-element-f8ac77e, .elementor-element-d23573e, .elementor-element-5fb5537, .elementor-element-8959708):hover {

    transform: translateY(-3px);

    box-shadow: 0 14px 28px rgba(97, 82, 173, 0.20) !important;

}

.elementor-3492 .elementor-element:is(.elementor-element-f8ac77e, .elementor-element-d23573e, .elementor-element-5fb5537, .elementor-element-8959708):not(.elementor-motion-effects-element-type-background) {

    background-color: #faf9ff !important;

}

.page-id-3492 :is(.elementor-element-f8ac77e, .elementor-element-d23573e, .elementor-element-5fb5537, .elementor-element-8959708) > .e-con-inner {

    padding: 0 16px;

    width: 100%;

    max-width: none;

}

/* watermark = the card's own icon (set by custom.js), very light grey, bottom-right */

.page-id-3492 :is(.elementor-element-f8ac77e, .elementor-element-d23573e, .elementor-element-5fb5537, .elementor-element-8959708)::before {

    content: '' !important;

    position: absolute !important;

    inset: auto 10px 8px auto !important;

    width: clamp(78px, 5.6vw, 104px) !important;

    height: clamp(78px, 5.6vw, 104px) !important;

    display: block !important;

    opacity: 0.10 !important;

    filter: grayscale(1);

    border: 0 !important;

    border-radius: 0 !important;

    background: var(--icon, none) center / contain no-repeat !important;

    pointer-events: none;

    z-index: 0;

}

/* coloured icon circle, half outside the card's top-left */

.page-id-3492 .elementor-element-e8b66c9 .elementor-widget-image-box,

.page-id-3492 .elementor-element-e8b66c9 .elementor-image-box-wrapper {

    position: static;

    display: block;

    padding: 0;

}

.page-id-3492 .elementor-element-e8b66c9 .elementor-image-box-img {

    position: absolute;

    top: calc(var(--ci-icon) / -2);

    left: 18px;

    width: var(--ci-icon) !important;

    height: var(--ci-icon);

    margin: 0 !important;

    z-index: 3;

    pointer-events: none;

    transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3492 .elementor-element-e8b66c9 .elementor-image-box-img img {

    width: 100% !important;

    height: 100% !important;

    max-width: none;

    object-fit: contain;

    padding: 10px;

    border-radius: 50%;

    background: #ffffff;

    border: 2px solid rgba(97, 82, 173, 0.28);

    box-shadow: 0 8px 16px -8px rgba(97, 82, 173, 0.6);

    transition: border-color 0.4s ease, box-shadow 0.4s ease;

}

.page-id-3492 .elementor-element-e8b66c9 .is-active .elementor-image-box-img img {

    border-color: #9a86ec;

    box-shadow: 0 0 0 4px rgba(150, 130, 235, 0.16), 0 8px 16px -8px rgba(97, 82, 173, 0.5);

}

.page-id-3492 .elementor-element-e8b66c9 .e-con:hover .elementor-image-box-img {

    transform: scale(1.08) rotate(-6deg);

}

.page-id-3492 .elementor-element-e8b66c9 .elementor-image-box-content {

    position: relative;

    padding-left: 0 !important;

}

.page-id-3492 .elementor-element-e8b66c9 .elementor-image-box-title {

    color: #3b3190;

    font-size: var(--box-title-size);

    line-height: var(--box-title-line);

    font-weight: 600;

    margin-bottom: 6px;

    text-transform: none;

}

.page-id-3492 .elementor-element-e8b66c9 .elementor-image-box-description {

    color: #3f3f4f;

    font-size: var(--box-text-size);

    line-height: var(--box-text-line);

    margin: 0;

}

.page-id-3492 .elementor-element-e8b66c9 {

    gap: 52px 20px;

    margin-bottom: 28px !important;

    align-items: stretch;

}

.page-id-3492 .elementor-element-e8b66c9 > .e-con { height: 100%; }





/* tablet + phone: photo once on top, at a sensible size, then the four cards in one column */





/* Community & Impact - fine tuning: wider text column, tighter top, bigger icon, left-aligned card text */

.page-id-3492 .elementor-element-e8b66c9 .elementor-image-box-img img { padding: 8px; }

.page-id-3492 .elementor-element-e8b66c9 .elementor-image-box-content,

.page-id-3492 .elementor-element-e8b66c9 .elementor-image-box-title,

.page-id-3492 .elementor-element-e8b66c9 .elementor-image-box-description { text-align: left; }



/* room for the icon circles that bleed above the first row of cards */

.page-id-3492 .elementor-element-4bd6fe9 { margin-bottom: 30px; }

/* Community & Impact - photo keeps its proportions (Elementor's own 100% width was squashing it against the height cap); more room above the cards */

.elementor-3492 .elementor-element.elementor-element-bf1761b img { width: auto !important; height: auto !important; max-width: 100%; }

.page-id-3492 .elementor-element-4bd6fe9 { margin-bottom: 44px !important; }





/* =========================================================================

   CHLOE THE SCIENTIST PAGE - BEYOND THIS PAGE  (page-id-3492, section #dcbc148)

   Divider #2f5be2e (WHAT YOU'LL DISCOVER): the two star icons blink, the two lines are drawn on scroll from the

   text outwards (custom.js sets --dl 0..1). Four cards #6f5fbb8 #fa9f146 #ef52d3d #56a655c inside grid #6ff9942:

   equal height, photo zoom + card lift on hover, pill under the title grows, arrow chip bottom-right. Text untouched.

   ========================================================================= */

.page-id-3492 .elementor-element-2f5be2e {

    --dl: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 14px;

    width: 100%;

}

.page-id-3492 .elementor-element-2f5be2e > .elementor-widget-image {

    flex: 1 1 0;

    min-width: 0;

    width: auto !important;

    max-width: 380px;

    display: flex;

    align-items: center;

}

.page-id-3492 .elementor-element-6f406cd { justify-content: flex-end; }

.page-id-3492 .elementor-element-19ef2ed { justify-content: flex-start; }

.page-id-3492 .elementor-element-2f5be2e > .elementor-widget-image::before {

    content: '';

    flex: 1 1 auto;

    height: 2px;

    border-radius: 2px;

    background: linear-gradient(90deg, rgba(97, 82, 173, 0.15), #6152AD);

    transform: scaleX(var(--dl));

    transform-origin: right center;

}

.page-id-3492 .elementor-element-19ef2ed::before {

    order: 2;

    background: linear-gradient(270deg, rgba(97, 82, 173, 0.15), #6152AD) !important;

    transform-origin: left center !important;

}

/* only the star of each divider image is kept; the drawn line replaces the baked-in one */

.page-id-3492 .elementor-element-2f5be2e > .elementor-widget-image img {

    flex: 0 0 auto;

    width: 32px !important;

    height: 31px !important;

    max-width: none;

    object-fit: cover;

    animation: wicBlink 2.4s ease-in-out infinite;

}

.page-id-3492 .elementor-element-6f406cd img { object-position: right center; }

.page-id-3492 .elementor-element-19ef2ed img { object-position: left center; animation-delay: 1.2s; }

@keyframes wicBlink {

    0%, 100% { opacity: 1; transform: scale(1) rotate(0); filter: drop-shadow(0 0 0 rgba(97, 82, 173, 0)); }

    50% { opacity: 0.35; transform: scale(0.8) rotate(45deg); filter: drop-shadow(0 0 6px rgba(97, 82, 173, 0.6)); }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3492 .elementor-element-2f5be2e > .elementor-widget-image img { animation: none; }

}





/* ---- cards ---- */

.page-id-3492 .elementor-element-6ff9942 { align-items: stretch; gap: 20px; }

.page-id-3492 .elementor-element-6ff9942 > a.e-con {

    height: 100%;

    position: relative;

    overflow: hidden;

    border-radius: 14px !important;

    border: 1px solid rgba(97, 82, 173, 0.12);

    box-shadow: 0 6px 20px -12px rgba(60, 40, 140, 0.4) !important;

    transition: transform 0.35s ease, box-shadow 0.35s ease;

}

.page-id-3492 .elementor-element-6ff9942 > a.e-con:hover {

    transform: translateY(-6px);

    box-shadow: 0 20px 34px -14px rgba(60, 40, 140, 0.55) !important;

}

.page-id-3492 .elementor-element-6ff9942 > a.e-con > .elementor-widget-image {

    position: relative;

    overflow: hidden;

    margin: 0;

}

.page-id-3492 .elementor-element-6ff9942 > a.e-con > .elementor-widget-image img {

    width: 100%;

    height: 100%;

    max-width: none;

    object-fit: cover;

    display: block;

    transition: transform 0.7s ease;

}

.page-id-3492 .elementor-element-6ff9942 > a.e-con:hover > .elementor-widget-image img { transform: scale(1.07); }

/* soft fade at the bottom of the photo so the icon circle sits cleanly on it */

.page-id-3492 .elementor-element-6ff9942 > a.e-con > .elementor-widget-image::after {

    content: '';

    position: absolute;

    inset: auto 0 0 0;

    height: 45%;

    background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.85));

    pointer-events: none;

}

.page-id-3492 .elementor-element-6ff9942 .social-box .elementor-image-box-title {

    font-size: var(--box-title-size);

    line-height: var(--box-title-line);

    font-weight: 600;

    color: #2f2a6b;

}

.page-id-3492 .elementor-element-6ff9942 .social-box .elementor-image-box-title::before {

    width: 46px;

    transition: width 0.4s ease;

}

.page-id-3492 .elementor-element-6ff9942 > a.e-con:hover .social-box .elementor-image-box-title::before { width: 100%; }

.page-id-3492 .elementor-element-6ff9942 .social-box .elementor-image-box-description {

    font-size: var(--box-text-size);

    line-height: var(--box-text-line);

    color: #3f3f4f;

}

.page-id-3492 .elementor-element-6ff9942 .social-box .elementor-image-box-content { padding-bottom: 30px; }

/* arrow chip, bottom-right (decorative, the whole card is the link) */

.page-id-3492 .elementor-element-6ff9942 > a.e-con::after {

    content: '\2192';

    position: absolute;

    right: 14px;

    bottom: 12px;

    width: 30px;

    height: 30px;

    display: grid;

    place-items: center;

    border-radius: 50%;

    background: #ede8fb;

    color: #6152AD;

    font-size: 1.6rem;

    line-height: 1;

    transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease;

}

.page-id-3492 .elementor-element-6ff9942 > a.e-con:hover::after {

    background: #6152AD;

    color: #fff;

    transform: translateX(4px);

}

/* divider: no extra gap between a line and its star; keep a little line visible on phones */

.page-id-3492 .elementor-element-2f5be2e > .elementor-widget-image { gap: 0 !important; margin: 0 !important; padding: 0 !important; min-width: 52px; }

/* divider: stars sit right next to the heading, lines fill all the remaining width */

.page-id-3492 .elementor-element-2f5be2e { gap: 6px !important; }

.page-id-3492 .elementor-element-2f5be2e > .elementor-widget-image { max-width: none !important; }

.page-id-3492 .elementor-element-2f5be2e > .e-heading-base { margin: 0 !important; padding: 0 !important; flex: 0 0 auto; white-space: nowrap; }



.page-id-3492 .elementor-element-2f5be2e > .e-heading-base { width: auto !important; max-width: none !important; margin: 0 !important; }





/* =========================================================================

   SCIENCE COMMUNICATION PAGE - HERO  (page-id-3504, section #8ba49b9, photo #a5fa49f, CTA #34a48a3)

   CTA: same Instagram gradient treatment as the About Me / Home hero button.

   Photo: was bottom/right-flush and taller than the section itself, so on

   every screen it spilled past the pink background into the section below

   (visible hard clip over the "SciComm 101" heading). Centred vertically in

   the hero instead, with breathing room from the edge and its own width per

   breakpoint so it always fits. Scroll cue (built by customjs/custom.js,

   desktop only) reuses the generic .wic-scrollcue styles below.

   ========================================================================= */



.page-id-3504 .elementor-element-34a48a3 .elementor-button {

    border: 0;

    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);

    background-size: 140% 140%;

    background-position: 0% 50%;

    box-shadow: 0 10px 22px -14px rgba(220, 39, 67, 0.8);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background-position 0.5s ease;

}

.page-id-3504 .elementor-element-34a48a3 .elementor-button:hover,

.page-id-3504 .elementor-element-34a48a3 .elementor-button:focus {

    transform: translateY(-3px);

    background-position: 100% 50%;

    box-shadow: 0 18px 30px -14px rgba(220, 39, 67, 0.85);

}



/* Safety net: decorative bits added on this page (hero orbit, section patches) are absolutely

   positioned and can peek past the viewport edge on some widths - clip at the page level so that

   never turns into a horizontal scrollbar. */

body.page-id-3504 {

    overflow-x: hidden;

}



.page-id-3504 .elementor-element-a5fa49f {

    top: 50% !important;

    bottom: auto !important;

    right: clamp(24px, 4vw, 80px) !important;

    transform: translateY(-50%);

    width: clamp(320px, 32vw, 640px) !important;

    max-width: 32% !important;

    max-height: 72vh;

}

/* The photo inside the image ends in a flat edge at ~97% of its height (transparent below),

   which showed as a cut-off chord at the bottom of the circle. The image is scaled up 5% from

   its top edge so that flat edge drops past the circle, and the clip circle is shrunk by the

   same factor (1/1.05) so it still lands on the original circle on screen. */

.page-id-3504 .elementor-element-a5fa49f img {

    height: auto;

    transform: scale(1.05);

    transform-origin: 50% 0;

    clip-path: circle(47.62% at 50% 47.62%);

}



/* Hero "orbit" decoration around the photo (built by custom.js): two slowly-spinning rings with

   dot markers, a small dot-grid pattern, and four themed icon badges (reusing the same icons as

   the SciComm 101 cards) at the corners. Brand purple + the site's existing orange/pink accents. */

.page-id-3504 .elementor-element-a5fa49f {

    overflow: visible !important;

}

.page-id-3504 .elementor-element-a5fa49f .hero-orbit {

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

}

.page-id-3504 .elementor-element-a5fa49f .orbit-ring {

    position: absolute;

    top: 50%;

    left: 50%;

    border: 1.5px solid rgba(97, 82, 173, 0.32);

    border-radius: 50%;

    transform: translate(-50%, -50%);

}

.page-id-3504 .elementor-element-a5fa49f .orbit-ring-1 {

    width: 104%;

    height: 104%;

    animation: heroOrbitSpin 50s linear infinite;

}

.page-id-3504 .elementor-element-a5fa49f .orbit-ring-2 {

    width: 114%;

    height: 114%;

    border-color: rgba(97, 82, 173, 0.2);

    animation: heroOrbitSpin 70s linear infinite reverse;

}

.page-id-3504 .elementor-element-a5fa49f .orbit-dot {

    position: absolute;

    width: 8px;

    height: 8px;

    border-radius: 50%;

    background: #6152AD;

    box-shadow: 0 0 0 4px rgba(97, 82, 173, 0.14);

}

.page-id-3504 .elementor-element-a5fa49f .orbit-dot-1 { top: 2px; left: 50%; }

.page-id-3504 .elementor-element-a5fa49f .orbit-dot-2 { top: 50%; right: 2px; }

.page-id-3504 .elementor-element-a5fa49f .orbit-dot-3 { bottom: 8%; left: 2px; }

.page-id-3504 .elementor-element-a5fa49f .orbit-dot-4 { top: 6%; right: 6%; }

.page-id-3504 .elementor-element-a5fa49f .orbit-grid {

    position: absolute;

    top: -6%;

    left: -10%;

    width: 72px;

    height: 72px;

    background-image: radial-gradient(rgba(97, 82, 173, 0.4) 1.6px, transparent 1.6px);

    background-size: 12px 12px;

    z-index: 1;

}

.page-id-3504 .elementor-element-a5fa49f .orbit-badge {

    position: absolute;

    width: 48px;

    height: 48px;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    box-shadow: 0 12px 22px -10px rgba(97, 82, 173, 0.3);

    z-index: 2;

    animation: heroBadgeFloat 5s ease-in-out infinite;

}

/* Icon shapes are plain CSS (no image assets/filters) so they always render crisply; each

   draws in the badge's own "color", set per badge below. */

.page-id-3504 .elementor-element-a5fa49f .orbit-icon {

    position: relative;

    width: 20px;

    height: 20px;

}

/* Flask (laboratory) */

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-flask {

    background: currentColor;

    clip-path: polygon(42% 0%, 58% 0%, 58% 36%, 88% 90%, 82% 100%, 18% 100%, 12% 90%, 42% 36%);

}

/* Atom (science) - two crossed elliptical orbits */

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-atom::before,

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-atom::after {

    content: '';

    position: absolute;

    top: 50%;

    left: 50%;

    width: 20px;

    height: 10px;

    border: 1.6px solid currentColor;

    border-radius: 50%;

}

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-atom::before {

    transform: translate(-50%, -50%) rotate(35deg);

}

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-atom::after {

    transform: translate(-50%, -50%) rotate(-35deg);

}

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-atom-dot {

    position: absolute;

    top: 50%;

    left: 50%;

    width: 4px;

    height: 4px;

    background: currentColor;

    border-radius: 50%;

    transform: translate(-50%, -50%);

}

/* Paper (research paper) - a page with text lines */

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-paper {

    box-sizing: border-box;

    width: 14px;

    height: 18px;

    margin: 1px auto;

    border: 1.6px solid currentColor;

    border-radius: 2px;

}

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-paper::before,

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-paper::after {

    content: '';

    position: absolute;

    left: 4px;

    right: 4px;

    height: 1.6px;

    background: currentColor;

}

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-paper::before { top: 6px; }

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-paper::after { top: 10px; right: 7px; }

/* Magnifier (research) */

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-search {

    box-sizing: border-box;

    width: 12px;

    height: 12px;

    margin: 1px 3px;

    border: 2px solid currentColor;

    border-radius: 50%;

}

.page-id-3504 .elementor-element-a5fa49f .orbit-icon-search::after {

    content: '';

    position: absolute;

    width: 2px;

    height: 7px;

    background: currentColor;

    border-radius: 1px;

    bottom: -6px;

    right: -1px;

    transform: rotate(45deg);

}

.page-id-3504 .elementor-element-a5fa49f .orbit-badge-1 { top: -2%; left: -2%; background: #F0ECF6; color: #6152AD; animation-duration: 5.5s; animation-delay: -0.6s; }

.page-id-3504 .elementor-element-a5fa49f .orbit-badge-2 { top: 4%; right: 0%; background: #FFF0E5; color: #E8993D; animation-duration: 6.4s; animation-delay: -2.4s; }

.page-id-3504 .elementor-element-a5fa49f .orbit-badge-3 { bottom: -2%; left: 4%; background: #FBEAF5; color: #BC1888; animation-duration: 4.8s; animation-delay: -1.4s; }

.page-id-3504 .elementor-element-a5fa49f .orbit-badge-4 { bottom: 10%; right: 0%; background: #EAEDF6; color: #223973; animation-duration: 6s; animation-delay: -3.2s; }

@keyframes heroOrbitSpin {

    from { transform: translate(-50%, -50%) rotate(0deg); }

    to { transform: translate(-50%, -50%) rotate(360deg); }

}

@keyframes heroBadgeFloat {

    0%, 100% { transform: translateY(0); }

    50% { transform: translateY(-8px); }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3504 .elementor-element-a5fa49f .orbit-ring,

    .page-id-3504 .elementor-element-a5fa49f .orbit-badge {

        animation: none;

    }

}

/* Tablet: the photo is stacked and centred, so the orbit fits around it - badges a bit smaller */





/* Tablet/phone: the landscape hero shrinks a lot at this width, so the photo

   drops out of absolute flow and stacks below the text (the section switches

   to a column; the photo is first in the markup, so `order` puts it last) */





/* =========================================================================

   SCIENCE COMMUNICATION PAGE - SCICOMM 101  (page-id-3504, section #74fc86e,

   photo column #4c60bf3, feature grid #5b1bfae with 4 tiles: a07c82b/3917eae/

   08a666f/c86a8f9). Was plain white with a small photo and flat pill tiles,

   which read as flatter than the sections right below it (Journal Club,

   Women's Health). Gives the section a soft tint, enlarges the photo so it

   balances against the text column, and lifts the four tiles on hover with a

   circular icon badge, matching the richer feel of the rest of the page.

   ========================================================================= */



.page-id-3504 .elementor-element-74fc86e {

    background: #ffffff !important;

}

.page-id-3504 .elementor-element-74fc86e > .e-con-inner {

    padding-top: 70px !important;

    padding-bottom: 70px !important;

}

.page-id-3504 .elementor-element-226d383 {

    align-items: center !important;

}

.page-id-3504 .elementor-element-4c60bf3 {

    align-items: center;

}

.page-id-3504 .elementor-element-8a6e36c {

    z-index: 1 !important;

    position: relative;

}

.page-id-3504 .elementor-element-8a6e36c img {

    width: 94%;

    max-width: 560px;

    /* Rounded bottom corners on the arch. The arch is baked into the PNG and spans 0-87.6% of

       its width (the laptop pokes out past it on the right), so a plain border-radius would

       round the wrong spot. The mask is a union of: everything above the bottom 28px band, the

       band between the two corners, and a 28px circle at each arch corner. */

    -webkit-mask-image:

        linear-gradient(to bottom, #000 calc(100% - 28px), transparent calc(100% - 28px)),

        linear-gradient(to right, transparent 28px, #000 28px, #000 calc(87.6% - 28px), transparent calc(87.6% - 28px)),

        radial-gradient(circle at 28px calc(100% - 28px), #000 28px, transparent 28.5px),

        radial-gradient(circle at calc(87.6% - 28px) calc(100% - 28px), #000 28px, transparent 28.5px);

    mask-image:

        linear-gradient(to bottom, #000 calc(100% - 28px), transparent calc(100% - 28px)),

        linear-gradient(to right, transparent 28px, #000 28px, #000 calc(87.6% - 28px), transparent calc(87.6% - 28px)),

        radial-gradient(circle at 28px calc(100% - 28px), #000 28px, transparent 28.5px),

        radial-gradient(circle at calc(87.6% - 28px) calc(100% - 28px), #000 28px, transparent 28.5px);

    -webkit-mask-repeat: no-repeat;

    mask-repeat: no-repeat;

}

/* Wide screens: the photo column grew taller than the text/cards column, so the photo is a

   little narrower and its bottom ~10% is cropped (arch top stays intact) to balance the two */





.page-id-3504 .elementor-element-5b1bfae {

    gap: 40px 20px !important;

    margin-top: 32px !important;

}



/* Card: same recipe as the About Me / Chloe the Scientist "Community & Impact" cards -

   lavender border, faint icon watermark bottom-right, icon circle bleeding over the top

   edge. The border itself is drawn on scroll by custom.js (reuses the generic .ci-border

   / .ci-link SVG + dotted-connector styles already defined for those cards). */

.page-id-3504 :is(.elementor-element-a07c82b, .elementor-element-3917eae, .elementor-element-08a666f, .elementor-element-c86a8f9) {

    position: relative;

    background: #faf9ff !important;

    background-image: none !important;

    border: 1px solid rgba(97, 82, 173, 0.16) !important;

    border-radius: 18px !important;

    padding: 38px 22px 24px !important;

    box-shadow: 0 4px 16px -10px rgba(97, 82, 173, 0.16);

    transition: transform 0.3s ease, box-shadow 0.3s ease;

    overflow: visible;

}

.page-id-3504 :is(.elementor-element-a07c82b, .elementor-element-3917eae, .elementor-element-08a666f, .elementor-element-c86a8f9):hover {

    transform: translateY(-4px);

    box-shadow: 0 16px 30px -14px rgba(97, 82, 173, 0.32);

}

.elementor-3504 .elementor-element:is(.elementor-element-a07c82b, .elementor-element-3917eae, .elementor-element-08a666f, .elementor-element-c86a8f9):not(.elementor-motion-effects-element-type-background) {

    background-color: #faf9ff !important;

}

/* Watermark: the card's own icon, faint, bottom-right */

.page-id-3504 :is(.elementor-element-a07c82b, .elementor-element-3917eae, .elementor-element-08a666f, .elementor-element-c86a8f9)::before {

    content: '';

    position: absolute;

    inset: auto 10px 8px auto;

    width: 76px;

    height: 76px;

    opacity: 0.10;

    filter: grayscale(1);

    background: var(--icon, none) center / contain no-repeat;

    pointer-events: none;

    z-index: 0;

}



/* Icon: circle bleeding above the card's top-left edge */

.page-id-3504 :is(.elementor-element-67389e3, .elementor-element-bfc8a92, .elementor-element-5f8f37a, .elementor-element-33c75d6),

.page-id-3504 :is(.elementor-element-67389e3, .elementor-element-bfc8a92, .elementor-element-5f8f37a, .elementor-element-33c75d6) .elementor-image-box-wrapper {

    position: static;

    display: block;

    padding-right: 0;

}

.page-id-3504 :is(.elementor-element-67389e3, .elementor-element-bfc8a92, .elementor-element-5f8f37a, .elementor-element-33c75d6) .elementor-image-box-img {

    position: absolute;

    top: -28px;

    left: 18px;

    width: 54px !important;

    height: 54px;

    margin: 0 !important;

    z-index: 3;

    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3504 :is(.elementor-element-67389e3, .elementor-element-bfc8a92, .elementor-element-5f8f37a, .elementor-element-33c75d6) .elementor-image-box-img img {

    width: 100% !important;

    height: 100% !important;

    max-width: none;

    object-fit: contain;

    padding: 10px;

    border-radius: 50%;

    background: #ffffff;

    border: 2px solid rgba(97, 82, 173, 0.28);

    box-shadow: 0 8px 16px -8px rgba(97, 82, 173, 0.55);

    transition: border-color 0.4s ease, box-shadow 0.4s ease;

}

.page-id-3504 :is(.elementor-element-a07c82b, .elementor-element-3917eae, .elementor-element-08a666f, .elementor-element-c86a8f9):hover .elementor-image-box-img {

    transform: scale(1.08) rotate(-6deg);

}

.page-id-3504 :is(.elementor-element-a07c82b, .elementor-element-3917eae, .elementor-element-08a666f, .elementor-element-c86a8f9).is-active .elementor-image-box-img img {

    border-color: #9a86ec;

    box-shadow: 0 0 0 4px rgba(150, 130, 235, 0.16), 0 8px 16px -8px rgba(97, 82, 173, 0.5);

}

.page-id-3504 :is(.elementor-element-67389e3, .elementor-element-bfc8a92, .elementor-element-5f8f37a, .elementor-element-33c75d6) .elementor-image-box-content {

    position: relative;

    padding-left: 0 !important;

    margin-top: 10px;

}

.page-id-3504 :is(.elementor-element-67389e3, .elementor-element-bfc8a92, .elementor-element-5f8f37a, .elementor-element-33c75d6) .elementor-image-box-description {

    font-size: 1.5rem;

    line-height: 1.55;

    color: #3f3f4f;

    margin-bottom: 0 !important;

}





/* Phone hero: tighter gaps - header to eyebrow, text to "Follow Me On", button to photo */





/* =========================================================================

   SCIENCE COMMUNICATION PAGE - JOURNAL CLUB  (page-id-3504, section #b6dc386,

   row #405cc50 = text #b4e68d5 + feature list #380b1a0 with 4 "edition-box"

   items). The photo is the section's own background-image; on desktop it was

   flex-end aligned inside an 87%-boxed row, which left a wide dead zone

   between the photo and the text. Adds a soft fade from the photo into the

   text's backdrop (so the transition reads as designed, not empty) and pulls

   the text/list group left to close the gap. No animation - static only.

   ========================================================================= */



/* Elementor's full-width background image (photo + beige fill) is dropped; the section is

   solid dark and the portrait photo sits in its own left panel (::before) with a hard edge */

.page-id-3504 .elementor-element-b6dc386 {

    position: relative;

    overflow: hidden;

    background-image: none !important;

    background-color: #0A0D16 !important;

}

.page-id-3504 .elementor-element-b6dc386::before {

    content: '';

    position: absolute;

    top: 0;

    bottom: 0;

    left: 0;

    width: 30%;

    background: url('/wp-content/uploads/2026/09/Section-4-2.png') center center / cover no-repeat;

    z-index: 0;

    pointer-events: none;

}

/* Soft blurred purple glow behind the text/cards */

.page-id-3504 .elementor-element-b6dc386::after {

    content: '';

    position: absolute;

    top: 50%;

    left: 62%;

    width: clamp(320px, 32vw, 520px);

    aspect-ratio: 1;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(97, 82, 173, 0.55) 0%, rgba(97, 82, 173, 0.25) 45%, rgba(97, 82, 173, 0) 70%);

    filter: blur(60px);

    transform: translate(-50%, -50%);

    z-index: 0;

    pointer-events: none;

}

.page-id-3504 .elementor-element-b6dc386 > .e-con-inner {

    position: relative;

    z-index: 1;

}





/* Dark theme text colors (label, heading, paragraph) for the dark background */

.page-id-3504 .elementor-element-654ea60.purple-heading,

.page-id-3504 .elementor-element-654ea60 .elementor-heading-title {

    color: #ffffff !important;

}

.page-id-3504 .elementor-element-654ea60.purple-heading::after {

    background: rgba(255, 255, 255, 0.16);

}

.page-id-3504 .elementor-element-654ea60.purple-heading::before {

    background: #9a86ec;

}

.page-id-3504 .elementor-element-988c663 .section-heading {

    color: #ffffff;

}

.page-id-3504 .elementor-element-988c663 .section-heading .banner-colorTxt {

    color: #9a86ec;

}

.page-id-3504 .elementor-element-b4e68d5 p {

    color: #c7c9db !important;

}





/* Feature list (#380b1a0, 4 "edition-box" rows) -> individual cards with a hover lift.

   The old dashed connector line and the bottom hairline are dropped; each row gets its

   own white card, a bigger icon badge, and a soft shadow instead. */

.page-id-3504 .elementor-element-380b1a0 {

    gap: 14px !important;

}

.page-id-3504 .elementor-element-380b1a0 > .e-con {

    border: 1px solid rgba(255, 255, 255, 0.14) !important;

    background-color: rgba(255, 255, 255, 0.06);

    background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.02));

    border-radius: 16px;

    padding: 18px 22px !important;

    box-shadow: 0 16px 30px -22px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.08);

    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;

}

.page-id-3504 .elementor-element-380b1a0 > .e-con:hover {

    transform: translateY(-5px);

    border-color: rgba(154, 134, 236, 0.6) !important;

    box-shadow: 0 20px 34px -22px rgba(97, 82, 173, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.12);

}

.page-id-3504 .elementor-element-380b1a0 .edition-box::before {

    display: none;

}

/* Icon badge: dark purple-navy circle with a dark purple ring, and a soft pastel disc holding a

   line icon in a deeper shade of the same hue (SVG injected by custom.js). Each card has its own

   pastel pair via --jc-a / --jc-b (disc gradient) and --jc-ink (icon colour). */

.page-id-3504 .elementor-element-380b1a0 .elementor-image-box-img {

    --jc-a: #F1EDFF;

    --jc-b: #DCD3FF;

    --jc-ink: #5A4AB0;

    background: radial-gradient(circle at 50% 35%, #231d4d 0%, #141130 100%);

    width: 64px !important;

    height: 64px;

    flex: 0 0 64px;

    box-sizing: border-box;

    border: 2px solid #4B3C9E;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    box-shadow: 0 0 0 4px rgba(75, 60, 158, 0.18), 0 0 18px -6px rgba(97, 82, 173, 0.6);

    margin-right: 18px !important;

    transition: transform 0.35s ease, background 0.3s ease;

}

.page-id-3504 .elementor-element-380b1a0 .elementor-image-box-img.jc-icon-1 {

    --jc-a: #F1EDFF;

    --jc-b: #DCD3FF;

    --jc-ink: #5A4AB0;

}

.page-id-3504 .elementor-element-380b1a0 .elementor-image-box-img.jc-icon-2 {

    --jc-a: #FFF4E6;

    --jc-b: #FFE0BF;

    --jc-ink: #C9772C;

}

.page-id-3504 .elementor-element-380b1a0 .elementor-image-box-img.jc-icon-3 {

    --jc-a: #EAFBF7;

    --jc-b: #CDF1E9;

    --jc-ink: #1F8C80;

}

.page-id-3504 .elementor-element-380b1a0 .elementor-image-box-img.jc-icon-4 {

    --jc-a: #FFEEF6;

    --jc-b: #FFD6EA;

    --jc-ink: #B8337E;

}

/* The Elementor PNG is replaced by the SVG icon once custom.js has added it */

.page-id-3504 .elementor-element-380b1a0 .elementor-image-box-img:has(.jc-icon) img {

    display: none;

}

.page-id-3504 .elementor-element-380b1a0 .elementor-image-box-img img {

    width: 40px;

    height: 40px;

    padding: 5px;

    box-sizing: border-box;

    background: #ffffff;

    border-radius: 50%;

    object-fit: contain;

    transition: transform 0.35s ease;

}

.page-id-3504 .elementor-element-380b1a0 .jc-icon {

    width: 42px;

    height: 42px;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    background: linear-gradient(135deg, var(--jc-a) 0%, var(--jc-b) 100%);

    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.6);

}

.page-id-3504 .elementor-element-380b1a0 .jc-icon svg {

    width: 22px;

    height: 22px;

    fill: none;

    stroke: var(--jc-ink);

    stroke-width: 2;

    stroke-linecap: round;

    stroke-linejoin: round;

}

.page-id-3504 .elementor-element-380b1a0 > .e-con:hover .elementor-image-box-img {

    transform: scale(1.12) rotate(-6deg);

    box-shadow: 0 0 0 4px rgba(75, 60, 158, 0.28), 0 0 24px -4px rgba(97, 82, 173, 0.8);

}

.page-id-3504 .elementor-element-380b1a0 .elementor-image-box-description {

    font-size: 1.5rem;

    line-height: 1.5;

    color: #dfe1f2;

}



/* Icon badges bleed out of the cards' left edge and sit on one vertical dotted line.

   Grey dotted track (::before) + purple dotted fill (::after) that grows downward as the

   section scrolls. custom.js sets --jc-top / --jc-len (first to last icon centre, px) and

   --jc-p (0..1 progress), and adds .jc-reached to each card once the fill reaches its icon. */

.page-id-3504 .elementor-element-380b1a0 {

    --jc-badge: 54px;

    --jc-gap: 14px;             /* space between the badge and its card */

    --jc-bleed: calc(var(--jc-badge) + var(--jc-gap));   /* badge sits fully outside the card */

    position: relative;

    padding-left: calc(var(--jc-bleed) + 10px) !important;

}

.page-id-3504 .elementor-element-380b1a0::before,

.page-id-3504 .elementor-element-380b1a0::after {

    content: '';

    position: absolute;

    left: calc(10px + 1px + var(--jc-badge) / 2 - 2px);   /* badge centre: list's 10px padding + card's 1px border */

    top: var(--jc-top, 0);

    width: 4px;

    background-image: radial-gradient(circle, currentColor 1.8px, transparent 2.1px);

    background-size: 4px 10px;

    background-repeat: repeat-y;

    pointer-events: none;

    z-index: 0;

}

.page-id-3504 .elementor-element-380b1a0::before {

    height: var(--jc-len, 0);

    color: rgba(255, 255, 255, 0.2);

}

.page-id-3504 .elementor-element-380b1a0::after {

    height: calc(var(--jc-len, 0px) * var(--jc-p, 0));

    color: #9a86ec;

    filter: drop-shadow(0 0 4px rgba(154, 134, 236, 0.8));

}

.page-id-3504 .elementor-element-380b1a0 > .e-con {

    position: relative;

    z-index: 1;

    padding-top: 23px !important;

    padding-bottom: 23px !important;

    padding-left: 24px !important;

}

.page-id-3504 .elementor-element-380b1a0 > .e-con .elementor-widget,

.page-id-3504 .elementor-element-380b1a0 > .e-con .elementor-image-box-wrapper {

    position: static;

}

.page-id-3504 .elementor-element-380b1a0 .elementor-image-box-img {

    position: absolute;

    top: 50%;

    left: calc(var(--jc-bleed) * -1);

    width: var(--jc-badge) !important;

    height: var(--jc-badge);

    margin: calc(var(--jc-badge) / -2) 0 0 !important;

    border-color: #2f2766;

    box-shadow: 0 0 14px -6px rgba(97, 82, 173, 0.6);

    transition: transform 0.35s ease, box-shadow 0.4s ease, border-color 0.4s ease;

}

.page-id-3504 .elementor-element-380b1a0 .elementor-image-box-img .jc-icon {

    filter: saturate(0.4) brightness(0.8);

    transition: filter 0.4s ease;

}

/* reached by the line: ring lights up, icon gets its full colour */

.page-id-3504 .elementor-element-380b1a0 .elementor-image-box-img .jc-icon {

    width: 36px;

    height: 36px;

}

.page-id-3504 .elementor-element-380b1a0 .elementor-image-box-img .jc-icon svg {

    width: 19px;

    height: 19px;

}

.page-id-3504 .elementor-element-380b1a0 > .e-con.jc-reached .elementor-image-box-img {

    border-color: #9a86ec;

    box-shadow: 0 0 22px -2px rgba(154, 134, 236, 0.75);

}

.page-id-3504 .elementor-element-380b1a0 > .e-con.jc-reached .jc-icon {

    filter: none;

}

.page-id-3504 .elementor-element-380b1a0 > .e-con:hover .elementor-image-box-img {

    box-shadow: 0 0 24px -4px rgba(97, 82, 173, 0.8);

}





/* =========================================================================

   SCIENCE COMMUNICATION PAGE - WOMEN'S HEALTH RESEARCH  (page-id-3504,

   section #95e1827, grid #0812882 with 4 text+photo cards: 5a95dcd/9b6b5c5/

   395e891/3d26a7b, big photo #6a673b1). Was a flat grey-bordered grid; gives

   each card a lavender border + shadow + hover lift with the photo zooming

   in slightly, and rounds the big photo on all corners with the same hover

   treatment. Header centred; the CTA sits over the bottom of the big photo.

   ========================================================================= */



/* Header: eyebrow, heading and subheading centred. The CTA has been moved onto the big photo by

   custom.js (see "Women's Health CTA" below), so its old header column is hidden. */

.page-id-3504 .elementor-element-47f4de8 {

    display: none !important;

}

.page-id-3504 .elementor-element-6537a4d {

    flex: 1 1 100% !important;

    width: 100% !important;

    max-width: none !important;

    align-items: center !important;

    text-align: center;

}

.page-id-3504 .elementor-element-6537a4d > .elementor-element {

    align-self: center !important;

    text-align: center !important;

}

.page-id-3504 .elementor-element-6537a4d .elementor-heading-title {

    text-align: center !important;

}

/* eyebrow underline: the grey track and its purple lead segment, centred under the text */

.page-id-3504 .elementor-element-af45101.purple-heading::after {

    left: 34%;

}

.page-id-3504 .elementor-element-af45101.purple-heading::before {

    left: 34%;

}

.page-id-3504 .elementor-element-8cf90d4 .elementor-heading-title {

    margin-left: auto;

    margin-right: auto;

}





.page-id-3504 .elementor-element-0812882 {

    gap: 26px !important;

}

.page-id-3504 :is(.elementor-element-5a95dcd, .elementor-element-9b6b5c5, .elementor-element-395e891, .elementor-element-3d26a7b) {

    position: relative;

    border: 1.5px solid rgba(97, 82, 173, 0.55) !important;

    border-radius: 20px !important;

    overflow: visible;

    box-shadow: 0 4px 16px -10px rgba(97, 82, 173, 0.16);

    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-3504 :is(.elementor-element-5a95dcd, .elementor-element-9b6b5c5, .elementor-element-395e891, .elementor-element-3d26a7b):hover {

    transform: translateY(-6px);

    border-color: #6152AD !important;

    box-shadow: 0 18px 32px -16px rgba(97, 82, 173, 0.32);

}

.page-id-3504 :is(.elementor-element-cfe1f8f, .elementor-element-e811a96, .elementor-element-8af0f3d, .elementor-element-d14cb71) {

    padding: 26px 24px !important;

    position: relative;

}

.page-id-3504 :is(.elementor-element-cfe1f8f, .elementor-element-e811a96, .elementor-element-8af0f3d, .elementor-element-d14cb71) p {

    font-size: 1.5rem;

    line-height: 1.6;

    color: #2b2b38;

}



.page-id-3504 :is(.elementor-element-6e99768, .elementor-element-be4872b, .elementor-element-e538751, .elementor-element-08d020e) {

    border-radius: 0 20px 20px 0 !important;

    overflow: hidden;

    transition: transform 0.5s ease;

}

.page-id-3504 :is(.elementor-element-5a95dcd, .elementor-element-9b6b5c5, .elementor-element-395e891, .elementor-element-3d26a7b):hover :is(.elementor-element-6e99768, .elementor-element-be4872b, .elementor-element-e538751, .elementor-element-08d020e) {

    transform: scale(1.08);

}



.page-id-3504 .elementor-element-6a673b1 {

    border-radius: 28px !important;

    overflow: hidden;

    box-shadow: 0 20px 40px -20px rgba(97, 82, 173, 0.4);

    transition: transform 0.5s ease, box-shadow 0.35s ease;

}

.page-id-3504 .elementor-element-6a673b1:hover {

    box-shadow: 0 26px 48px -18px rgba(97, 82, 173, 0.5);

}

.page-id-3504 .elementor-element-6a673b1::after {

    content: '';

    position: absolute;

    inset: 0;

    background: linear-gradient(0deg, rgba(20, 12, 40, 0.5) 0%, rgba(20, 12, 40, 0) 45%);

    pointer-events: none;

}

/* Women's Health CTA: "Explore More" (moved here by custom.js) sits over the bottom of the big

   photo, centred, above the dark fade */

.page-id-3504 .elementor-element-6a673b1 {

    position: relative;

}

.page-id-3504 .elementor-element-6a673b1 .elementor-element-ac4b25c {

    position: absolute;

    left: 50%;

    bottom: 26px;

    transform: translateX(-50%);

    width: auto !important;

    margin: 0 !important;

    z-index: 2;

}

.page-id-3504 .elementor-element-6a673b1 .elementor-element-ac4b25c .elementor-button {

    white-space: nowrap;

    box-shadow: 0 12px 24px -10px rgba(10, 6, 30, 0.7);

}





/* =========================================================================

   SCIENCE COMMUNICATION PAGE - NEWSLETTER  (page-id-3504, section #8b65bd5,

   row #e70029d, text column #c0176fc, photo widget #9b544a6 absolute-

   positioned like the hero). Text column was 56% wide (too wide, leaving the

   photo cramped/left), row wasn't vertically centered. Shrinks the text

   column, and swaps sides: photo on the left, text pushed to the right.

   ========================================================================= */

.page-id-3504 .elementor-element-e70029d {

    justify-content: flex-end !important;

    align-items: center !important;

}

.page-id-3504 .elementor-element-46c19e2 {

    white-space: nowrap;

}

.page-id-3504 .elementor-element-46c19e2 .banner-colorTxt {

    display: inline;

}





/* Decorative glow + floating icon badges around the newsletter photo (built by custom.js).

   Section width, image width and the image's own blur are untouched - this only adds a soft

   blurred glow behind the photo and three small icon badges that drift around it. */

.page-id-3504 .elementor-element-9b544a6 {

    overflow: visible !important;

}

.page-id-3504 .elementor-element-9b544a6 .nl-glow {

    position: absolute;

    z-index: -1;

    top: 50%;

    left: 50%;

    width: 78%;

    height: 78%;

    transform: translate(-50%, -50%);

    border-radius: 50%;

    background: radial-gradient(circle, rgba(150, 130, 235, 0.55) 0%, rgba(150, 130, 235, 0) 70%);

    filter: blur(28px);

    animation: nlGlowPulse 6s ease-in-out infinite;

    pointer-events: none;

}

.page-id-3504 .elementor-element-9b544a6 .nl-badge {

    position: absolute;

    border-radius: 50%;

    background: #ffffff;

    box-shadow: 0 10px 24px -10px rgba(97, 82, 173, 0.5);

    z-index: 2;

    animation: nlBadgeFloat 5s ease-in-out infinite;

    pointer-events: none;

}

/* Icon badges: white disc + tinted inner circle + line icon (SVG injected by custom.js) */

.page-id-3504 .elementor-element-9b544a6 .nl-badge {

    width: 56px;

    height: 56px;

    display: flex;

    align-items: center;

    justify-content: center;

}

.page-id-3504 .elementor-element-9b544a6 .nl-badge::before {

    content: '';

    position: absolute;

    inset: 6px;

    border-radius: 50%;

}

.page-id-3504 .elementor-element-9b544a6 .nl-badge svg {

    position: relative;

    width: 24px;

    height: 24px;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;

}

/* Envelope - newsletter. Sits beside the photo on the left, inside the section (it used to sit

   above the photo at top:-8% and poked into the Women's Health section above) */

.page-id-3504 .elementor-element-9b544a6 .nl-badge-1 {

    top: 42%;

    left: -4%;

    color: #6152AD;

    animation-duration: 5.5s;

    animation-delay: -0.8s;

}

.page-id-3504 .elementor-element-9b544a6 .nl-badge-1::before {

    background: #F0ECF6;

}

/* Flask - science (the photo pokes above the section, so this is kept low enough to stay inside) */

.page-id-3504 .elementor-element-9b544a6 .nl-badge-2 {

    top: 26%;

    right: -10%;

    color: #E8993D;

    animation-duration: 6.2s;

    animation-delay: -2.6s;

}

.page-id-3504 .elementor-element-9b544a6 .nl-badge-2::before {

    background: #FFF0E5;

}

/* Lightbulb - new ideas */

.page-id-3504 .elementor-element-9b544a6 .nl-badge-3 {

    bottom: 12%;

    right: -8%;

    color: #BC1888;

    animation-duration: 4.8s;

    animation-delay: -1.6s;

}

.page-id-3504 .elementor-element-9b544a6 .nl-badge-3::before {

    background: #FBEAF5;

}

@keyframes nlGlowPulse {

    0%, 100% { opacity: 0.7; transform: translate(-50%, -50%) scale(1); }

    50% { opacity: 1; transform: translate(-50%, -50%) scale(1.12); }

}

@keyframes nlBadgeFloat {

    0%, 100% { transform: translateY(0) rotate(0deg); }

    50% { transform: translateY(-10px) rotate(-4deg); }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3504 .elementor-element-9b544a6 .nl-glow,

    .page-id-3504 .elementor-element-9b544a6 .nl-badge {

        animation: none;

    }

}





/* =========================================================================

   EDUCATION & ADVOCACY PAGE - HERO  (page-id-3511, section #ffddede, content #e5def7e).

   The "Start Here" button (#85e2253) is removed; the scroll cue (built by customjs/custom.js,

   desktop only) starts under the intro paragraph instead and reuses the generic

   .wic-scrollcue styles from the About Me hero.

   ========================================================================= */

.page-id-3511 .elementor-element-ffddede {

    position: relative;

}

.page-id-3511 .elementor-element-85e2253 {

    display: none !important;

}





/* =========================================================================

   EDUCATION & ADVOCACY PAGE - SCIENCE POLICY 101  (page-id-3511, section #aed7932)

   Header row #61e79c0 = text #f2cd5f4 (eyebrow #63da57d, heading #19a8e26, sub-line #affd163)

   + button column #9d77300 (CTA #2225a46). Content row #2d6d072 = photo #b3b7683 (.federal-bx,

   background image) + grid #60783aa with 4 text+image cards:

     #b8611cf (text #db846d1, image #50dd98b)   #e38ff4c (text #ca4d4a8, image #126ab62)

     #c961c10 (text #16ae0a3, image #9656189)   #a10d90e (text #814d5e8, image #a186cd9)

   Header centred. Desktop: [2 cards] [photo] [2 cards] - the card grid becomes `display: contents`

   so its cards sit directly in a 3-column grid with the photo; left cards show the image first.

   The CTA is moved onto the photo by custom.js and sits over its bottom edge.

   ========================================================================= */



/* ---- header: centred ---- */

.page-id-3511 .elementor-element-61e79c0 {

    flex-direction: column !important;

    align-items: center !important;

}

.page-id-3511 .elementor-element-f2cd5f4 {

    width: 100% !important;

    align-items: center !important;

    text-align: center;

}

.page-id-3511 .elementor-element-f2cd5f4 > .elementor-element {

    align-self: center !important;

    text-align: center !important;

}

.page-id-3511 .elementor-element-f2cd5f4 .elementor-heading-title {

    text-align: center !important;

}

.page-id-3511 .elementor-element-63da57d.purple-heading::after,

.page-id-3511 .elementor-element-63da57d.purple-heading::before {

    left: 34%;

}

.page-id-3511 .elementor-element-affd163 {

    width: 100% !important;

    max-width: 1040px !important;   /* sub-line on two lines */

}

.page-id-3511 .elementor-element-affd163 .elementor-heading-title {

    text-wrap: balance;

}

/* the CTA now lives on the photo */

.page-id-3511 .elementor-element-9d77300 {

    display: none !important;

}



/* ---- content row: one grid for the photo and the four cards ---- */

.page-id-3511 .elementor-element-2d6d072 {

    display: grid !important;

    grid-template-columns: minmax(0, 1fr) minmax(0, 0.8fr) minmax(0, 1fr);

    grid-auto-rows: auto;

    gap: 22px !important;

    align-items: stretch;

    margin-top: 12px;

}

.page-id-3511 .elementor-element-60783aa {

    display: contents !important;

}

.page-id-3511 .elementor-element-2d6d072 > .elementor-element,

.page-id-3511 .elementor-element-60783aa > .elementor-element {

    width: auto !important;

    max-width: none !important;

    margin: 0 !important;

}



/* photo (with the CTA over its bottom edge) */

.page-id-3511 .elementor-element-b3b7683 {

    display: flex !important;

    position: relative;

    grid-column: 2;

    grid-row: 1 / span 2;

    min-height: 436px;   /* sets the height of the two card rows beside it */

    border-radius: 24px;

    overflow: hidden;

    box-shadow: 0 22px 40px -22px rgba(97, 82, 173, 0.45);

}

.page-id-3511 .elementor-element-b3b7683::after {

    content: '';

    position: absolute;

    inset: 0;

    background: linear-gradient(0deg, rgba(20, 12, 40, 0.55) 0%, rgba(20, 12, 40, 0) 42%);

    pointer-events: none;

    z-index: 1;

}

.page-id-3511 .elementor-element-b3b7683 .elementor-element-2225a46 {

    position: absolute;

    left: 50%;

    bottom: 24px;

    transform: translateX(-50%);

    width: max-content !important;

    max-width: calc(100% - 32px);

    margin: 0 !important;

    z-index: 2;

}

.page-id-3511 .elementor-element-b3b7683 .elementor-element-2225a46 .elementor-button {

    white-space: nowrap;

    box-shadow: 0 12px 24px -10px rgba(10, 6, 30, 0.7);

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3511 .elementor-element-b3b7683 .elementor-element-2225a46 .elementor-button:hover {

    transform: translateY(-3px);

    box-shadow: 0 18px 30px -12px rgba(10, 6, 30, 0.8);

}



/* card placement: left column = cards 1 + 2, right column = cards 3 + 4 */

.page-id-3511 .elementor-element-b8611cf { grid-column: 1; grid-row: 1; }

.page-id-3511 .elementor-element-e38ff4c { grid-column: 1; grid-row: 2; }

.page-id-3511 .elementor-element-c961c10 { grid-column: 3; grid-row: 1; }

.page-id-3511 .elementor-element-a10d90e { grid-column: 3; grid-row: 2; }



/* ---- cards: white, soft lavender border, inset rounded photo, accent bar, hover lift ---- */

.page-id-3511 :is(.elementor-element-b8611cf, .elementor-element-e38ff4c, .elementor-element-c961c10, .elementor-element-a10d90e) {

    position: relative;

    display: flex !important;

    flex-direction: row !important;

    flex-wrap: nowrap !important;

    gap: 6px !important;

    padding: 10px !important;

    background: #ffffff;

    border: 1px solid rgba(97, 82, 173, 0.18) !important;

    border-radius: 20px !important;

    box-shadow: 0 8px 24px -18px rgba(97, 82, 173, 0.4);

    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;

}

/* left column: image first */

.page-id-3511 :is(.elementor-element-b8611cf, .elementor-element-e38ff4c) {

    flex-direction: row-reverse !important;

}

.page-id-3511 :is(.elementor-element-b8611cf, .elementor-element-e38ff4c, .elementor-element-c961c10, .elementor-element-a10d90e):hover {

    transform: translateY(-5px);

    border-color: rgba(97, 82, 173, 0.55) !important;

    box-shadow: 0 20px 34px -18px rgba(97, 82, 173, 0.45);

}

/* text side: a short accent bar under the description (bottom right) that grows on hover, and a very light

   purple line icon behind the text (SVG injected by custom.js) that drifts a little on hover */

.page-id-3511 :is(.elementor-element-db846d1, .elementor-element-ca4d4a8, .elementor-element-16ae0a3, .elementor-element-814d5e8) {

    position: relative;

    flex: 1 1 auto !important;

    width: auto !important;

    align-self: center !important;

    padding: 10px 14px 10px 16px !important;

}

.page-id-3511 :is(.elementor-element-db846d1, .elementor-element-ca4d4a8, .elementor-element-16ae0a3, .elementor-element-814d5e8)::after {

    content: '';

    display: block;

    align-self: flex-end;

    width: 30px;

    height: 3px;

    margin-top: 12px;

    border-radius: 3px;

    background: linear-gradient(90deg, #6152AD, #9a86ec);

    transition: width 0.35s ease;

}

.page-id-3511 :is(.elementor-element-b8611cf, .elementor-element-e38ff4c, .elementor-element-c961c10, .elementor-element-a10d90e):hover :is(.elementor-element-db846d1, .elementor-element-ca4d4a8, .elementor-element-16ae0a3, .elementor-element-814d5e8)::after {

    width: 54px;

}

.page-id-3511 .sp-icon {

    position: absolute;

    top: 4px;

    right: 6px;

    width: 64px;

    height: 64px;

    color: #6152AD;

    opacity: 0.1;

    pointer-events: none;

    z-index: 0;

    transition: transform 0.45s ease, opacity 0.45s ease;

}

.page-id-3511 .sp-icon svg {

    display: block;

    width: 100%;

    height: 100%;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.5;

    stroke-linecap: round;

    stroke-linejoin: round;

}

.page-id-3511 :is(.elementor-element-b8611cf, .elementor-element-e38ff4c, .elementor-element-c961c10, .elementor-element-a10d90e):hover .sp-icon {

    transform: translate(-6px, 4px) rotate(-8deg);

    opacity: 0.16;

}

/* right-column cards (photo on the right): icon and accent bar mirror to the left, away from the photo */

.page-id-3511 :is(.elementor-element-16ae0a3, .elementor-element-814d5e8)::after {

    align-self: flex-start;

}

.page-id-3511 :is(.elementor-element-16ae0a3, .elementor-element-814d5e8) .sp-icon {

    left: 6px;

    right: auto;

}

.page-id-3511 :is(.elementor-element-c961c10, .elementor-element-a10d90e):hover .sp-icon {

    transform: translate(6px, 4px) rotate(8deg);

}

.page-id-3511 :is(.elementor-element-db846d1, .elementor-element-ca4d4a8, .elementor-element-16ae0a3, .elementor-element-814d5e8) p {

    position: relative;

    z-index: 1;

    margin: 0;

    font-size: 1.5rem;

    line-height: 1.6;

    color: #2b2b38;

}

/* image side: rounded, inset in the card */

.page-id-3511 :is(.elementor-element-50dd98b, .elementor-element-126ab62, .elementor-element-9656189, .elementor-element-a186cd9) {

    flex: 0 0 40% !important;

    width: 40% !important;

    min-height: 188px;

    border-radius: 14px !important;

    overflow: hidden;

    transition: transform 0.5s ease, filter 0.5s ease;

}

.page-id-3511 :is(.elementor-element-b8611cf, .elementor-element-e38ff4c, .elementor-element-c961c10, .elementor-element-a10d90e):hover :is(.elementor-element-50dd98b, .elementor-element-126ab62, .elementor-element-9656189, .elementor-element-a186cd9) {

    transform: scale(1.03);

    filter: saturate(1.1);

}



/* Tablet: photo on top across both columns, the four cards in a 2x2 grid below */



/* Tablet + phone: each card shows its image above the text */



/* Phone: one column - photo, then the cards */





/* =========================================================================

   EDUCATION & ADVOCACY PAGE - CLASSROOM SCIENCE  (page-id-3511, section #ba44a58, row #d88b135)

   Left column #aead336 (eyebrow, heading, sub-line, picture frame #4675cde, CTA #7bdfe92).

   Right column #e5ef1ff with 4 rows #4593a32 / #8b1d4dd / #0e252f8 / #0205ddb, each = icon

   #3163e5b / #fefbe55 / #38440e8 / #d3f3a31 + number + text.

   The lab-glassware picture was the section's background and about 40% of it sat hidden behind

   the cards: it now fills the frame in the left column (cropped to the glassware, fully visible),

   with four floating icon badges (custom.js). Cards are narrower; their icons sit outside on the

   left, joined by a dotted line that fills on scroll (iconScrollLine() in custom.js).

   ========================================================================= */

.page-id-3511 .elementor-element-ba44a58 {

    background-image: none !important;

    background-color: #F6F4FD !important;

}

/* same vertical padding as the other sections on the page (was 10px) */

.page-id-3511 .elementor-element-ba44a58 > .e-con-inner {

    padding-top: 50px !important;

    padding-bottom: 50px !important;

}



/* ---- picture frame #4675cde holds .cs-art (added by custom.js): the glassware cropped from the

   1920x848 PNG (x 0-840, y 370-684) plus the floating badges. The PNG also carries a faint white

   panel behind the glassware; `multiply` blends it into the section's lavender. ---- */

.page-id-3511 .elementor-element-4675cde {

    display: flex !important;   /* an older .explore-class-bx rule hid it on some widths */

    flex-direction: row !important;   /* Elementor makes containers columns */

    justify-content: flex-start;   /* picture lines up with the text above it */

    align-items: flex-end;

    position: relative;

    width: 100% !important;

    height: auto !important;

    min-height: 0 !important;

    aspect-ratio: 840 / 314;

    margin: 22px 0 20px;

    padding: 0 !important;

    background: none !important;

}

.page-id-3511 .cs-art {

    position: relative;

    height: 100%;

    max-width: 100%;

    aspect-ratio: 840 / 314;

}

.page-id-3511 .cs-art::before {

    content: '';

    position: absolute;

    inset: 0;

    background-image: url('../../../uploads/2026/06/Group-1000015661.png');

    background-position: 0 69.3%;   /* 370 / (848 - 314) */

    background-size: 228.6% auto;   /* 1920 / 840: the glassware part fills the box's width */

    background-repeat: no-repeat;

    border-radius: 20px;   /* on the picture layer only, so the badges can still poke out */

    mix-blend-mode: multiply;

    pointer-events: none;

}

/* Desktop: the left column stretches to the cards' height and the frame takes whatever height is left

   under the text, so both columns end level; the picture keeps its proportions inside it */



.page-id-3511 .cs-badge {

    position: absolute;

    width: 48px;

    height: 48px;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    background: #ffffff;

    box-shadow: 0 10px 22px -10px rgba(97, 82, 173, 0.5);

    z-index: 2;

    pointer-events: none;

    animation: csBadgeFloat 5s ease-in-out infinite;

}

.page-id-3511 .cs-badge::before {

    content: '';

    position: absolute;

    inset: 5px;

    border-radius: 50%;

}

.page-id-3511 .cs-badge svg {

    position: relative;

    width: 22px;

    height: 22px;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;

}

/* bubble - bubble geometry */

.page-id-3511 .cs-badge-1 { top: 2%; left: 34%; color: #1F8C80; animation-duration: 5.4s; animation-delay: -0.8s; }

.page-id-3511 .cs-badge-1::before { background: #EAFBF7; }

/* magnet - electromagnetism */

.page-id-3511 .cs-badge-2 { top: 4%; right: 3%; color: #BC1888; animation-duration: 6.2s; animation-delay: -2.4s; }

.page-id-3511 .cs-badge-2::before { background: #FBEAF5; }

/* atom - science */

.page-id-3511 .cs-badge-3 { top: 30%; left: -4%; color: #6152AD; animation-duration: 4.8s; animation-delay: -1.4s; }

.page-id-3511 .cs-badge-3::before { background: #F0ECF6; }

/* lightbulb - ideas */

.page-id-3511 .cs-badge-4 { bottom: 10%; right: -3%; color: #E8993D; animation-duration: 5.8s; animation-delay: -3.2s; }

.page-id-3511 .cs-badge-4::before { background: #FFF0E5; }

@keyframes csBadgeFloat {

    0%, 100% { transform: translateY(0) rotate(0deg); }

    50% { transform: translateY(-10px) rotate(-5deg); }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3511 .cs-badge { animation: none; }

}



/* ---- right column: narrower cards, icons outside on the left, dotted line through their centres ---- */

.page-id-3511 .elementor-element-e5ef1ff {

    --jc-badge: 72px;

    --jc-gap: 16px;

    --jc-bleed: calc(var(--jc-badge) + var(--jc-gap));

    position: relative;

    gap: 18px !important;

    padding-left: calc(var(--jc-bleed) + 10px) !important;

}



.page-id-3511 .elementor-element-e5ef1ff::before,

.page-id-3511 .elementor-element-e5ef1ff::after {

    content: '';

    position: absolute;

    left: calc(10px + var(--jc-badge) / 2 - 2px);   /* badge centre (badges start at the column's 10px padding) */

    top: var(--jc-top, 0);

    width: 4px;

    background-image: radial-gradient(circle, currentColor 1.8px, transparent 2.1px);

    background-size: 4px 10px;

    background-repeat: repeat-y;

    pointer-events: none;

    z-index: 0;

}

.page-id-3511 .elementor-element-e5ef1ff::before {

    height: var(--jc-len, 0);

    color: rgba(97, 82, 173, 0.25);

}

.page-id-3511 .elementor-element-e5ef1ff::after {

    height: calc(var(--jc-len, 0px) * var(--jc-p, 0));

    color: #6152AD;

}

/* card */

.page-id-3511 :is(.elementor-element-4593a32, .elementor-element-8b1d4dd, .elementor-element-0e252f8, .elementor-element-0205ddb) {

    position: relative;

    z-index: 1;

    width: 100% !important;

    padding: 26px 18px 26px 14px !important;

    background: #ffffff;

    border: 1px solid rgba(97, 82, 173, 0.14);

    border-radius: 18px !important;

    box-shadow: 0 10px 26px -18px rgba(97, 82, 173, 0.45) !important;

    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-3511 :is(.elementor-element-4593a32, .elementor-element-8b1d4dd, .elementor-element-0e252f8, .elementor-element-0205ddb):hover {

    transform: translateX(6px);

    border-color: rgba(97, 82, 173, 0.45);

    box-shadow: 0 18px 32px -18px rgba(97, 82, 173, 0.5) !important;

}

/* icon badge: white ring around the existing pastel icon, outside the card on the left */

.page-id-3511 :is(.elementor-element-3163e5b, .elementor-element-fefbe55, .elementor-element-38440e8, .elementor-element-d3f3a31) {

    position: absolute !important;

    top: 50%;

    left: calc(var(--jc-bleed) * -1 - 1px);   /* -1px: the card's border */

    width: var(--jc-badge) !important;

    height: var(--jc-badge) !important;

    margin-top: calc(var(--jc-badge) / -2) !important;

    padding: 5px !important;

    box-sizing: border-box;

    border-radius: 50%;

    background: #ffffff;

    border: 2px solid rgba(97, 82, 173, 0.18);

    box-shadow: 0 10px 20px -12px rgba(97, 82, 173, 0.55);

    transition: border-color 0.4s ease, box-shadow 0.4s ease, transform 0.4s ease;

}

.page-id-3511 :is(.elementor-element-3163e5b, .elementor-element-fefbe55, .elementor-element-38440e8, .elementor-element-d3f3a31) .elementor-widget-image,

.page-id-3511 :is(.elementor-element-3163e5b, .elementor-element-fefbe55, .elementor-element-38440e8, .elementor-element-d3f3a31) img {

    width: 100% !important;

    height: 100% !important;

    max-width: none !important;

    object-fit: contain;

}

.page-id-3511 :is(.elementor-element-4593a32, .elementor-element-8b1d4dd, .elementor-element-0e252f8, .elementor-element-0205ddb).jc-reached :is(.elementor-element-3163e5b, .elementor-element-fefbe55, .elementor-element-38440e8, .elementor-element-d3f3a31) {

    border-color: #6152AD;

    box-shadow: 0 0 0 5px rgba(97, 82, 173, 0.12), 0 10px 20px -12px rgba(97, 82, 173, 0.6);

}

.page-id-3511 :is(.elementor-element-4593a32, .elementor-element-8b1d4dd, .elementor-element-0e252f8, .elementor-element-0205ddb):hover :is(.elementor-element-3163e5b, .elementor-element-fefbe55, .elementor-element-38440e8, .elementor-element-d3f3a31) {

    transform: translateX(-6px) scale(1.06);   /* cancels the card's shift so the badge stays on the line */

}

/* number + text */

.page-id-3511 :is(.elementor-element-b32d8c6, .elementor-element-30e89a9, .elementor-element-9d82f4e, .elementor-element-361d7d5) {

    flex: 0 0 auto !important;

    width: auto !important;

    padding: 0 16px 0 0 !important;

}

.page-id-3511 :is(.elementor-element-b32d8c6, .elementor-element-30e89a9, .elementor-element-9d82f4e, .elementor-element-361d7d5) h2 {

    font-size: 2.6rem !important;

    line-height: 1;

    background: linear-gradient(135deg, #6152AD, #9a86ec);

    -webkit-background-clip: text;

    background-clip: text;

    color: transparent !important;

}

.page-id-3511 :is(.elementor-element-3e86b08, .elementor-element-362cf62, .elementor-element-7e26554, .elementor-element-42cd391) {

    flex: 1 1 auto !important;

    width: auto !important;

    padding: 0 0 0 16px !important;

    border-left: 1px solid rgba(97, 82, 173, 0.16);

}

.page-id-3511 :is(.elementor-element-3e86b08, .elementor-element-362cf62, .elementor-element-7e26554, .elementor-element-42cd391) .elementor-image-box-description {

    font-size: 1.5rem;

    line-height: 1.55;

    color: #2b2b38;

}



/* Wide screens: cards grow a little taller, so the picture beside them (its height follows the cards)

   gets wide enough to close most of the gap between the columns */





/* Tablet + phone: stacked columns, frame full width, smaller badges */





/* =========================================================================

   EDUCATION & ADVOCACY PAGE - REFORMING ACADEMIA PODCAST  (page-id-3511, section #1b21987,

   dark photo background). Header #fe6373e (eyebrow #c988643, heading #07c26a7, sub-line #fe5a17a),

   podcast cover #b398f72 (absolute, top right), cards grid #27f7fe2 with 4 cards

   #221849f / #838174b / #ed22ddd / #3c1c1e1 (photo + text), platform CTAs grid #2b47c4e:

   Apple #d5f65e0 (inner #c9517e4), Spotify #282b477 (#900f720), YouTube #03e5435 (#1d890d1).

   Cards become glass tiles; the three CTAs copy the home page podcast buttons (glass, brand-coloured

   border, small uppercase label over a bold platform name, no arrow).

   ========================================================================= */



/* ---- header ---- */

.page-id-3511 .elementor-element-fe5a17a .elementor-heading-title {

    font-weight: 400 !important;

    color: #c7c9db !important;

    text-wrap: balance;

}

.page-id-3511 .elementor-element-c988643.purple-heading-cen::before {

    background: #9a86ec;

}



/* ---- podcast cover: rounded, lifted, slowly floating (the tilt pokes past the right edge, so the section clips) ---- */

.page-id-3511 .elementor-element-1b21987 {

    overflow-x: clip;

}

.page-id-3511 .elementor-element-b398f72 img {

    border-radius: 18px;

    box-shadow: 0 18px 36px -14px rgba(0, 0, 0, 0.8), 0 0 0 1px rgba(255, 255, 255, 0.12);

    transform: rotate(6deg);

    animation: raCoverFloat 6s ease-in-out infinite;

}

@keyframes raCoverFloat {

    0%, 100% { transform: rotate(6deg) translateY(0); }

    50% { transform: rotate(3deg) translateY(-10px); }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3511 .elementor-element-b398f72 img { animation: none; }

}



/* ---- cards: glass tiles with an inset rounded photo ---- */

.page-id-3511 .elementor-element-27f7fe2 {

    gap: 20px !important;

}

.page-id-3511 :is(.elementor-element-221849f, .elementor-element-838174b, .elementor-element-ed22ddd, .elementor-element-3c1c1e1) {

    padding: 10px !important;

    border: 1px solid rgba(255, 255, 255, 0.14);

    border-radius: 18px !important;

    background: linear-gradient(160deg, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.03)) !important;

    -webkit-backdrop-filter: blur(12px);

    backdrop-filter: blur(12px);

    box-shadow: 0 16px 30px -20px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;

    transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease, background 0.4s ease;

}

.page-id-3511 :is(.elementor-element-221849f, .elementor-element-838174b, .elementor-element-ed22ddd, .elementor-element-3c1c1e1):hover {

    transform: translateY(-6px);

    border-color: rgba(169, 156, 245, 0.7);

    background: linear-gradient(160deg, rgba(150, 130, 235, 0.22), rgba(255, 255, 255, 0.05)) !important;

    box-shadow: 0 22px 36px -18px rgba(97, 82, 173, 0.85), inset 0 1px 0 rgba(255, 255, 255, 0.16) !important;

}

.page-id-3511 :is(.elementor-element-b4d07f8, .elementor-element-1a672f1, .elementor-element-cd76984, .elementor-element-c492ac2) {

    width: 100% !important;

    max-width: 100% !important;

    border-radius: 12px;

    overflow: hidden;

}

.page-id-3511 :is(.elementor-element-b4d07f8, .elementor-element-1a672f1, .elementor-element-cd76984, .elementor-element-c492ac2) img {

    display: block;

    width: 100% !important;

    aspect-ratio: 372 / 240;

    object-fit: cover;

    transition: transform 0.6s ease;

}

.page-id-3511 :is(.elementor-element-221849f, .elementor-element-838174b, .elementor-element-ed22ddd, .elementor-element-3c1c1e1):hover img {

    transform: scale(1.07);

}

.page-id-3511 :is(.elementor-element-d86bf28, .elementor-element-59a7e47, .elementor-element-dd18d9f, .elementor-element-91ac41c) {

    padding: 16px 8px 8px !important;

    margin: 0 !important;

    width: 100% !important;

}

/* short accent bar above each description */

.page-id-3511 :is(.elementor-element-d86bf28, .elementor-element-59a7e47, .elementor-element-dd18d9f, .elementor-element-91ac41c) .elementor-image-box-content::before {

    content: '';

    display: block;

    width: 28px;

    height: 3px;

    margin-bottom: 12px;

    border-radius: 3px;

    background: linear-gradient(90deg, #9a86ec, #c9bdfb);

    transition: width 0.35s ease;

}

.page-id-3511 :is(.elementor-element-221849f, .elementor-element-838174b, .elementor-element-ed22ddd, .elementor-element-3c1c1e1):hover .elementor-image-box-content::before {

    width: 52px;

}

.page-id-3511 :is(.elementor-element-d86bf28, .elementor-element-59a7e47, .elementor-element-dd18d9f, .elementor-element-91ac41c) .elementor-image-box-description {

    font-size: 1.5rem;

    line-height: 1.6;

    color: #dfe1f2 !important;

    text-align: left;

}



/* ---- platform CTAs (same recipe as the home page podcast buttons) ---- */

.page-id-3511 .elementor-element-2b47c4e {

    display: flex !important;

    flex-wrap: wrap;

    justify-content: center;

    gap: 14px !important;

    width: 100% !important;

    max-width: none !important;

}

.page-id-3511 :is(.elementor-element-d5f65e0, .elementor-element-282b477, .elementor-element-03e5435) {

    padding: 0 !important;

    width: auto !important;

    text-decoration: none;

    transition: transform 0.3s ease;

}

.page-id-3511 :is(.elementor-element-d5f65e0, .elementor-element-282b477, .elementor-element-03e5435):hover {

    transform: translateY(-3px);

}

.page-id-3511 :is(.elementor-element-c9517e4, .elementor-element-900f720, .elementor-element-1d890d1) {

    width: auto !important;

    min-width: 230px;

    min-height: 0 !important;

    height: auto !important;

    padding: 12px 22px 12px 16px !important;

    gap: 14px !important;

    justify-content: flex-start !important;

    border-radius: 11px !important;

    border: 1px solid #8f7fe6;          /* Apple Podcasts: purple-blue */

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.04)) !important;

    -webkit-backdrop-filter: blur(12px);

    backdrop-filter: blur(12px);

    transition: border-color 0.3s ease, background 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3511 .elementor-element-900f720 {

    border-color: #1ed760;              /* Spotify: green */

}

.page-id-3511 .elementor-element-1d890d1 {

    border-color: #ff4e45;              /* YouTube: red */

}

.page-id-3511 :is(.elementor-element-d5f65e0, .elementor-element-282b477, .elementor-element-03e5435):hover :is(.elementor-element-c9517e4, .elementor-element-900f720, .elementor-element-1d890d1) {

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.17), rgba(255, 255, 255, 0.07)) !important;

}

.page-id-3511 .elementor-element-d5f65e0:hover .elementor-element-c9517e4 { box-shadow: 0 12px 26px -14px rgba(143, 127, 230, 0.9); }

.page-id-3511 .elementor-element-282b477:hover .elementor-element-900f720 { box-shadow: 0 12px 26px -14px rgba(30, 215, 96, 0.8); }

.page-id-3511 .elementor-element-03e5435:hover .elementor-element-1d890d1 { box-shadow: 0 12px 26px -14px rgba(255, 78, 69, 0.8); }

/* icon */

.page-id-3511 :is(.elementor-element-f367700, .elementor-element-624e81c, .elementor-element-bd794ec) {

    flex: 0 0 auto !important;

    width: auto !important;

    padding: 0 !important;

}

.page-id-3511 :is(.elementor-element-f367700, .elementor-element-624e81c, .elementor-element-bd794ec) img {

    width: 34px !important;

    max-width: 34px !important;

    height: auto;

}

/* label + platform name */

.page-id-3511 :is(.elementor-element-faa640e, .elementor-element-d965632, .elementor-element-b0963dc) {

    flex: 0 0 auto !important;

    width: auto !important;

    padding: 0 !important;

    gap: 2px !important;

}

.page-id-3511 :is(.elementor-element-faa640e, .elementor-element-d965632, .elementor-element-b0963dc) .e-paragraph-base {

    margin: 0;

    color: #ffffff !important;

    white-space: nowrap;

}

.page-id-3511 :is(.elementor-element-faa640e, .elementor-element-d965632, .elementor-element-b0963dc) .e-paragraph-base:first-child {

    text-transform: uppercase;

    letter-spacing: 0.09em;

    font-size: 1.05rem !important;

    font-weight: 500;

    line-height: 1.2;

    opacity: 0.85;

}

.page-id-3511 :is(.elementor-element-faa640e, .elementor-element-d965632, .elementor-element-b0963dc) .e-paragraph-base:last-child {

    font-size: 1.6rem !important;

    font-weight: 600;

    line-height: 1.3;

}

/* the reference buttons have no arrow */

.page-id-3511 :is(.elementor-element-a5a50cc, .elementor-element-af75933, .elementor-element-443fda9) {

    display: none !important;

}





/* =========================================================================

   EDUCATION & ADVOCACY PAGE - DIVERSITY & INCLUSION IN STEM  (page-id-3511, section #d35b954,

   row #c2bb807). Left column #8b844b0 (eyebrow #aa176ac, heading #ed8ff2e, sub-line #389b8bd,

   grid #e9bb555 .discover-n-box with 4 cards #1fd2436 / #5e20e9d / #a286de5 / #9949413, each an

   image-box #d0ea3df / #986c6e5 / #1d78824 / #9d7fe40). Right column #820e154 = CTA #fd0ff13 +

   group photo #3e11be9 (cut-out PNG).

   The photo stands on a rounded lavender panel (heads pop out above it) at the top of its column,

   with the CTA under it (order swapped with CSS `order`). Cards get the site's lavender

   card recipe: soft border, ringed icon, accent bar and lift on hover.

   ========================================================================= */



/* the card grid carried the section's bottom spacing (50px padding) - moved to the section, so the

   CTA at the bottom of the photo column can line up with the last card */

.page-id-3511 .elementor-element-e9bb555 {

    padding-bottom: 0 !important;

}

.page-id-3511 .elementor-element-d35b954 > .e-con-inner {

    padding-bottom: 50px !important;

}



/* ---- right column: photo on a lavender panel at the top, CTA under it ---- */

.page-id-3511 .elementor-element-820e154 {

    position: relative;

    justify-content: flex-start !important;

    padding-bottom: 10px !important;   /* same as the left column, so the CTA ends level with the cards */

}



.page-id-3511 .elementor-element-3e11be9 {

    position: relative;

    width: 100% !important;

    max-width: 100% !important;

    margin: 0 !important;

    padding-bottom: 0 !important;

}

.page-id-3511 .elementor-element-3e11be9::before {

    content: '';

    position: absolute;

    top: 24%;

    left: 0;

    right: 0;

    bottom: 0;

    border-radius: 28px;

    background:

        radial-gradient(rgba(97, 82, 173, 0.22) 1.5px, transparent 1.6px) 16px 16px / 16px 16px,

        linear-gradient(160deg, #EFEAFF 0%, #E3DCFB 100%);

    box-shadow: 0 24px 44px -26px rgba(97, 82, 173, 0.55);

    z-index: 0;

}

.page-id-3511 .elementor-element-3e11be9 img {

    position: relative;

    z-index: 1;

    display: block;

    width: 100% !important;

    height: auto !important;

    max-width: 100% !important;

    border-radius: 0 0 28px 28px;

}

/* photo column starts level with the eyebrow on the left */



.page-id-3511 .elementor-element-3e11be9 {

    order: 1;

}

/* half-circle of the photo panel's own lavender + dot pattern hanging from under the photo (the column's

   ::after, so it's a flex item): it grows to fill the column, so the CTA lands level with the last card */

.page-id-3511 .elementor-element-820e154::after {

    content: '';

    order: 2;

    flex: 1 1 auto;

    min-height: 60px;

    align-self: center;

    width: 72%;

    margin-top: -1px;

    border-radius: 0 0 50% 50% / 0 0 100% 100%;

    background:

        radial-gradient(rgba(97, 82, 173, 0.22) 1.5px, transparent 1.6px) 8px 0 / 16px 16px,

        linear-gradient(180deg, #E3DCFB 0%, #F1EDFE 100%);

}

.page-id-3511 .elementor-element-fd0ff13 {

    order: 3;

    align-self: center;

    width: max-content !important;

    max-width: 100% !important;

    margin: 18px 0 0 !important;

}

.page-id-3511 .elementor-element-fd0ff13 .elementor-button {

    white-space: nowrap;

    box-shadow: 0 12px 24px -12px rgba(97, 82, 173, 0.8);

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3511 .elementor-element-fd0ff13 .elementor-button:hover {

    transform: translateY(-3px);

    box-shadow: 0 18px 30px -12px rgba(97, 82, 173, 0.85);

}



/* ---- cards ---- */

.page-id-3511 .elementor-element-e9bb555 {

    gap: 18px !important;

}

.page-id-3511 :is(.elementor-element-1fd2436, .elementor-element-5e20e9d, .elementor-element-a286de5, .elementor-element-9949413) {

    position: relative;

    overflow: hidden;

    padding: 20px 20px 20px 18px !important;

    background: #ffffff;

    border: 1px solid rgba(97, 82, 173, 0.16) !important;

    border-radius: 18px !important;

    box-shadow: 0 10px 26px -18px rgba(97, 82, 173, 0.45) !important;

    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;

}

/* accent bar on the left edge, grows in on hover */

.page-id-3511 :is(.elementor-element-1fd2436, .elementor-element-5e20e9d, .elementor-element-a286de5, .elementor-element-9949413)::before {

    content: '';

    position: absolute;

    left: 0;

    top: 0;

    bottom: 0;

    width: 4px;

    background: linear-gradient(180deg, #6152AD, #9a86ec);

    transform: scaleY(0);

    transform-origin: top;

    transition: transform 0.4s ease;

}

.page-id-3511 :is(.elementor-element-1fd2436, .elementor-element-5e20e9d, .elementor-element-a286de5, .elementor-element-9949413):hover {

    transform: translateY(-6px);

    border-color: rgba(97, 82, 173, 0.45) !important;

    box-shadow: 0 20px 34px -18px rgba(97, 82, 173, 0.5) !important;

}

.page-id-3511 :is(.elementor-element-1fd2436, .elementor-element-5e20e9d, .elementor-element-a286de5, .elementor-element-9949413):hover::before {

    transform: scaleY(1);

}

.page-id-3511 :is(.elementor-element-d0ea3df, .elementor-element-986c6e5, .elementor-element-1d78824, .elementor-element-9d7fe40) .elementor-image-box-wrapper {

    align-items: center;

}

/* icon: white ring + soft shadow around the lavender disc, tilts on hover */

.page-id-3511 :is(.elementor-element-d0ea3df, .elementor-element-986c6e5, .elementor-element-1d78824, .elementor-element-9d7fe40) .elementor-image-box-img {

    flex: 0 0 auto;

    width: 64px !important;

    margin: 0 18px 0 0 !important;

    border-radius: 50%;

    box-shadow: 0 0 0 4px #ffffff, 0 0 0 5px rgba(97, 82, 173, 0.18), 0 10px 18px -10px rgba(97, 82, 173, 0.6);

    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.4s ease;

}

.page-id-3511 :is(.elementor-element-d0ea3df, .elementor-element-986c6e5, .elementor-element-1d78824, .elementor-element-9d7fe40) .elementor-image-box-img img {

    display: block;

    width: 100%;

    height: auto;

    border-radius: 50%;

}

.page-id-3511 :is(.elementor-element-1fd2436, .elementor-element-5e20e9d, .elementor-element-a286de5, .elementor-element-9949413):hover .elementor-image-box-img {

    transform: scale(1.08) rotate(-6deg);

    box-shadow: 0 0 0 4px #ffffff, 0 0 0 5px rgba(97, 82, 173, 0.45), 0 12px 20px -10px rgba(97, 82, 173, 0.7);

}

.page-id-3511 :is(.elementor-element-d0ea3df, .elementor-element-986c6e5, .elementor-element-1d78824, .elementor-element-9d7fe40) .elementor-image-box-content {

    padding-left: 0 !important;

}

.page-id-3511 :is(.elementor-element-d0ea3df, .elementor-element-986c6e5, .elementor-element-1d78824, .elementor-element-9d7fe40) .elementor-image-box-description {

    font-size: 1.5rem;

    line-height: 1.6;

    color: #2b2b38;

}



/* Tablet + phone: photo panel under the cards, centred and not wider than 460px */





/* =========================================================================

   EDUCATION & ADVOCACY PAGE - YOUR TURN  (newsletter; page-id-3511, section #3609047, row #06fcc87,

   text column #ca8bb9f: eyebrow #6327b00, heading #fc1e05b, "Subscribe" #6eb8d1c; photo column #80f264a

   with the cut-out photo #3cb1dc9 - head and laptop reach above the photo's own rectangle).

   Full-width section gradient, purple at the bottom fading to white at the top. Soft glow + three

   floating icon badges around the photo (custom.js, same idea as the Science Communication newsletter).

   ========================================================================= */

.page-id-3511 .elementor-element-3609047 {

    background: linear-gradient(0deg, #D6CBFA 0%, #EDE8FD 45%, #FFFFFF 100%) !important;

}

.page-id-3511 .elementor-element-3609047 > .e-con-inner {

    padding-top: 50px !important;

    padding-bottom: 60px !important;

}

.page-id-3511 .elementor-element-06fcc87 {

    position: relative;

    isolation: isolate;

    align-items: center !important;

}

/* dotted patch, top right of the text */

.page-id-3511 .elementor-element-06fcc87::after {

    content: '';

    position: absolute;

    top: 30px;

    left: 40%;

    width: 88px;

    height: 64px;

    background: radial-gradient(rgba(97, 82, 173, 0.35) 1.6px, transparent 1.7px) 0 0 / 14px 14px;

    z-index: -1;

    pointer-events: none;

}



/* text column */

.page-id-3511 .elementor-element-ca8bb9f {

    justify-content: center !important;

    padding: 24px 32px 24px 10px !important;

}

.page-id-3511 .elementor-element-6eb8d1c {

    margin-top: 6px;

}

.page-id-3511 .elementor-element-6eb8d1c .elementor-button {

    padding-left: 26px !important;

    padding-right: 26px !important;

    box-shadow: 0 14px 26px -14px rgba(97, 82, 173, 0.9);

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3511 .elementor-element-6eb8d1c .elementor-button:hover {

    transform: translateY(-3px);

    box-shadow: 0 20px 32px -14px rgba(97, 82, 173, 0.95);

}



/* photo column: glow behind, badges around */

.page-id-3511 .elementor-element-80f264a {

    position: relative;

    align-self: center !important;

}

.page-id-3511 .elementor-element-3cb1dc9 {

    position: relative;

    z-index: 1;

}

.page-id-3511 .elementor-element-3cb1dc9 img {

    display: block;

    border-radius: 24px;

}

.page-id-3511 .yt-glow {

    position: absolute;

    z-index: 0;

    top: 55%;

    left: 50%;

    width: 80%;

    height: 70%;

    transform: translate(-50%, -50%);

    border-radius: 50%;

    background: radial-gradient(circle, rgba(150, 130, 235, 0.55) 0%, rgba(150, 130, 235, 0) 70%);

    filter: blur(26px);

    animation: ytGlowPulse 6s ease-in-out infinite;

    pointer-events: none;

}

.page-id-3511 .yt-badge {

    position: absolute;

    z-index: 2;

    width: 54px;

    height: 54px;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    background: #ffffff;

    box-shadow: 0 12px 24px -10px rgba(97, 82, 173, 0.55);

    animation: ytBadgeFloat 5s ease-in-out infinite;

    pointer-events: none;

}

.page-id-3511 .yt-badge::before {

    content: '';

    position: absolute;

    inset: 6px;

    border-radius: 50%;

}

.page-id-3511 .yt-badge svg {

    position: relative;

    width: 23px;

    height: 23px;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;

}

/* envelope - newsletter */

.page-id-3511 .yt-badge-1 { top: 34%; left: -30px; color: #6152AD; animation-duration: 5.5s; animation-delay: -0.8s; }

.page-id-3511 .yt-badge-1::before { background: #F0ECF6; }

/* flask - science */

.page-id-3511 .yt-badge-2 { bottom: 16%; left: -18px; color: #E8993D; animation-duration: 6.2s; animation-delay: -2.6s; }

.page-id-3511 .yt-badge-2::before { background: #FFF0E5; }

/* bell - new issue */

.page-id-3511 .yt-badge-3 { top: 20%; right: -22px; color: #BC1888; animation-duration: 4.8s; animation-delay: -1.6s; }

.page-id-3511 .yt-badge-3::before { background: #FBEAF5; }

@keyframes ytGlowPulse {

    0%, 100% { opacity: 0.7; transform: translate(-50%, -50%) scale(1); }

    50% { opacity: 1; transform: translate(-50%, -50%) scale(1.1); }

}

@keyframes ytBadgeFloat {

    0%, 100% { transform: translateY(0) rotate(0deg); }

    50% { transform: translateY(-10px) rotate(-4deg); }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3511 :is(.yt-glow, .yt-badge) { animation: none; }

}



/* Tablet: side by side, using the full content width */



/* Phone: text on top, photo under it */





/* =========================================================================

   SCIENCE READS PAGE - NEWSLETTER  (page-id-3495, section #c574d31 = .always-section, row #0e02d26,

   photo column #c09cf79 / widget #500ecc1, text column #0c8b010 = heading #3e43f92 (h1.section-heading),

   paragraph, button #e6bdd34 = .newsletter-popup-btn).

   The dark-to-purple band is .always-section::after. Adds soft light + dot texture to the band, a photo

   with a deeper shadow / glow / light ring, a "Newsletter" eyebrow chip, a larger heading, and a white

   pill button that lifts on hover. CSS only.

   ========================================================================= */

.page-id-3495 .elementor-element-c574d31.always-section::after {

    height: 68%;

    border-radius: 0;

    background:

        radial-gradient(circle at 82% 22%, rgba(190, 170, 255, 0.28) 0%, rgba(190, 170, 255, 0) 42%),

        radial-gradient(circle at 60% 110%, rgba(232, 153, 61, 0.16) 0%, rgba(232, 153, 61, 0) 45%),

        radial-gradient(rgba(255, 255, 255, 0.10) 1.2px, transparent 1.6px) 0 0 / 26px 26px,

        linear-gradient(135deg, #060A11 0%, #2d2463 48%, #6152AD 100%);

}



/* photo */

.page-id-3495 .elementor-element-500ecc1 {

    isolation: isolate;

}

.page-id-3495 .elementor-element-500ecc1::before {

    content: '';

    position: absolute;

    inset: 8% 6% -4% 6%;

    z-index: -1;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(160, 140, 245, 0.6) 0%, rgba(160, 140, 245, 0) 70%);

    filter: blur(34px);

    pointer-events: none;

}

.page-id-3495 .elementor-element-500ecc1 img {

    display: block;

    border-radius: 28px !important;

    box-shadow:

        0 0 0 6px rgba(255, 255, 255, 0.14),

        0 30px 60px -20px rgba(6, 10, 17, 0.7);

    transition: transform 0.5s ease, box-shadow 0.5s ease;

}

.page-id-3495 .elementor-element-c09cf79:hover .elementor-element-500ecc1 img {

    transform: translateY(-6px) scale(1.01);

    box-shadow:

        0 0 0 6px rgba(255, 255, 255, 0.22),

        0 40px 70px -22px rgba(6, 10, 17, 0.75);

}



/* text */

.page-id-3495 .elementor-element-0c8b010 {

    gap: 0 !important;

    align-items: flex-start !important;

}

.page-id-3495 .elementor-element-3e43f92::before {

    content: 'Newsletter';

    display: inline-block;

    margin-bottom: 16px;

    padding: 6px 16px;

    border-radius: 999px;

    border: 1px solid rgba(255, 255, 255, 0.3);

    background: rgba(255, 255, 255, 0.1);

    color: #ffffff;

    font-size: 1.4rem;

    font-weight: 700;

    letter-spacing: 0.14em;

    text-transform: uppercase;

    line-height: 1.2;

    backdrop-filter: blur(4px);

}

.page-id-3495 .elementor-element-c574d31 .section-heading {

    font-size: clamp(3.2rem, 2.4rem + 1.5vw, 4.6rem);

    line-height: 1.15;

    letter-spacing: -0.01em;

    color: #ffffff;

}

.page-id-3495 .elementor-element-0c8b010 p {

    margin: 14px 0 26px !important;

    max-width: 44ch;

    font-size: clamp(1.6rem, 1.5rem + 0.2vw, 1.9rem);

    line-height: 1.55;

    color: rgba(255, 255, 255, 0.85);

}



/* button */

.page-id-3495 .elementor-element-e6bdd34 .elementor-button {

    background: #ffffff !important;

    color: #2d2463 !important;

    border-radius: 11px !important;

    padding: 14px 30px !important;

    font-weight: 700;

    box-shadow: 0 14px 28px -12px rgba(6, 10, 17, 0.6);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;

}

.page-id-3495 .elementor-element-e6bdd34 .elementor-button-icon svg path {

    fill: #6152AD;

}

.page-id-3495 .elementor-element-e6bdd34 .elementor-button-icon svg {

    transition: transform 0.3s ease;

}

.page-id-3495 .elementor-element-e6bdd34 .elementor-button:hover {

    transform: translateY(-3px);

    background: #f3efff !important;

    box-shadow: 0 20px 34px -12px rgba(6, 10, 17, 0.7);

}

.page-id-3495 .elementor-element-e6bdd34 .elementor-button:hover .elementor-button-icon svg {

    transform: translateX(4px);

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3495 .elementor-element-500ecc1 img,

    .page-id-3495 .elementor-element-e6bdd34 .elementor-button {

        transition: none;

    }

}





/* =========================================================================

   SCIENCE READS PAGE - "BEHIND THE LIST"  (page-id-3495, section #d830700, row #bee6e30,

   photo col #e893940 / image #e9074ac (arch PNG), text col #39e0cc1 = eyebrow #3857873,

   heading #95a267f, paragraph). The floating icons come from customjs/custom.js (see above).

   Adds a soft lavender wash behind the row, a glow + dotted grid + ring behind the arch photo

   (the PNG has its own arch/offset border, so the shadow is a drop-shadow that follows its

   shape), and turns the paragraph into a light card with a purple accent edge. CSS only.

   ========================================================================= */

.page-id-3495 .elementor-element-d830700 {

    background:

        radial-gradient(ellipse 55% 70% at 22% 55%, rgba(97, 82, 173, 0.10) 0%, rgba(97, 82, 173, 0) 70%),

        radial-gradient(ellipse 40% 50% at 92% 85%, rgba(232, 153, 61, 0.08) 0%, rgba(232, 153, 61, 0) 70%),

        #ffffff;

}



/* photo column decor (behind the image widget and the floating icons) */

.page-id-3495 .elementor-element-e893940::before,

.page-id-3495 .elementor-element-e893940::after {

    content: '';

    position: absolute;

    pointer-events: none;

    z-index: 0;

}

.page-id-3495 .elementor-element-e893940::before {

    width: 88%;

    aspect-ratio: 1;

    left: 6%;

    top: 4%;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(97, 82, 173, 0.22) 0%, rgba(97, 82, 173, 0) 68%);

    filter: blur(22px);

}

.page-id-3495 .elementor-element-e893940::after {

    width: 34%;

    height: 34%;

    right: -6%;

    bottom: -4%;

    background: radial-gradient(rgba(97, 82, 173, 0.45) 1.6px, transparent 2px) 0 0 / 16px 16px;

    opacity: 0.8;

}

.page-id-3495 .elementor-element-e893940 .elementor-element-e9074ac {

    position: relative;

    z-index: 1;

}

.page-id-3495 .elementor-element-e893940 .elementor-element-e9074ac img {

    filter: drop-shadow(0 24px 30px rgba(45, 36, 99, 0.28));

}



/* text column */

.page-id-3495 .elementor-element-39e0cc1 .section-heading {

    font-size: clamp(3rem, 2.3rem + 1.4vw, 4.8rem);

    line-height: 1.15;

}

.page-id-3495 .elementor-element-39e0cc1 > p {

    position: relative;

    margin-top: 6px;

    padding: 22px 26px 22px 30px;

    border-radius: 12px;

    background: #ffffff;

    border: 1px solid rgba(97, 82, 173, 0.14);

    box-shadow: 0 18px 40px -22px rgba(45, 36, 99, 0.35);

    font-size: clamp(1.6rem, 1.5rem + 0.2vw, 1.85rem);

    line-height: 1.7;

    color: #1d1b2e;

}

.page-id-3495 .elementor-element-39e0cc1 > p::before {

    content: '';

    position: absolute;

    left: 0;

    top: 16px;

    bottom: 16px;

    width: 4px;

    border-radius: 0 4px 4px 0;

    background: linear-gradient(180deg, #6152AD, #E8993D);

}



/* "Behind the List": floating icons removed (hidden here, custom.js untouched) and the dotted grid

   is repeated at the photo's top-left corner (bottom-right one is .elementor-element-e893940::after). */

.page-id-3495 .elementor-element-e893940 .story-float-icon {

    display: none !important;

}

.page-id-3495 .elementor-element-e893940 .elementor-element-e9074ac::before {

    content: '';

    position: absolute;

    width: 34%;

    height: 34%;

    left: -6%;

    top: -4%;

    z-index: -1;

    pointer-events: none;

    background: radial-gradient(rgba(97, 82, 173, 0.45) 1.6px, transparent 2px) 0 0 / 16px 16px;

    opacity: 0.8;

}





/* =========================================================================

   SCIENCE READS PAGE - SHELF TALKS  (page-id-3495, section #99fc464, slider shortcode

   .science-slider-wrap > .science-slider > .cvp-card (thumb .cvp-thumb img + .cvp-play, title

   .cvp-title), arrows .science-prev / .science-next). The shortcode prints its own inline CSS,

   so everything here is scoped under .page-id-3495 to win over it.

   YouTube's hqdefault thumbnails carry black letterbox bars: the image is cropped to 16:9 with

   object-fit: cover, which trims exactly those bars. Cards get a hover lift, a soft dark overlay

   on the thumbnail, a pulsing play button, clamped two-line titles and white arrow buttons.

   ========================================================================= */

.page-id-3495 .science-slider-wrap .science-slider {

    padding: 14px 6px 32px;

    gap: 28px;

}

.page-id-3495 .science-slider-wrap .cvp-card {

    display: flex;

    flex-direction: column;

    margin: 0;

    border-radius: 16px;

    border: 1px solid rgba(97, 82, 173, 0.10);

    box-shadow: 0 16px 34px -20px rgba(45, 36, 99, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;

}

.page-id-3495 .science-slider-wrap .cvp-card:hover {

    transform: translateY(-8px);

    box-shadow: 0 28px 44px -20px rgba(45, 36, 99, 0.55);

}

.page-id-3495 .science-slider-wrap .cvp-thumb {

    overflow: hidden;

}

.page-id-3495 .science-slider-wrap .cvp-thumb img {

    aspect-ratio: 16 / 9;

    object-fit: cover;

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3495 .science-slider-wrap .cvp-card:hover .cvp-thumb img {

    transform: scale(1.07);

}

.page-id-3495 .science-slider-wrap .cvp-thumb::after {

    content: '';

    position: absolute;

    inset: 0;

    background: linear-gradient(180deg, rgba(6, 10, 17, 0) 45%, rgba(45, 36, 99, 0.45) 100%);

    pointer-events: none;

}

.page-id-3495 .science-slider-wrap .cvp-play {

    z-index: 2;

    width: 62px;

    height: 62px;

    box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.28), 0 10px 24px rgba(6, 10, 17, 0.4);

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3495 .science-slider-wrap .cvp-card:hover .cvp-play {

    transform: translate(-50%, -50%) scale(1.12);

    box-shadow: 0 0 0 12px rgba(255, 255, 255, 0.32), 0 14px 28px rgba(6, 10, 17, 0.45);

}

.page-id-3495 .science-slider-wrap .cvp-title {

    flex: 1;

    display: -webkit-box;

    -webkit-box-orient: vertical;

    -webkit-line-clamp: 3;

    overflow: hidden;

    padding: 18px 20px 20px;

    font-size: 1.7rem;

    font-weight: 700;

    line-height: 1.4;

    color: #1d1b2e;

}



/* arrows */

.page-id-3495 .science-slider-wrap .science-prev,

.page-id-3495 .science-slider-wrap .science-next {

    background: #ffffff;

    color: #6152AD;

    width: 44px;

    height: 44px;

    min-width: 44px;

    min-height: 44px;

    font-size: 2.2rem;

    box-shadow: 0 10px 24px -8px rgba(45, 36, 99, 0.5);

    transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease;

}

.page-id-3495 .science-slider-wrap .science-prev:hover,

.page-id-3495 .science-slider-wrap .science-next:hover {

    background: #6152AD;

    color: #ffffff;

    transform: translateY(-50%) scale(1.08);

}



@media (prefers-reduced-motion: reduce) {

    .page-id-3495 .science-slider-wrap .cvp-card,

    .page-id-3495 .science-slider-wrap .cvp-thumb img,

    .page-id-3495 .science-slider-wrap .cvp-play {

        transition: none;

    }

}





/* =========================================================================

   SCIENCE READS PAGE - THE FULL SHELF  (page-id-3495, section #9c5ea54, shortcode #481d75a:

   .year-filter > .filter-btn, .books-grid > .book-card[data-year] > a.full-book-link >

   .elementor-book-card > .book-image + .book-content (.book-title, .book-author)).

   The .book-card / .filter-btn base rules are global, so these are scoped to this page. The card's

   pastel panel is .book-card::after; the year chip uses ::before (from data-year). Adds: nicer filter

   pills, a card that lifts on hover (panel gets a border + shadow, the book rises and its shadow

   deepens), a year chip on the panel, and a purple title + sliding arrow on hover.

   ========================================================================= */

.page-id-3495 .year-filter {

    flex-wrap: wrap;

    gap: 12px;

}

.page-id-3495 .year-filter .filter-btn {

    padding: 8px 30px;

    font-size: 1.5rem;

    font-weight: 600;

    letter-spacing: 0.04em;

    background: #ffffff;

    border: 1px solid rgba(97, 82, 173, 0.35);

    color: #2d2463;

    box-shadow: 0 6px 16px -10px rgba(45, 36, 99, 0.4);

    cursor: pointer;

    transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;

}

.page-id-3495 .year-filter .filter-btn:hover {

    transform: translateY(-2px);

    background: #E8D8FF;

    border-color: #6152AD;

}

.page-id-3495 .year-filter .filter-btn.active {

    background: linear-gradient(135deg, #060A11 0%, #2d2463 60%, #6152AD 100%);

    border-color: transparent;

    color: #ffffff;

    box-shadow: 0 12px 22px -10px rgba(97, 82, 173, 0.7);

}



.page-id-3495 .books-grid {

    gap: 28px 24px;

    margin-top: 56px;

}

.page-id-3495 .books-grid > .book-card {

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3495 .books-grid > .book-card:hover {

    transform: translateY(-8px);

}

.page-id-3495 .books-grid > .book-card::after {

    height: 61%;

    border-radius: 22px;

    background: linear-gradient(180deg, #FFF0E5 0%, #F3ECFD 100%);

    border: 1px solid rgba(97, 82, 173, 0.12);

    box-shadow: 0 16px 30px -22px rgba(45, 36, 99, 0.5);

    transition: box-shadow 0.4s ease, border-color 0.4s ease;

}

.page-id-3495 .books-grid > .book-card:hover::after {

    border-color: rgba(97, 82, 173, 0.35);

    box-shadow: 0 30px 44px -24px rgba(45, 36, 99, 0.6);

}

/* year chip */

.page-id-3495 .books-grid > .book-card::before {

    content: attr(data-year);

    position: absolute;

    right: 16px;

    top: calc(39% + 14px);

    z-index: 1;

    padding: 4px 12px;

    border-radius: 999px;

    background: rgba(255, 255, 255, 0.85);

    border: 1px solid rgba(97, 82, 173, 0.25);

    color: #6152AD;

    font-size: 1.2rem;

    font-weight: 700;

    letter-spacing: 0.06em;

    line-height: 1.2;

}

.page-id-3495 .books-grid .book-image {

    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease;

}

.page-id-3495 .books-grid > .book-card:hover .book-image {

    transform: perspective(1000px) rotateY(4deg) skewY(-1deg) scale(0.74) translateY(-6px);

    box-shadow: 1px 1px 0px #fff, 2px 1.5px 0px #e0e0e0, 3px 2px 0px #ccc, 4px 2.5px 0px #b3b3b3, 12px 18px 24px rgba(45, 36, 99, 0.35);

}

.page-id-3495 .books-grid .book-title {

    transition: color 0.3s ease;

}

.page-id-3495 .books-grid > .book-card:hover .book-title {

    color: #6152AD;

}

.page-id-3495 .books-grid .book-author {

    color: #4a4763;

}

.page-id-3495 .books-grid .book-author::after {

    content: '\2192';

    display: inline-block;

    margin-left: 8px;

    font-style: normal;

    font-weight: 700;

    color: #6152AD;

    opacity: 0;

    transform: translateX(-6px);

    transition: opacity 0.3s ease, transform 0.3s ease;

}

.page-id-3495 .books-grid > .book-card:hover .book-author::after {

    opacity: 1;

    transform: translateX(0);

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3495 .year-filter .filter-btn,

    .page-id-3495 .books-grid > .book-card,

    .page-id-3495 .books-grid .book-image,

    .page-id-3495 .books-grid .book-author::after {

        transition: none;

    }

}





/* =========================================================================

   RESEARCH ADVICE PAGE - "WHAT DOES RESEARCH LOOK LIKE?"  (page-id-3494, section #647606e, row #2cd11b8,

   photo col #e60a0e4 / image #5246afb (cut-out PNG: purple rounded box + head poking out the top),

   text col #efc69c3 = eyebrow #b4c24c2, heading #a377f74 (h1.section-heading), paragraph).

   Same treatment as the Science Reads "Behind the List" section: lavender wash behind the row, a

   glow + a ring and two dots around the photo (drop-shadow follows the cut-out's shape), a bigger heading

   and the paragraph as a light card with a purple accent bar. CSS only.

   ========================================================================= */

.page-id-3494 .elementor-element-647606e {

    background:

        radial-gradient(ellipse 50% 75% at 26% 60%, rgba(97, 82, 173, 0.10) 0%, rgba(97, 82, 173, 0) 70%),

        radial-gradient(ellipse 40% 50% at 94% 20%, rgba(232, 153, 61, 0.08) 0%, rgba(232, 153, 61, 0) 70%),

        #ffffff;

}



/* photo column decor */

.page-id-3494 .elementor-element-e60a0e4::before,

.page-id-3494 .elementor-element-e60a0e4::after {

    /* outlined ring, bottom right */

    width: 92px;

    height: 92px;

    right: -3%;

    bottom: 10%;

    border-radius: 50%;

    border: 3px solid rgba(97, 82, 173, 0.35);

}

.page-id-3494 .elementor-element-e60a0e4 .elementor-element-5246afb {

    position: relative;

    z-index: 1;

}

.page-id-3494 .elementor-element-e60a0e4 .elementor-element-5246afb::before,

.page-id-3494 .elementor-element-e60a0e4 .elementor-element-5246afb::after {

    content: '';

    position: absolute;

    z-index: -1;

    border-radius: 50%;

    pointer-events: none;

}

/* small light-purple dot inside the purple box, gently bobbing */

.page-id-3494 .elementor-element-e60a0e4 .elementor-element-5246afb::before {

    width: 22px;

    height: 22px;

    right: 4%;

    top: 41%;

    z-index: 2;

    background: #B9A8FF;

    box-shadow: 0 8px 18px -6px rgba(120, 100, 220, 0.7);

    animation: raDotFloat 6s ease-in-out infinite;

}

@keyframes raDotFloat {

    0%, 100% { transform: translate(0, 0); }

    50%      { transform: translate(-3px, -8px); }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3494 .elementor-element-e60a0e4 .elementor-element-5246afb::before {

        animation: none;

    }

}

/* soft lavender disc, left of the purple box */

.page-id-3494 .elementor-element-e60a0e4 .elementor-element-5246afb::after {

    width: 64px;

    height: 64px;

    left: -6%;

    top: 30%;

    background: #E8D8FF;

}

.page-id-3494 .elementor-element-e60a0e4 .elementor-element-5246afb img {

    display: block;

    /* the PNG's last pixel row is transparent, which showed as a 1px light line above the footer;

       pulling the image down 1px tucks that row under the footer */

    margin-bottom: -1px;

    filter: drop-shadow(0 22px 26px rgba(45, 36, 99, 0.28));

}



/* text column */

.page-id-3494 .elementor-element-efc69c3 .section-heading {

    font-size: clamp(3rem, 2.3rem + 1.4vw, 4.8rem);

    line-height: 1.15;

}

.page-id-3494 .elementor-element-efc69c3 > p {

    position: relative;

    margin-top: 6px;

    padding: 6px 0 6px 26px;

    font-size: clamp(1.6rem, 1.5rem + 0.2vw, 1.85rem);

    line-height: 1.7;

    color: #1d1b2e;

}

.page-id-3494 .elementor-element-efc69c3 > p::before {

    content: '';

    position: absolute;

    left: 0;

    top: 4px;

    bottom: 4px;

    width: 4px;

    border-radius: 0 4px 4px 0;

    background: #6152AD;

}





/* =========================================================================

   RESEARCH ADVICE PAGE - "RECENT RESEARCH ADVICE"  (page-id-3494, section #4367fb9, shortcode #ecd2667

   .recentAdvice > .featured-research-wrapper > .featured-main-post (img, .featured-main-title,

   .featured-main-excerpt) + .featured-side-posts > .featured-side-item (.featured-side-image,

   .featured-side-content: title, excerpt, date)). The shortcode prints its own inline CSS and the

   .recentAdvice rules are shared with other pages, so this is scoped to this page. Dark section:

   the featured post and every side post become frosted-glass cards with a hover lift + purple glow, a

   "Featured" chip sits on the big photo, side rows share the featured card's height, and the dates are

   small lavender caps. CSS only.

   ========================================================================= */

.page-id-3494 .recentAdvice .featured-research-wrapper {

    gap: 28px;

    align-items: stretch;

}



/* featured post card */

.page-id-3494 .recentAdvice .featured-main-post {

    position: relative;

    padding: 14px 14px 26px;

    border-radius: 26px;

    background: rgba(255, 255, 255, 0.05);

    border: 1px solid rgba(255, 255, 255, 0.12);

    backdrop-filter: blur(8px);

    box-shadow: 0 30px 60px -34px rgba(0, 0, 0, 0.8);

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.4s ease, box-shadow 0.4s ease;

}

.page-id-3494 .recentAdvice .featured-main-post:hover {

    transform: translateY(-6px);

    border-color: rgba(152, 128, 244, 0.55);

    box-shadow: 0 34px 64px -30px rgba(97, 82, 173, 0.75);

}

.page-id-3494 .recentAdvice .featured-main-post > a {

    display: block;

    overflow: hidden;

    border-radius: 18px;

}

.page-id-3494 .recentAdvice .featured-main-post img {

    display: block;

    border-radius: 18px;

    transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3494 .recentAdvice .featured-main-post:hover img {

    transform: scale(1.05);

}

.page-id-3494 .recentAdvice .featured-main-post::before {

    content: 'Featured';

    position: absolute;

    top: 30px;

    left: 30px;

    z-index: 2;

    padding: 6px 14px;

    border-radius: 999px;

    background: #6152AD;

    color: #ffffff;

    font-size: 1.2rem;

    font-weight: 700;

    letter-spacing: 0.12em;

    text-transform: uppercase;

    line-height: 1.2;

    box-shadow: 0 8px 18px -6px rgba(97, 82, 173, 0.8);

}

.page-id-3494 .recentAdvice .featured-main-title {

    margin: 22px 10px 10px;

    font-size: clamp(2rem, 1.7rem + 0.5vw, 2.6rem);

    line-height: 1.25;

}

.page-id-3494 .recentAdvice .featured-main-title a,

.page-id-3494 .recentAdvice .featured-side-title a {

    transition: color 0.3s ease;

}

.page-id-3494 .recentAdvice .featured-main-post:hover .featured-main-title a,

.page-id-3494 .recentAdvice .featured-side-item:hover .featured-side-title a {

    color: #b9a8ff;

}

.page-id-3494 .recentAdvice .featured-main-excerpt {

    margin: 0 10px;

    font-size: clamp(1.5rem, 1.4rem + 0.2vw, 1.7rem);

    line-height: 1.6;

    color: rgba(255, 255, 255, 0.72);

}



/* side posts */

.page-id-3494 .recentAdvice .featured-side-posts {

    gap: 16px;

    justify-content: space-between;

}

.page-id-3494 .recentAdvice .featured-side-item {

    flex: 1;

    align-items: center;

    gap: 20px;

    padding: 14px;

    border-radius: 22px;

    background: rgba(255, 255, 255, 0.05);

    border: 1px solid rgba(255, 255, 255, 0.10);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), background 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;

}

.page-id-3494 .recentAdvice .featured-side-item:hover {

    transform: translateX(6px);

    background: rgba(97, 82, 173, 0.18);

    border-color: rgba(152, 128, 244, 0.5);

    box-shadow: 0 20px 40px -26px rgba(97, 82, 173, 0.8);

}

.page-id-3494 .recentAdvice .featured-side-image {

    width: 150px;

    height: 104px;

    flex: none;

    overflow: hidden;

    border-radius: 14px;

}

.page-id-3494 .recentAdvice .featured-side-image a {

    display: block;

    height: 100%;

}

.page-id-3494 .recentAdvice .featured-side-image img {

    width: 100%;

    height: 100%;

    min-height: 0;

    border-radius: 14px;

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3494 .recentAdvice .featured-side-item:hover .featured-side-image img {

    transform: scale(1.08);

}

.page-id-3494 .recentAdvice .featured-side-title {

    margin-bottom: 6px;

    font-size: clamp(1.6rem, 1.5rem + 0.2vw, 1.85rem);

}

.page-id-3494 .recentAdvice .featured-side-excerpt {

    margin-bottom: 8px;

    font-size: 1.4rem;

    line-height: 1.5;

    color: rgba(255, 255, 255, 0.68);

}

.page-id-3494 .recentAdvice .featured-side-date {

    font-size: 1.2rem;

    font-style: normal;

    font-weight: 600;

    letter-spacing: 0.08em;

    text-transform: uppercase;

    color: #a894f5;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3494 .recentAdvice .featured-main-post,

    .page-id-3494 .recentAdvice .featured-main-post img,

    .page-id-3494 .recentAdvice .featured-side-item,

    .page-id-3494 .recentAdvice .featured-side-image img {

        transition: none;

    }

}





/* RECENT RESEARCH ADVICE - FLOATING ICONS  (page-id-3494, section #4367fb9; the spans are built by

   customjs/custom.js). Six thin lavender line icons (flask, open book, lightbulb, magnifier, DNA, atom)

   drift and turn slowly behind the cards, kept to the side margins so they don't sit on the text.

   Existing background image icons (atom top-left, molecule top-right, flask bottom-right) are untouched. */

.page-id-3494 .elementor-element-4367fb9 {

    overflow: clip;

}

.page-id-3494 .elementor-element-4367fb9 > .e-con-inner {

    position: relative;

    z-index: 1;

}

.page-id-3494 .elementor-element-4367fb9 .ra-float {

    position: absolute;

    z-index: 0;

    display: block;

    color: rgba(169, 148, 245, 0.6);

    pointer-events: none;

    filter: drop-shadow(0 0 10px rgba(152, 128, 244, 0.35));

    animation: raFloat var(--dur, 9s) ease-in-out infinite;

    animation-delay: var(--delay, 0s);

}

.page-id-3494 .elementor-element-4367fb9 .ra-float svg {

    display: block;

    width: 100%;

    height: 100%;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.3;

    stroke-linecap: round;

    stroke-linejoin: round;

}

.page-id-3494 .elementor-element-4367fb9 .ra-float-1 { width: 56px; height: 56px; left: 4%;  top: 34%; --dur: 9s;  --delay: -1s;  --x: 10px;  --y: -22px; --r: 10deg; }

.page-id-3494 .elementor-element-4367fb9 .ra-float-2 { width: 50px; height: 50px; left: 9%;  top: 68%; --dur: 11s; --delay: -4s;  --x: -8px;  --y: -26px; --r: -8deg; }

.page-id-3494 .elementor-element-4367fb9 .ra-float-3 { width: 44px; height: 44px; right: 5%; top: 40%; --dur: 8s;  --delay: -2s;  --x: -10px; --y: -20px; --r: 12deg; }

.page-id-3494 .elementor-element-4367fb9 .ra-float-4 { width: 48px; height: 48px; left: 20%; top: 9%;  --dur: 12s; --delay: -6s;  --x: 14px;  --y: 16px;  --r: -14deg; }

.page-id-3494 .elementor-element-4367fb9 .ra-float-5 { width: 54px; height: 54px; right: 10%; top: 12%; --dur: 10s; --delay: -3s;  --x: -12px; --y: 20px;  --r: 180deg; opacity: .9; }

.page-id-3494 .elementor-element-4367fb9 .ra-float-6 { width: 60px; height: 60px; right: 14%; bottom: 6%; --dur: 13s; --delay: -7s; --x: 12px;  --y: -18px; --r: 90deg; }

@keyframes raFloat {

    0%, 100% { transform: translate(0, 0) rotate(0deg); }

    50%      { transform: translate(var(--x, 8px), var(--y, -20px)) rotate(var(--r, 8deg)); }

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3494 .elementor-element-4367fb9 .ra-float {

        animation: none;

    }

}





/* =========================================================================

   RESEARCH ADVICE PAGE - "RESEARCH TIPS & ADVICE"  (page-id-3494, section #92fd38f, shortcode #8d09196:

   .research-grid > .research-item > .research-card (.research-image img + .research-content: .research-title,

   .research-excerpt, .research-date), .load-more-wrap > .load-more-btn). The shortcode prints its own

   inline CSS and .research-date is styled globally, so everything is scoped to this page.

   Cards go from flat beige boxes to cream-to-lavender cards with a padded, rounded photo, equal row

   heights, clamped excerpts, a date chip and a hover lift (purple accent bar, image zoom, purple title).

   ========================================================================= */

.page-id-3494 .elementor-element-92fd38f {

    background: linear-gradient(180deg, #ffffff 0%, #f8f5ff 100%);

}

.page-id-3494 .research-grid {

    gap: 24px;

    align-items: stretch;

}

.page-id-3494 .research-item {

    display: flex;

}

.page-id-3494 .research-card {

    position: relative;

    width: 100%;

    align-items: stretch;

    gap: 6px;

    padding: 12px;

    border-radius: 22px;

    background: linear-gradient(135deg, #FFF6EE 0%, #F6F1FF 100%);

    border: 1px solid rgba(97, 82, 173, 0.12);

    box-shadow: 0 16px 34px -24px rgba(45, 36, 99, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-3494 .research-card::before {

    content: '';

    position: absolute;

    left: 0;

    top: 24px;

    bottom: 24px;

    width: 4px;

    border-radius: 0 4px 4px 0;

    background: #6152AD;

    transform: scaleY(0);

    transform-origin: center;

    transition: transform 0.35s ease;

}

.page-id-3494 .research-card:hover {

    transform: translateY(-6px);

    border-color: rgba(97, 82, 173, 0.35);

    box-shadow: 0 28px 44px -24px rgba(45, 36, 99, 0.55);

}

.page-id-3494 .research-card:hover::before {

    transform: scaleY(1);

}

.page-id-3494 .research-image {

    align-self: stretch;

    height: auto;

    min-height: 160px;

    overflow: hidden;

    border-radius: 16px;

}

.page-id-3494 .research-image a {

    display: block;

    height: 100%;

}

.page-id-3494 .research-image img {

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3494 .research-card:hover .research-image img {

    transform: scale(1.07);

}

.page-id-3494 .research-content {

    padding: 12px 18px 8px 18px;

    justify-content: flex-start;

}

.page-id-3494 .research-title {

    font-size: 1.85rem;

    line-height: 1.3;

    margin-bottom: 8px;

}

.page-id-3494 .research-title a {

    color: #1d1b2e;

    transition: color 0.3s ease;

}

.page-id-3494 .research-card:hover .research-title a {

    color: #6152AD;

}

.page-id-3494 .research-excerpt {

    display: -webkit-box;

    -webkit-box-orient: vertical;

    -webkit-line-clamp: 3;

    overflow: hidden;

    font-size: 1.45rem;

    line-height: 1.6;

    color: #4a4763;

    margin-bottom: 14px;

}

.page-id-3494 .research-date {

    align-self: flex-start;

    margin-top: auto;

    padding: 4px 12px;

    border-radius: 999px;

    background: rgba(97, 82, 173, 0.10);

    font-size: 1.25rem;

    font-style: normal !important;

    font-weight: 700;

    letter-spacing: 0.06em;

    text-transform: uppercase;

    text-align: left;

    color: #6152AD !important;

}



/* Load More */

.page-id-3494 .load-more-wrap .load-more-btn {

    padding: 14px 38px;

    border-radius: 11px !important;

    background: #6152AD !important;

    color: #ffffff;

    box-shadow: 0 12px 24px -10px rgba(97, 82, 173, 0.7);

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3494 .load-more-wrap .load-more-btn:hover {

    opacity: 1;

    transform: translateY(-3px);

    box-shadow: 0 18px 30px -12px rgba(97, 82, 173, 0.8);

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3494 .research-card,

    .page-id-3494 .research-card::before,

    .page-id-3494 .research-image img,

    .page-id-3494 .load-more-wrap .load-more-btn {

        transition: none;

    }

}





/* =========================================================================

   RESEARCH ADVICE PAGE - NEWSLETTER  (page-id-3494, section #58bf20b = .always-section, row #64009b8,

   photo widget #0a29012, text column #cb866ca = heading #b256c5c, paragraph, button #839f038 =

   .newsletter-popup-btn). Same treatment as the Science Reads newsletter section: textured gradient band,

   photo with glow / ring / deeper shadow, "Newsletter" chip, larger heading, white button (11px radius).

   ========================================================================= */

.page-id-3494 .elementor-element-58bf20b.always-section::after {

    height: 68%;

    background:

        radial-gradient(circle at 82% 22%, rgba(190, 170, 255, 0.28) 0%, rgba(190, 170, 255, 0) 42%),

        radial-gradient(circle at 60% 110%, rgba(232, 153, 61, 0.16) 0%, rgba(232, 153, 61, 0) 45%),

        radial-gradient(rgba(255, 255, 255, 0.10) 1.2px, transparent 1.6px) 0 0 / 26px 26px,

        linear-gradient(135deg, #060A11 0%, #2d2463 48%, #6152AD 100%);

}

.page-id-3494 .elementor-element-0a29012 {

    isolation: isolate;

}

.page-id-3494 .elementor-element-0a29012::before {

    content: '';

    position: absolute;

    inset: 8% 6% -4% 6%;

    z-index: -1;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(160, 140, 245, 0.6) 0%, rgba(160, 140, 245, 0) 70%);

    filter: blur(34px);

    pointer-events: none;

}

.page-id-3494 .elementor-element-0a29012 img {

    display: block;

    border-radius: 28px !important;

    box-shadow:

        0 0 0 6px rgba(255, 255, 255, 0.14),

        0 30px 60px -20px rgba(6, 10, 17, 0.7);

    transition: transform 0.5s ease, box-shadow 0.5s ease;

}

.page-id-3494 .elementor-element-2670afe:hover .elementor-element-0a29012 img {

    transform: translateY(-6px) scale(1.01);

    box-shadow:

        0 0 0 6px rgba(255, 255, 255, 0.22),

        0 40px 70px -22px rgba(6, 10, 17, 0.75);

}

.page-id-3494 .elementor-element-cb866ca {

    gap: 0 !important;

    align-items: flex-start !important;

}

.page-id-3494 .elementor-element-b256c5c::before {

    content: 'Newsletter';

    display: inline-block;

    margin-bottom: 16px;

    padding: 6px 16px;

    border-radius: 999px;

    border: 1px solid rgba(255, 255, 255, 0.3);

    background: rgba(255, 255, 255, 0.1);

    color: #ffffff;

    font-size: 1.4rem;

    font-weight: 700;

    letter-spacing: 0.14em;

    text-transform: uppercase;

    line-height: 1.2;

    backdrop-filter: blur(4px);

}

.page-id-3494 .elementor-element-58bf20b .section-heading {

    font-size: clamp(3.2rem, 2.4rem + 1.5vw, 4.6rem);

    line-height: 1.15;

    letter-spacing: -0.01em;

    color: #ffffff;

}

.page-id-3494 .elementor-element-cb866ca > p {

    margin: 14px 0 26px !important;

    max-width: 44ch;

    font-size: clamp(1.6rem, 1.5rem + 0.2vw, 1.9rem);

    line-height: 1.55;

    color: rgba(255, 255, 255, 0.85);

}

.page-id-3494 .elementor-element-839f038 a {

    background: #ffffff !important;

    color: #2d2463 !important;

    border-radius: 11px !important;

    padding: 14px 30px !important;

    font-weight: 700;

    box-shadow: 0 14px 28px -12px rgba(6, 10, 17, 0.6);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;

}

.page-id-3494 .elementor-element-839f038 .button-icon svg path,

.page-id-3494 .elementor-element-839f038 .elementor-button-icon svg path {

    fill: #6152AD;

}

.page-id-3494 .elementor-element-839f038 svg {

    transition: transform 0.3s ease;

}

.page-id-3494 .elementor-element-839f038 a:hover {

    transform: translateY(-3px);

    background: #f3efff !important;

    box-shadow: 0 20px 34px -12px rgba(6, 10, 17, 0.7);

}

.page-id-3494 .elementor-element-839f038 a:hover svg {

    transform: translateX(4px);

}



@media (prefers-reduced-motion: reduce) {

    .page-id-3494 .elementor-element-0a29012 img,

    .page-id-3494 .elementor-element-839f038 a {

        transition: none;

    }

}





/* =========================================================================

   RESEARCH ADVICE PAGE - HERO  (page-id-3494, section #09b48bf (photo = its background image),

   content col #8ad0e83, eyebrow #f5dda75, heading #6f599fb (h1.banner-inner-heading), paragraph

   .banner-subheading, button #c4609ca). Same treatment as the Science Reads hero: slow-drifting soft

   colour blobs behind the copy, a staggered fade-up entrance, a shimmering italic accent on hover and a

   glowing lift + light sweep on the button. CSS only.

   ========================================================================= */

.page-id-3494 .elementor-element-09b48bf {

    position: relative;

    overflow: hidden;

}

.page-id-3494 .elementor-element-09b48bf::after {

    content: '';

    position: absolute;

    top: -20%;

    left: -10%;

    width: 46%;

    height: 140%;

    background:

        radial-gradient(circle at 20% 30%, rgba(152, 128, 244, 0.22) 0%, transparent 55%),

        radial-gradient(circle at 70% 75%, rgba(97, 82, 173, 0.16) 0%, transparent 50%);

    filter: blur(10px);

    pointer-events: none;

    z-index: 1;

    animation: raHeroBlob 12s ease-in-out infinite;

}

@keyframes raHeroBlob {

    0%, 100% { transform: translate(0, 0) scale(1); }

    50%      { transform: translate(3%, -4%) scale(1.06); }

}

.page-id-3494 .elementor-element-09b48bf > .e-con-inner {

    position: relative;

    z-index: 2;

}



/* staggered entrance for the copy */

.page-id-3494 .elementor-element-f5dda75,

.page-id-3494 .elementor-element-6f599fb,

.page-id-3494 .elementor-element-8ad0e83 > .banner-subheading,

.page-id-3494 .elementor-element-c4609ca {

    opacity: 0;

    animation: raHeroFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-3494 .elementor-element-f5dda75 { animation-delay: 0.05s; }

.page-id-3494 .elementor-element-6f599fb { animation-delay: 0.18s; }

.page-id-3494 .elementor-element-8ad0e83 > .banner-subheading { animation-delay: 0.32s; }

.page-id-3494 .elementor-element-c4609ca { animation-delay: 0.46s; }

@keyframes raHeroFadeUp {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: translateY(0); }

}



/* headline accent: shimmer sweep on hover */

.page-id-3494 .elementor-element-6f599fb .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-3494 .elementor-element-6f599fb:hover .colorTxt {

    background-position: 100% 0%;

}



/* button: glowing lift + light sweep */

.page-id-3494 .elementor-element-c4609ca a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-3494 .elementor-element-c4609ca a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-3494 .elementor-element-c4609ca a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-3494 .elementor-element-c4609ca a:hover::before {

    left: 130%;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3494 .elementor-element-09b48bf::after {

        animation: none;

    }

    .page-id-3494 .elementor-element-f5dda75,

    .page-id-3494 .elementor-element-6f599fb,

    .page-id-3494 .elementor-element-8ad0e83 > .banner-subheading,

    .page-id-3494 .elementor-element-c4609ca {

        opacity: 1;

        animation: none;

    }

}





/* =========================================================================

   NON-TRADITIONAL SCIENCE CAREERS PAGE - HERO  (page-id-3499, section #a94127b (photo = its background

   image), content col #5113b50, eyebrow #285dce9, heading #3e74c7b (.colorTxt accent), paragraph = direct

   <p> child of the column, button #872b25f). Same treatment as the Science Reads / Research Advice heroes:

   slow-drifting soft colour blobs behind the copy, a staggered fade-up entrance, a shimmering italic accent

   on hover and a glowing lift + light sweep on the button. CSS only.

   ========================================================================= */

.page-id-3499 .elementor-element-a94127b {

    position: relative;

    overflow: hidden;

}

.page-id-3499 .elementor-element-a94127b::after {

    content: '';

    position: absolute;

    top: -20%;

    left: -10%;

    width: 46%;

    height: 140%;

    background:

        radial-gradient(circle at 20% 30%, rgba(152, 128, 244, 0.22) 0%, transparent 55%),

        radial-gradient(circle at 70% 75%, rgba(97, 82, 173, 0.16) 0%, transparent 50%);

    filter: blur(10px);

    pointer-events: none;

    z-index: 1;

    animation: ncHeroBlob 12s ease-in-out infinite;

}

@keyframes ncHeroBlob {

    0%, 100% { transform: translate(0, 0) scale(1); }

    50%      { transform: translate(3%, -4%) scale(1.06); }

}

.page-id-3499 .elementor-element-a94127b > .e-con-inner {

    position: relative;

    z-index: 2;

}



/* staggered entrance for the copy */

.page-id-3499 .elementor-element-285dce9,

.page-id-3499 .elementor-element-3e74c7b,

.page-id-3499 .elementor-element-5113b50 > p,

.page-id-3499 .elementor-element-872b25f {

    opacity: 0;

    animation: ncHeroFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-3499 .elementor-element-285dce9 { animation-delay: 0.05s; }

.page-id-3499 .elementor-element-3e74c7b { animation-delay: 0.18s; }

.page-id-3499 .elementor-element-5113b50 > p { animation-delay: 0.32s; }

.page-id-3499 .elementor-element-872b25f { animation-delay: 0.46s; }

@keyframes ncHeroFadeUp {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: translateY(0); }

}



/* headline accent: shimmer sweep on hover */

.page-id-3499 .elementor-element-3e74c7b .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-3499 .elementor-element-3e74c7b:hover .colorTxt {

    background-position: 100% 0%;

}



/* button: glowing lift + light sweep */

.page-id-3499 .elementor-element-872b25f .elementor-button {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-3499 .elementor-element-872b25f .elementor-button:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-3499 .elementor-element-872b25f .elementor-button::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-3499 .elementor-element-872b25f .elementor-button:hover::before {

    left: 130%;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3499 .elementor-element-a94127b::after {

        animation: none;

    }

    .page-id-3499 .elementor-element-285dce9,

    .page-id-3499 .elementor-element-3e74c7b,

    .page-id-3499 .elementor-element-5113b50 > p,

    .page-id-3499 .elementor-element-872b25f {

        opacity: 1;

        animation: none;

    }

}





/* =========================================================================

   NON-TRADITIONAL SCIENCE CAREERS PAGE - "WHAT ELSE CAN YOU DO WITH SCIENCE?"  (page-id-3499,

   section #580d20c, row #01c286c, heading col #d83801c (eyebrow #6a3da8a, heading #e741403), quote col

   #f429ce6 > card #9dc46a3 = opening-quote image #e309814 + paragraph + closing-quote image #f01caa6).

   The outlined quote box becomes a soft cream-to-lavender card: purple accent bar down the left, a ring +

   glow in the top-right corner, smaller quote marks, larger medium-weight text, and a gentle lift on

   hover. A light lavender / peach wash sits behind the section. CSS only.

   ========================================================================= */

.page-id-3499 .elementor-element-580d20c {

    background:

        radial-gradient(ellipse 45% 70% at 12% 55%, rgba(97, 82, 173, 0.10) 0%, rgba(97, 82, 173, 0) 70%),

        radial-gradient(ellipse 40% 60% at 92% 70%, rgba(232, 153, 61, 0.09) 0%, rgba(232, 153, 61, 0) 70%),

        #ffffff;

}

.page-id-3499 .elementor-element-9dc46a3 {

    position: relative;

    overflow: hidden;

    padding: 34px 44px 30px 48px !important;

    border: 1px solid rgba(97, 82, 173, 0.14) !important;

    border-radius: 26px !important;

    background: linear-gradient(135deg, #F6F1FF 0%, #FFF6EE 100%);

    box-shadow: 0 26px 50px -30px rgba(45, 36, 99, 0.45);

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;

}

.page-id-3499 .elementor-element-9dc46a3:hover {

    transform: translateY(-5px);

    box-shadow: 0 34px 56px -30px rgba(45, 36, 99, 0.55);

}

/* accent bar down the left edge */

.page-id-3499 .elementor-element-9dc46a3::before {

    content: '';

    position: absolute;

    left: 0;

    top: 0;

    bottom: 0;

    width: 7px;

    background: linear-gradient(180deg, #6152AD 0%, #B9A8FF 100%);

}

/* ring + glow in the top-right corner */

.page-id-3499 .elementor-element-9dc46a3::after {

    content: '';

    position: absolute;

    right: -46px;

    top: -46px;

    width: 170px;

    height: 170px;

    border-radius: 50%;

    border: 2px solid rgba(97, 82, 173, 0.18);

    background: radial-gradient(circle, rgba(185, 168, 255, 0.35) 0%, rgba(185, 168, 255, 0) 70%);

    pointer-events: none;

}

.page-id-3499 .elementor-element-9dc46a3 > * {

    position: relative;

    z-index: 1;

}

.page-id-3499 .elementor-element-e309814 img,

.page-id-3499 .elementor-element-f01caa6 img {

    width: 46px !important;

    height: auto;

    opacity: 0.9;

}

.page-id-3499 .elementor-element-e309814 {

    margin-bottom: 4px;

}

.page-id-3499 .elementor-element-f01caa6 {

    margin-top: -14px !important;

    z-index: 1 !important;

}

.page-id-3499 .elementor-element-9dc46a3 > p {

    margin: 0;

    font-size: clamp(1.7rem, 1.5rem + 0.45vw, 2.2rem);

    font-weight: 500;

    line-height: 1.6;

    color: #1d1b2e;

}

.page-id-3499 .elementor-element-e741403 .section-heading {

    font-size: clamp(2.8rem, 2.2rem + 1vw, 3.8rem);

    line-height: 1.15;

}



@media (prefers-reduced-motion: reduce) {

    .page-id-3499 .elementor-element-9dc46a3 {

        transition: none;

    }

}





/* =========================================================================

   NON-TRADITIONAL SCIENCE CAREERS PAGE - "FEATURED ARTICLES"  (page-id-3499, section #6a834d4, row #97221e5,

   text col #2f45b1e (eyebrow #b4d04c9, heading #095a806, sub-line #0f15c3c), slider col #23f1d64 >

   shortcode #ca1a67b: .custom-category-slider .swiper-slide > .custom-slide-item (a.post-thumb img +

   .post-content: .post-category, .post-title)). The slider shortcode prints its own inline CSS and

   .custom-slide-item / .post-* are shared with other sections, so this is scoped to this section.

   The peach background image is replaced by a fresh lavender gradient with soft glows; cards get a

   taller, zooming photo with an arrow chip, a category pill, bolder titles and a purple lift on hover.

   ========================================================================= */

.page-id-3499 .elementor-element-6a834d4:not(.elementor-motion-effects-element-type-background),

.page-id-3499 .elementor-element-6a834d4 > .elementor-motion-effects-container > .elementor-motion-effects-layer {

    background-image:

        radial-gradient(ellipse 40% 60% at 8% 15%, rgba(185, 168, 255, 0.55) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 35% 55% at 95% 90%, rgba(255, 214, 180, 0.45) 0%, rgba(255, 214, 180, 0) 70%),

        linear-gradient(135deg, #F4F0FF 0%, #EAE3FF 55%, #F8F4FF 100%) !important;

    background-color: #F1ECFF !important;

}

.page-id-3499 .elementor-element-6a834d4 {

    position: relative;

    overflow: hidden;

}

/* decorative ring, top right */

.page-id-3499 .elementor-element-6a834d4::after {

    content: '';

    position: absolute;

    right: -70px;

    top: -70px;

    width: 240px;

    height: 240px;

    border-radius: 50%;

    border: 2px solid rgba(97, 82, 173, 0.16);

    pointer-events: none;

}

.page-id-3499 .elementor-element-6a834d4 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* left copy */

.page-id-3499 .elementor-element-095a806 .section-heading {

    font-size: clamp(2.8rem, 2.2rem + 1vw, 3.8rem);

    line-height: 1.15;

}

.page-id-3499 .elementor-element-0f15c3c .elementor-heading-title {

    font-size: clamp(1.5rem, 1.4rem + 0.2vw, 1.75rem);

    font-weight: 500 !important;

    line-height: 1.6;

    color: #4a4763 !important;

}



/* equal-height slides */

.page-id-3499 .elementor-element-6a834d4 .custom-category-slider .swiper-wrapper {

    align-items: stretch;

}

.page-id-3499 .elementor-element-6a834d4 .custom-category-slider .swiper-slide {

    height: auto;

}



/* cards */

.page-id-3499 .elementor-element-6a834d4 .custom-slide-item {

    display: flex;

    flex-direction: column;

    min-height: 0;

    border-radius: 22px;

    background: #ffffff;

    border: 1px solid rgba(97, 82, 173, 0.12);

    box-shadow: 0 12px 22px -16px rgba(45, 36, 99, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-3499 .elementor-element-6a834d4 .custom-slide-item:hover {

    transform: translateY(-4px);

    border-color: rgba(97, 82, 173, 0.4);

    box-shadow: 0 16px 26px -16px rgba(97, 82, 173, 0.7);

}

.page-id-3499 .elementor-element-6a834d4 .post-thumb {

    position: relative;

    display: block;

    overflow: hidden;

}

.page-id-3499 .elementor-element-6a834d4 .post-thumb img {

    height: 220px;

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3499 .elementor-element-6a834d4 .custom-slide-item:hover .post-thumb img {

    transform: scale(1.07);

}

/* arrow chip on the photo */

.page-id-3499 .elementor-element-6a834d4 .post-thumb::after {

    content: '\2192';

    position: absolute;

    right: 14px;

    bottom: 14px;

    width: 38px;

    height: 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffffff;

    color: #6152AD;

    font-size: 2rem;

    font-weight: 700;

    line-height: 1;

    box-shadow: 0 10px 20px -8px rgba(6, 10, 17, 0.5);

    transform: translateY(6px) scale(0.9);

    opacity: 0;

    transition: transform 0.35s ease, opacity 0.35s ease, background 0.3s ease, color 0.3s ease;

}

.page-id-3499 .elementor-element-6a834d4 .custom-slide-item:hover .post-thumb::after {

    transform: translateY(0) scale(1);

    opacity: 1;

}

.page-id-3499 .elementor-element-6a834d4 .post-content {

    flex: 1;

    padding: 18px 20px 22px;

}

.page-id-3499 .elementor-element-6a834d4 .post-category {

    display: inline-block;

    margin-bottom: 12px;

    padding: 4px 12px;

    border-radius: 999px;

    background: rgba(97, 82, 173, 0.12);

    color: #6152AD;

    font-size: 1.2rem;

    letter-spacing: 0.1em;

}

.page-id-3499 .elementor-element-6a834d4 .post-title {

    font-size: 1.75rem;

    line-height: 1.35;

    font-weight: 700;

}

.page-id-3499 .elementor-element-6a834d4 .post-title a {

    color: #1d1b2e;

    transition: color 0.3s ease;

}

.page-id-3499 .elementor-element-6a834d4 .custom-slide-item:hover .post-title a {

    color: #6152AD;

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3499 .elementor-element-6a834d4 .custom-slide-item,

    .page-id-3499 .elementor-element-6a834d4 .post-thumb img,

    .page-id-3499 .elementor-element-6a834d4 .post-thumb::after {

        transition: none;

    }

}





/* =========================================================================

   NON-TRADITIONAL SCIENCE CAREERS PAGE - "UNPROGRAMMED SCIENTIST"  (page-id-3499, section #d451248, row

   #3e8d9fc, text col #a930477 (eyebrow #490fc95, heading #d5897b1, sub-line #d3b5570, button #d3e18bd),

   list card #29b26ae > text-editor #5776f20 (ul, 4 li)). The pale lilac box becomes a dark

   navy-to-purple "episode guide" card: a "What you'll hear" label, numbered list with round lavender

   badges and hairline dividers, a soft glow + ring, and a slowly scrolling sound-wave strip along the bottom

   (podcast feel). The intro copy gets a softer colour and better spacing. A faint lavender wash sits

   behind the section. CSS only.

   ========================================================================= */

.page-id-3499 .elementor-element-d451248 {

    background:

        radial-gradient(ellipse 40% 60% at 6% 80%, rgba(185, 168, 255, 0.28) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 60% at 96% 15%, rgba(232, 153, 61, 0.10) 0%, rgba(232, 153, 61, 0) 70%),

        #ffffff;

}



/* left copy */

.page-id-3499 .elementor-element-d5897b1 .section-heading {

    font-size: clamp(2.8rem, 2.2rem + 1vw, 3.8rem);

    line-height: 1.15;

}

.page-id-3499 .elementor-element-d3b5570 {

    margin-top: 14px !important;

}

.page-id-3499 .elementor-element-d3b5570 .elementor-heading-title {

    font-size: clamp(1.6rem, 1.5rem + 0.2vw, 1.85rem);

    font-weight: 500 !important;

    line-height: 1.65;

    color: #4a4763 !important;

}

.page-id-3499 .elementor-element-d3e18bd {

    margin-top: 26px !important;

}



/* episode-guide card */

.page-id-3499 .elementor-element-29b26ae {

    position: relative;

    overflow: hidden;

    padding: 64px 36px 84px !important;

    border-radius: 26px !important;

    background: linear-gradient(140deg, #060A11 0%, #2d2463 55%, #6152AD 100%) !important;

    box-shadow: 0 34px 60px -34px rgba(45, 36, 99, 0.85);

}

.page-id-3499 .elementor-element-29b26ae > * {

    position: relative;

    z-index: 2;

}

/* label */

.page-id-3499 .elementor-element-29b26ae::before {

    content: 'What you\2019 ll hear';

    position: absolute;

    left: 36px;

    top: 26px;

    right: auto;

    bottom: auto;

    width: auto;

    height: auto;

    opacity: 1;

    z-index: 2;

    padding: 6px 16px;

    border-radius: 999px;

    border: 1px solid rgba(255, 255, 255, 0.28);

    background: rgba(255, 255, 255, 0.10);

    color: #ffffff;

    font-size: 1.3rem;

    font-weight: 700;

    letter-spacing: 0.12em;

    text-transform: uppercase;

    line-height: 1.2;

}

/* glow + ring, top right */

.page-id-3499 .elementor-element-29b26ae::after {

    content: '';

    position: absolute;

    right: -70px;

    top: -70px;

    width: 230px;

    height: 230px;

    z-index: 1;

    border-radius: 50%;

    border: 2px solid rgba(255, 255, 255, 0.14);

    background: radial-gradient(circle, rgba(185, 168, 255, 0.45) 0%, rgba(185, 168, 255, 0) 70%);

    pointer-events: none;

}

/* scrolling sound-wave strip */

.page-id-3499 .elementor-element-29b26ae .elementor-element-5776f20::after {

    content: '';

    position: absolute;

    left: 0;

    right: 0;

    bottom: -62px;

    height: 44px;

    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='44'%3E%3Cg fill='%23CBBEFF'%3E%3Crect x='2' y='16' width='4' height='12' rx='2'/%3E%3Crect x='14' y='8' width='4' height='28' rx='2'/%3E%3Crect x='26' y='14' width='4' height='16' rx='2'/%3E%3Crect x='38' y='2' width='4' height='40' rx='2'/%3E%3Crect x='50' y='10' width='4' height='24' rx='2'/%3E%3Crect x='62' y='18' width='4' height='8' rx='2'/%3E%3Crect x='74' y='6' width='4' height='32' rx='2'/%3E%3Crect x='86' y='12' width='4' height='20' rx='2'/%3E%3Crect x='98' y='4' width='4' height='36' rx='2'/%3E%3Crect x='110' y='15' width='4' height='14' rx='2'/%3E%3C/g%3E%3C/svg%3E") 0 50% repeat-x;

    opacity: 0.5;

    -webkit-mask-image: linear-gradient(90deg, transparent, #000 15%, #000 85%, transparent);

    mask-image: linear-gradient(90deg, transparent, #000 15%, #000 85%, transparent);

    animation: ncWaveScroll 8s linear infinite;

    pointer-events: none;

}

@keyframes ncWaveScroll {

    from { background-position: 0 50%; }

    to   { background-position: -120px 50%; }

}

.page-id-3499 .elementor-element-29b26ae .elementor-element-5776f20 {

    position: relative;

}

/* numbered list */

.page-id-3499 .elementor-element-5776f20 ul {

    margin: 0;

    padding: 0;

    list-style: none;

    counter-reset: ncEp;

}

.page-id-3499 .elementor-element-5776f20 li {

    position: relative;

    counter-increment: ncEp;

    margin: 0 !important;

    padding: 14px 0 14px 50px;

    border-bottom: 1px solid rgba(255, 255, 255, 0.12);

    font-size: clamp(1.5rem, 1.4rem + 0.2vw, 1.7rem);

    line-height: 1.5;

    color: rgba(255, 255, 255, 0.92);

}

.page-id-3499 .elementor-element-5776f20 li:last-child {

    border-bottom: 0;

}

.page-id-3499 .elementor-element-5776f20 li::before {

    content: counter(ncEp);

    position: absolute;

    left: 0;

    top: 14px;

    width: 32px;

    height: 32px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: rgba(185, 168, 255, 0.22);

    border: 1px solid rgba(185, 168, 255, 0.5);

    color: #E4DCFF;

    font-size: 1.4rem;

    font-weight: 700;

}

.page-id-3499 .elementor-element-5776f20 li span {

    color: inherit !important;

}



@media (prefers-reduced-motion: reduce) {

    .page-id-3499 .elementor-element-29b26ae .elementor-element-5776f20::after {

        animation: none;

    }

}





/* =========================================================================

   NON-TRADITIONAL SCIENCE CAREERS PAGE - "CAREERS WORTH KNOWING ABOUT"  (page-id-3499, section #5a8391a

   (dark, Group-380 background), row #82e4c1b = .careers-worth-sect, text col #e0879e5 (eyebrow #3d74b49,

   heading #77a8b52, sub-line #4a92f80, slider shortcode #a5a2177, "read more" pill #963405a), photo #83ff45b

   (absolute, bottom right)). Goal: fit one desktop fold and look more polished. The heading goes on one

   line, spacing is tightened, the card photos are sized from the viewport height (clamp on vh), cards become

   frosted-glass tiles with a lavender category pill, 2-line titles and a hover lift, and the slider dots get a

   proper place (they were clipped) and a lavender pill style. .custom-slide-item / .post-* are shared, so

   everything is scoped to this row. CSS only.

   ========================================================================= */

.page-id-3499 .elementor-element-5a8391a > .e-con-inner {

    padding-top: 10px;

}

.page-id-3499 .elementor-element-e0879e5 {

    gap: 6px !important;

    justify-content: center;

}

/* the woman's photo is anchored bottom-right; cap it by viewport height so it can't force the section taller than a fold */

.page-id-3499 .elementor-element-83ff45b img {

    width: auto;

    max-width: 100%;

    height: auto;

    max-height: min(726px, 84vh);

}

.page-id-3499 .elementor-element-4a92f80 {

    margin-bottom: 0 !important;

}

/* space between the eyebrow (with its underline) and the heading */

.page-id-3499 .elementor-element-3d74b49 {

    margin-bottom: 18px !important;

}

.page-id-3499 .elementor-element-77a8b52 .section-heading {

    font-size: clamp(2.8rem, 2.1rem + 1.2vw, 4rem);

    line-height: 1.15;

}

.page-id-3499 .elementor-element-77a8b52 .section-heading .banner-colorTxt {

    display: inline;

}

.page-id-3499 .elementor-element-4a92f80 .elementor-heading-title {

    font-size: clamp(1.5rem, 1.4rem + 0.2vw, 1.75rem);

    font-weight: 500 !important;

    line-height: 1.55;

    color: rgba(255, 255, 255, 0.78) !important;

}



/* slider: room for the dots, glass cards */

.page-id-3499 .careers-worth-sect .custom-category-slider {

    padding-bottom: 24px !important;

}

.page-id-3499 .careers-worth-sect .swiper-pagination {

    bottom: 2px !important;

}

.page-id-3499 .careers-worth-sect .swiper-pagination-bullet {

    width: 8px;

    height: 8px;

    background: #ffffff !important;

    opacity: 0.35;

    transition: width 0.3s ease, opacity 0.3s ease, background 0.3s ease;

}

.page-id-3499 .careers-worth-sect .swiper-pagination-bullet-active {

    width: 24px;

    border-radius: 6px;

    background: #B9A8FF !important;

    opacity: 1;

}

.page-id-3499 .careers-worth-sect .custom-category-slider .swiper-wrapper {

    align-items: stretch;

}

.page-id-3499 .careers-worth-sect .custom-category-slider .swiper-slide {

    height: auto;

}

.page-id-3499 .careers-worth-sect .custom-slide-item {

    display: flex;

    flex-direction: column;

    min-height: 0;

    border-radius: 18px;

    background: rgba(255, 255, 255, 0.06) !important;

    border: 1px solid rgba(255, 255, 255, 0.12);

    box-shadow: 0 18px 30px -22px rgba(0, 0, 0, 0.7);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.35s ease, background 0.35s ease;

}

.page-id-3499 .careers-worth-sect .custom-slide-item:hover {

    transform: translateY(-4px);

    background: rgba(97, 82, 173, 0.22) !important;

    border-color: rgba(185, 168, 255, 0.55);

}

.page-id-3499 .careers-worth-sect .post-thumb {

    display: block;

    overflow: hidden;

}

.page-id-3499 .careers-worth-sect .post-thumb img {

    height: clamp(100px, 14vh, 190px);

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3499 .careers-worth-sect .custom-slide-item:hover .post-thumb img {

    transform: scale(1.07);

}

.page-id-3499 .careers-worth-sect .post-content {

    flex: 1;

    padding: 14px 16px 16px;

}

.page-id-3499 .careers-worth-sect .post-category {

    display: inline-block;

    margin-bottom: 8px;

    padding: 3px 10px;

    border-radius: 999px;

    background: rgba(185, 168, 255, 0.18);

    color: #CFC3FF;

    font-size: 1.15rem;

    letter-spacing: 0.1em;

}

.page-id-3499 .careers-worth-sect .post-title {

    display: -webkit-box;

    -webkit-box-orient: vertical;

    -webkit-line-clamp: 3;

    overflow: hidden;

    font-size: 1.55rem;

    line-height: 1.35;

    font-weight: 700;

}

.page-id-3499 .careers-worth-sect .custom-slide-item:hover .post-title a {

    color: #E4DCFF !important;

}



/* "read more" pill under the slider (tighter so the section stays within a fold) */

.page-id-3499 .elementor-element-963405a {

    background: rgba(255, 255, 255, 0.06);

    margin-top: 0 !important;

}

.page-id-3499 .elementor-element-bea4e67 p {

    margin: 0;

}



@media (prefers-reduced-motion: reduce) {

    .page-id-3499 .careers-worth-sect .custom-slide-item,

    .page-id-3499 .careers-worth-sect .post-thumb img,

    .page-id-3499 .careers-worth-sect .swiper-pagination-bullet {

        transition: none;

    }

}





/* =========================================================================

   NON-TRADITIONAL SCIENCE CAREERS PAGE - "WHAT'S NEXT"  (page-id-3499, section #06b6bc9, row #d180119,

   photo col #4a3d8ef / image #52089b8 (cut-out PNG of Chloe), text col #4dee250 (eyebrow #4143650,

   heading #063a707, sub-line #8fd1a0d, button #bda5189)). Gives the cut-out a portrait backdrop: a

   lavender arch behind her, an outlined ring and two softly bobbing dots. Lavender / peach wash behind

   the section, bigger heading, softer sub-line and a glowing lift on the button. CSS only.

   ========================================================================= */

.page-id-3499 .elementor-element-06b6bc9 {

    background:

        radial-gradient(ellipse 45% 70% at 25% 60%, rgba(185, 168, 255, 0.22) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 55% at 95% 20%, rgba(232, 153, 61, 0.09) 0%, rgba(232, 153, 61, 0) 70%),

        #ffffff;

}

/* arch backdrop + ring (explicit sizes: Elementor's .e-con::before/::after default to full-size overlays) */

.page-id-3499 .elementor-element-4a3d8ef::before {

    content: '';

    position: absolute;

    z-index: 0;

    left: 8%;

    right: auto;

    top: auto;

    bottom: 0;

    width: 84%;

    height: 74%;

    border-radius: 999px 999px 0 0;

    background: linear-gradient(180deg, #E4DAFF 0%, #C9B9FF 100%);

    opacity: 1;

    pointer-events: none;

}

.page-id-3499 .elementor-element-4a3d8ef::after {

    content: '';

    position: absolute;

    z-index: 0;

    left: auto;

    right: -6%;

    top: 8%;

    bottom: auto;

    width: 96px;

    height: 96px;

    border-radius: 50%;

    border: 3px solid rgba(97, 82, 173, 0.35);

    pointer-events: none;

}

.page-id-3499 .elementor-element-4a3d8ef .elementor-element-52089b8 {

    position: relative;

    z-index: 1;

}

.page-id-3499 .elementor-element-4a3d8ef .elementor-element-52089b8 img {

    display: block;

    margin-bottom: -1px;

}

/* two bobbing dots */

.page-id-3499 .elementor-element-4a3d8ef .elementor-element-52089b8::before,

.page-id-3499 .elementor-element-4a3d8ef .elementor-element-52089b8::after {

    content: '';

    position: absolute;

    z-index: 2;

    border-radius: 50%;

    pointer-events: none;

    animation: ncNextDot 6s ease-in-out infinite;

}

.page-id-3499 .elementor-element-4a3d8ef .elementor-element-52089b8::before {

    width: 18px;

    height: 18px;

    left: 2%;

    top: 34%;

    background: #B9A8FF;

    box-shadow: 0 8px 16px -6px rgba(120, 100, 220, 0.7);

}

.page-id-3499 .elementor-element-4a3d8ef .elementor-element-52089b8::after {

    width: 26px;

    height: 26px;

    right: -2%;

    top: 62%;

    background: #6152AD;

    box-shadow: 0 8px 16px -6px rgba(97, 82, 173, 0.7);

    animation-delay: -3s;

}

@keyframes ncNextDot {

    0%, 100% { transform: translate(0, 0); }

    50%      { transform: translate(-3px, -9px); }

}



/* text */

.page-id-3499 .elementor-element-063a707 .section-heading {

    font-size: clamp(2.8rem, 2.2rem + 1.2vw, 4.2rem);

    line-height: 1.15;

}

.page-id-3499 .elementor-element-8fd1a0d .elementor-heading-title {

    font-size: clamp(1.6rem, 1.5rem + 0.2vw, 1.85rem);

    font-weight: 500 !important;

    line-height: 1.65;

    color: #4a4763 !important;

}

.page-id-3499 .elementor-element-bda5189 .elementor-button {

    box-shadow: 0 10px 22px -10px rgba(97, 82, 173, 0.7);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;

}

.page-id-3499 .elementor-element-bda5189 .elementor-button:hover {

    transform: translateY(-3px);

    box-shadow: 0 16px 28px -10px rgba(97, 82, 173, 0.85);

}





/* =========================================================================

   BLOGS PAGE - SECTION 2 "A PLACE TO EXPLORE IDEAS"  (page-id-3502, section #fda501f, row #8a5ace4, photo col

   #0ce582f / image #1e613b3 (cut-out PNG), text col #8020e31 = eyebrow #a979bb0, heading #cfa9f3d, opening

   quote image #350bf29, paragraph, closing quote image #7d8c89a). The photo gets two bobbing dots and a

   shape-following drop-shadow (the backdrop disc and ring were removed). The copy becomes a pull-quote: smaller

   purple quote marks, a larger medium-weight paragraph and a soft lavender wash behind the section. CSS only.

   ========================================================================= */

.page-id-3502 .elementor-element-fda501f {

    background:

        radial-gradient(ellipse 45% 75% at 22% 55%, rgba(185, 168, 255, 0.22) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 55% at 95% 85%, rgba(232, 153, 61, 0.09) 0%, rgba(232, 153, 61, 0) 70%),

        #ffffff;

}

/* photo column: the earlier backdrop disc and outlined ring were removed (the PNG already has its own arch).

   .e-con::before/::after default to full-size overlays in Elementor, so make sure they stay empty here. */

.page-id-3502 .elementor-element-0ce582f::before,

.page-id-3502 .elementor-element-0ce582f::after {

    content: none;

}

.page-id-3502 .elementor-element-0ce582f .elementor-element-1e613b3 {

    position: relative;

    z-index: 1;

}

.page-id-3502 .elementor-element-0ce582f .elementor-element-1e613b3 img {

    display: block;

    filter: drop-shadow(0 22px 24px rgba(45, 36, 99, 0.28));

}

/* two bobbing dots */

.page-id-3502 .elementor-element-0ce582f .elementor-element-1e613b3::before,

.page-id-3502 .elementor-element-0ce582f .elementor-element-1e613b3::after {

    content: '';

    position: absolute;

    z-index: 2;

    border-radius: 50%;

    pointer-events: none;

    animation: blogDotBob 6s ease-in-out infinite;

}

.page-id-3502 .elementor-element-0ce582f .elementor-element-1e613b3::before {

    width: 20px;

    height: 20px;

    left: -4%;

    top: 46%;

    background: #B9A8FF;

    box-shadow: 0 8px 16px -6px rgba(120, 100, 220, 0.7);

}

.page-id-3502 .elementor-element-0ce582f .elementor-element-1e613b3::after {

    width: 14px;

    height: 14px;

    right: 2%;

    bottom: 22%;

    background: #6152AD;

    box-shadow: 0 8px 14px -6px rgba(97, 82, 173, 0.7);

    animation-delay: -3s;

}

@keyframes blogDotBob {

    0%, 100% { transform: translate(0, 0); }

    50%      { transform: translate(-3px, -9px); }

}



/* text as a pull-quote */

.page-id-3502 .elementor-element-cfa9f3d .section-heading {

    font-size: clamp(2.8rem, 2.2rem + 1.2vw, 4rem);

    line-height: 1.15;

}

.page-id-3502 .elementor-element-350bf29 img,

.page-id-3502 .elementor-element-7d8c89a img {

    width: 42px !important;

    height: auto;

    opacity: 0.9;

}

.page-id-3502 .elementor-element-8020e31 > p {

    margin: 0;

    font-size: clamp(1.7rem, 1.5rem + 0.4vw, 2.1rem);

    font-weight: 500;

    line-height: 1.65;

    color: #1d1b2e;

}

.page-id-3502 .elementor-element-7d8c89a {

    margin-top: -12px !important;

}



/* =========================================================================

   BLOGS PAGE - SECTION 3 "FEATURED CONTENT"  (page-id-3502, section #f1fa7d6 (lavender background image),

   heading col #c698c8e = eyebrow #5a72177 + heading, slider shortcode #4e6e20f). The cards come

   from the [featured_slider] shortcode in functions.php (.featured-blog-card > a > .featured-thumb img +

   .featured-body: .featured-tag, h3, .featured-link); the shortcode prints its own inline CSS, so this is scoped

   to this section. Cards get a rounder shape with a lavender border, a shade over the photo, a "Featured"

   pill, bolder titles, equal heights, and a "Read More" footer row (divider + arrow that slides) with a purple

   lift on hover. CSS only.

   ========================================================================= */

/* equal-height cards: make every slide stretch to the tallest one (the card and its link then fill the slide) */

.page-id-3502 .elementor-element-f1fa7d6 .featuredSwiper .swiper-wrapper {

    align-items: stretch !important;

}

.page-id-3502 .elementor-element-f1fa7d6 .featuredSwiper .swiper-slide {

    align-self: stretch !important;

    height: auto !important;

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-blog-card {

    border-radius: 22px;

    border: 1px solid rgba(97, 82, 173, 0.14);

    box-shadow: 0 16px 30px -22px rgba(45, 36, 99, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-blog-card:hover {

    transform: translateY(-6px);

    border-color: rgba(97, 82, 173, 0.4);

    box-shadow: 0 28px 44px -24px rgba(97, 82, 173, 0.6);

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-blog-card > a {

    display: flex;

    flex-direction: column;

    height: 100%;

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-thumb {

    position: relative;

    height: 240px;

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-thumb img {

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-blog-card:hover .featured-thumb img {

    transform: scale(1.07);

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-thumb::after {

    content: '';

    position: absolute;

    inset: 0;

    background: linear-gradient(180deg, rgba(6, 10, 17, 0) 55%, rgba(45, 36, 99, 0.35) 100%);

    pointer-events: none;

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-body {

    flex: 1;

    display: flex;

    flex-direction: column;

    padding: 18px 22px 20px;

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-tag {

    align-self: flex-start;

    margin-bottom: 12px;

    padding: 4px 12px;

    border-radius: 999px;

    background: rgba(97, 82, 173, 0.12);

    font-size: 1.2rem;

    font-weight: 700;

    letter-spacing: 0.1em;

    text-transform: uppercase;

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-body h3 {

    flex: 1;

    min-height: 0;

    margin-bottom: 16px;

    font-size: 1.75rem;

    line-height: 1.35;

    font-weight: 700;

    color: #1d1b2e;

    transition: color 0.3s ease;

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-blog-card:hover .featured-body h3 {

    color: #6152AD;

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-link {

    display: flex;

    align-items: center;

    justify-content: space-between;

    padding-top: 14px;

    border-top: 1px solid rgba(97, 82, 173, 0.14);

    font-size: 1.45rem;

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-link {

    transition: padding-left 0.3s ease, color 0.3s ease;

}

.page-id-3502 .elementor-element-f1fa7d6 .featured-blog-card:hover .featured-link {

    padding-left: 8px;

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3502 .elementor-element-f1fa7d6 .featured-blog-card,

    .page-id-3502 .elementor-element-f1fa7d6 .featured-thumb img {

        transition: none;

    }

}



@media (prefers-reduced-motion: reduce) {

    .page-id-3502 .elementor-element-0ce582f .elementor-element-1e613b3::before,

    .page-id-3502 .elementor-element-0ce582f .elementor-element-1e613b3::after {

        animation: none;

    }

}





/* =========================================================================

   BLOGS PAGE - SECTION 4 "ALL BLOGS" ARCHIVE  (page-id-3502, section #5342edb; the shortcode

   [custom_blog_filter] prints .blog-top-bar > .blog-tabs (buttons) + .blog-search input, then

   #blog-post-container.blog-grid > .blog-card > a > .blog-image img + .blog-content (h3, .read-more), and a

   #loadMoreBtn; Load More injects more .blog-card with the same markup). The shortcode prints its own inline

   CSS, so this is scoped to this section. Tabs become pills (active one filled purple), the search box a

   rounded field with an icon and a purple focus ring, cards get a lavender border, taller zooming photos, bold

   titles, equal heights and a "Read More" footer row, and Load More uses the theme purple / 11px radius.

   ========================================================================= */

.page-id-3502 .elementor-element-5342edb {

    background: linear-gradient(180deg, #ffffff 0%, #faf8ff 100%);

}



/* tabs */

.page-id-3502 .elementor-element-5342edb .blog-tabs {

    gap: 10px;

}

.page-id-3502 .elementor-element-5342edb .blog-tabs button {

    padding: 9px 20px !important;

    border: 1px solid rgba(97, 82, 173, 0.28) !important;

    border-radius: 999px !important;

    background: #ffffff !important;

    box-shadow: 0 6px 14px -10px rgba(45, 36, 99, 0.4) !important;

    font-size: 1.5rem;

    font-weight: 600;

    color: #2d2463;

    line-height: 1.2;

    transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;

}

.page-id-3502 .elementor-element-5342edb .blog-tabs button:hover {

    transform: translateY(-2px);

    background: #E8D8FF !important;

    border-color: #6152AD !important;

    color: #2d2463;

}

.page-id-3502 .elementor-element-5342edb .blog-tabs button.active {

    background: linear-gradient(135deg, #060A11 0%, #2d2463 60%, #6152AD 100%) !important;

    border-color: transparent !important;

    color: #ffffff;

    box-shadow: 0 12px 22px -10px rgba(97, 82, 173, 0.7) !important;

}

.page-id-3502 .elementor-element-5342edb .blog-tabs button.active::after {

    content: none;

}



/* search */

.page-id-3502 .elementor-element-5342edb .blog-search input {

    width: 260px;

    height: 44px;

    padding: 0 16px 0 44px;

    border: 1px solid rgba(97, 82, 173, 0.28);

    border-radius: 999px;

    background: #ffffff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152AD' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") 16px 50% / 18px 18px no-repeat;

    font-size: 1.45rem;

    box-shadow: 0 8px 18px -12px rgba(45, 36, 99, 0.4);

    transition: border-color 0.25s ease, box-shadow 0.25s ease, width 0.3s ease;

}

.page-id-3502 .elementor-element-5342edb .blog-search input:focus {

    width: 300px;

    border-color: #6152AD;

    box-shadow: 0 0 0 4px rgba(97, 82, 173, 0.15);

}



/* cards */

.page-id-3502 .elementor-element-5342edb .blog-grid {

    gap: 30px;

}

.page-id-3502 .elementor-element-5342edb .blog-card {

    border-radius: 22px;

    border: 1px solid rgba(97, 82, 173, 0.14);

    box-shadow: 0 16px 30px -22px rgba(45, 36, 99, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-3502 .elementor-element-5342edb .blog-card:hover {

    transform: translateY(-6px);

    border-color: rgba(97, 82, 173, 0.4);

    box-shadow: 0 28px 44px -24px rgba(97, 82, 173, 0.6);

}

.page-id-3502 .elementor-element-5342edb .blog-card > a {

    display: flex;

    flex-direction: column;

    height: 100%;

}

.page-id-3502 .elementor-element-5342edb .blog-image {

    position: relative;

    height: 225px;

}

.page-id-3502 .elementor-element-5342edb .blog-image img {

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3502 .elementor-element-5342edb .blog-card:hover .blog-image img {

    transform: scale(1.07);

}

.page-id-3502 .elementor-element-5342edb .blog-image::after {

    content: '';

    position: absolute;

    inset: 0;

    background: linear-gradient(180deg, rgba(6, 10, 17, 0) 55%, rgba(45, 36, 99, 0.32) 100%);

    pointer-events: none;

}

.page-id-3502 .elementor-element-5342edb .blog-content {

    flex: 1;

    display: flex;

    flex-direction: column;

    padding: 20px 22px 20px;

}

.page-id-3502 .elementor-element-5342edb .blog-content h3 {

    flex: 1;

    margin-bottom: 16px;

    font-size: 1.75rem;

    line-height: 1.35;

    font-weight: 700;

    color: #1d1b2e;

    transition: color 0.3s ease;

}

.page-id-3502 .elementor-element-5342edb .blog-card:hover .blog-content h3 {

    color: #6152AD;

}

.page-id-3502 .elementor-element-5342edb .blog-content .read-more {

    padding-top: 14px;

    border-top: 1px solid rgba(97, 82, 173, 0.14);

    font-size: 1.45rem;

    transition: padding-left 0.3s ease;

}

.page-id-3502 .elementor-element-5342edb .blog-card:hover .read-more {

    padding-left: 8px;

}



/* Load More */

.page-id-3502 .elementor-element-5342edb #loadMoreBtn {

    padding: 14px 38px;

    border-radius: 11px;

    background: #6152AD;

    font-size: 1.6rem;

    font-weight: 600;

    box-shadow: 0 12px 24px -10px rgba(97, 82, 173, 0.7);

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3502 .elementor-element-5342edb #loadMoreBtn:hover {

    transform: translateY(-3px);

    box-shadow: 0 18px 30px -12px rgba(97, 82, 173, 0.8);

}



/* room under Load More now that the newsletter section sits right against this one */

.page-id-3502 .elementor-element-5342edb {

    padding-bottom: 60px;

}





/* =========================================================================

   BLOGS PAGE - SECTION 5 NEWSLETTER  (page-id-3502, section #a89095f (peach background, 50px top margin),

   row #617171d, text col #8991fbb (eyebrow #81a1681, heading #99e14b1, sub-line #2292ecb, button #cd6c2b3),

   photo col #ddf9a63 (cut-out PNG with its own purple arch)). The 50px top margin (the white gap above the

   section) is removed. The flat peach becomes a lavender gradient with soft glows and a dot texture, the photo

   gets a glow behind it, a shape-following drop-shadow and two bobbing dots, and the copy gets a larger heading,

   softer sub-line and a lifting button. CSS only.

   ========================================================================= */

.page-id-3502 .elementor-element-a89095f {

    margin-top: 0 !important;

}

.page-id-3502 .elementor-element-a89095f:not(.elementor-motion-effects-element-type-background),

.page-id-3502 .elementor-element-a89095f > .elementor-motion-effects-container > .elementor-motion-effects-layer {

    background-image:

        radial-gradient(ellipse 40% 60% at 8% 20%, rgba(185, 168, 255, 0.5) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 35% 55% at 90% 90%, rgba(255, 214, 180, 0.45) 0%, rgba(255, 214, 180, 0) 70%),

        radial-gradient(rgba(97, 82, 173, 0.13) 1.2px, transparent 1.6px),

        linear-gradient(135deg, #F4F0FF 0%, #E8E0FF 100%) !important;

    background-size: auto, auto, 26px 26px, auto !important;

    background-color: #EFE9FF !important;

}

.page-id-3502 .elementor-element-a89095f {

    overflow: hidden;

}



/* photo: glow behind, shape-following shadow, bobbing dots */

.page-id-3502 .elementor-element-ddf9a63 {

    position: relative;

}

.page-id-3502 .elementor-element-ddf9a63::before {

    content: '';

    position: absolute;

    z-index: 0;

    left: 8%;

    right: auto;

    top: 18%;

    bottom: auto;

    width: 84%;

    height: auto;

    aspect-ratio: 1;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(97, 82, 173, 0.35) 0%, rgba(97, 82, 173, 0) 70%);

    filter: blur(28px);

    opacity: 1;

    pointer-events: none;

}

.page-id-3502 .elementor-element-ddf9a63 > .elementor-widget-image {

    position: relative;

    z-index: 1;

}

.page-id-3502 .elementor-element-ddf9a63 img {

    display: block;

    filter: drop-shadow(0 22px 26px rgba(45, 36, 99, 0.3));

}

.page-id-3502 .elementor-element-ddf9a63 > .elementor-widget-image::before,

.page-id-3502 .elementor-element-ddf9a63 > .elementor-widget-image::after {

    content: '';

    position: absolute;

    z-index: 2;

    border-radius: 50%;

    pointer-events: none;

    animation: blogNlDot 6s ease-in-out infinite;

}

.page-id-3502 .elementor-element-ddf9a63 > .elementor-widget-image::before {

    width: 20px;

    height: 20px;

    left: -3%;

    top: 40%;

    background: #B9A8FF;

    box-shadow: 0 8px 16px -6px rgba(120, 100, 220, 0.7);

}

.page-id-3502 .elementor-element-ddf9a63 > .elementor-widget-image::after {

    width: 14px;

    height: 14px;

    right: 0;

    top: 30%;

    background: #6152AD;

    box-shadow: 0 8px 14px -6px rgba(97, 82, 173, 0.7);

    animation-delay: -3s;

}

@keyframes blogNlDot {

    0%, 100% { transform: translate(0, 0); }

    50%      { transform: translate(-3px, -9px); }

}



/* copy */

.page-id-3502 .elementor-element-99e14b1 .section-heading {

    font-size: clamp(2.8rem, 2.2rem + 1.2vw, 4.2rem);

    line-height: 1.15;

}

.page-id-3502 .elementor-element-2292ecb .elementor-heading-title {

    font-size: clamp(1.6rem, 1.5rem + 0.2vw, 1.85rem);

    font-weight: 500 !important;

    line-height: 1.65;

    color: #4a4763 !important;

}

.page-id-3502 .elementor-element-cd6c2b3 .elementor-button {

    box-shadow: 0 12px 24px -10px rgba(97, 82, 173, 0.75);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;

}

.page-id-3502 .elementor-element-cd6c2b3 .elementor-button:hover {

    transform: translateY(-3px);

    box-shadow: 0 18px 30px -10px rgba(97, 82, 173, 0.85);

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3502 .elementor-element-ddf9a63 > .elementor-widget-image::before,

    .page-id-3502 .elementor-element-ddf9a63 > .elementor-widget-image::after {

        animation: none;

    }

    .page-id-3502 .elementor-element-cd6c2b3 .elementor-button {

        transition: none;

    }

}



@media (prefers-reduced-motion: reduce) {

    .page-id-3502 .elementor-element-5342edb .blog-tabs button,

    .page-id-3502 .elementor-element-5342edb .blog-card,

    .page-id-3502 .elementor-element-5342edb .blog-image img,

    .page-id-3502 .elementor-element-5342edb .read-more,

    .page-id-3502 .elementor-element-5342edb #loadMoreBtn {

        transition: none;

    }

}





/* =========================================================================

   SCICOM BASICS PAGE - HERO  (page-id-3506, hero section #4af149e, content col #e5cdb56 = .what-sci-wrapper,

   next section #813e2ea). The "Start Here" button (#be01473) is hidden and the scroll cue (built by

   customjs/custom.js, desktop only) starts under the intro paragraph instead, reusing the generic

   .wic-scrollcue styles from the About Me hero (same as Education & Advocacy).

   ========================================================================= */

.page-id-3506 .elementor-element-4af149e {

    position: relative;

}

.page-id-3506 .elementor-element-be01473 {

    display: none !important;

}





/* =========================================================================

   SCICOM BASICS PAGE - "WHAT ACTUALLY MATTERS IN SCICOMM"  (page-id-3506, section #813e2ea, row #186503d;

   text col #c31484b (eyebrow #0a10dc6, heading #b6cc266, sub-line #6f10788), photo col #6c6d705 / image #16bf16d

   (arch PNG), accordion col #f66a758 > nested accordion #b98b26a: details.e-n-accordion-item > summary

   .e-n-accordion-item-title (.e-n-accordion-item-title-header, .e-n-accordion-item-title-icon .e-opened/.e-closed)

   + content container). Redesign: every accordion item is a rounded card with a numbered 01-05 badge, a purple

   arrow icon and a clear open state (purple border, tinted background, filled badge, rotated arrow); the photo

   gets a soft glow, a shape-following shadow and two bobbing dots; the heading is larger and the sub-line softer.

   Responsive: cards and paddings tighten on tablets / phones. CSS only.

   ========================================================================= */

.page-id-3506 .elementor-element-813e2ea .e-n-accordion {

    counter-reset: scAcc;

    display: flex;

    flex-direction: column;

    gap: 14px;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item {

    counter-increment: scAcc;

    margin: 0 !important;

    border: 1px solid rgba(97, 82, 173, 0.16);

    border-radius: 16px;

    background: #ffffff;

    box-shadow: 0 14px 26px -20px rgba(45, 36, 99, 0.45);

    overflow: hidden;

    transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item:hover {

    transform: translateX(6px);

    border-color: rgba(97, 82, 173, 0.4);

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item[open] {

    border-color: #6152AD;

    background: linear-gradient(135deg, #ffffff 0%, #F6F1FF 100%);

    box-shadow: 0 22px 36px -24px rgba(97, 82, 173, 0.65);

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item[open]:hover {

    transform: none;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title {

    display: flex;

    align-items: center;

    gap: 14px;

    padding: 14px 20px !important;

    border: 0 !important;

    border-radius: 0 !important;

    background: transparent !important;

    cursor: pointer;

}

/* numbered badge */

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title::before {

    content: counter(scAcc, decimal-leading-zero);

    flex: none;

    width: 36px;

    height: 36px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: rgba(97, 82, 173, 0.12);

    color: #6152AD;

    font-size: 1.3rem;

    font-weight: 700;

    letter-spacing: 0.02em;

    transition: background 0.3s ease, color 0.3s ease;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item[open] .e-n-accordion-item-title::before {

    background: #6152AD;

    color: #ffffff;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title-header {

    flex: 1;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title-text {

    font-size: 1.75rem;

    font-weight: 700;

    line-height: 1.3;

    color: #1d1b2e;

    transition: color 0.3s ease;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item:hover .e-n-accordion-item-title-text,

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item[open] .e-n-accordion-item-title-text {

    color: #6152AD;

}

/* arrow icon */

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title-icon {

    flex: none;

    transition: transform 0.35s ease;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title-icon span > svg,

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title-icon svg {

    width: 22px !important;

    height: 22px !important;

    fill: #6152AD !important;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item:hover .e-n-accordion-item-title-icon {

    transform: scale(1.12);

}

/* opened content */

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item > .e-con {

    padding: 4px 24px 22px 70px !important;

    border-top: 1px solid rgba(97, 82, 173, 0.14);

    margin: 0 20px 0 0;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item > .e-con p,

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item > .e-con li {

    color: #3a3752;

    line-height: 1.6;

}



/* photo: glow + shadow + bobbing dots (explicit sizes: .e-con::before defaults to a full-size overlay) */

.page-id-3506 .elementor-element-6c6d705::before {

    content: '';

    position: absolute;

    z-index: 0;

    left: 6%;

    right: auto;

    top: 14%;

    bottom: auto;

    width: 88%;

    height: auto;

    aspect-ratio: 1;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(97, 82, 173, 0.32) 0%, rgba(97, 82, 173, 0) 70%);

    filter: blur(30px);

    opacity: 1;

    pointer-events: none;

}

.page-id-3506 .elementor-element-6c6d705 .elementor-element-16bf16d {

    position: relative;

    z-index: 1;

}

.page-id-3506 .elementor-element-6c6d705 .elementor-element-16bf16d img {

    display: block;

    filter: drop-shadow(0 22px 26px rgba(45, 36, 99, 0.28));

}

.page-id-3506 .elementor-element-6c6d705 .elementor-element-16bf16d::before,

.page-id-3506 .elementor-element-6c6d705 .elementor-element-16bf16d::after {

    content: '';

    position: absolute;

    z-index: 2;

    border-radius: 50%;

    pointer-events: none;

    animation: scMatterDot 6s ease-in-out infinite;

}

.page-id-3506 .elementor-element-6c6d705 .elementor-element-16bf16d::before {

    width: 20px;

    height: 20px;

    left: -4%;

    top: 30%;

    background: #B9A8FF;

    box-shadow: 0 8px 16px -6px rgba(120, 100, 220, 0.7);

}

.page-id-3506 .elementor-element-6c6d705 .elementor-element-16bf16d::after {

    width: 14px;

    height: 14px;

    right: -2%;

    bottom: 24%;

    background: #6152AD;

    box-shadow: 0 8px 14px -6px rgba(97, 82, 173, 0.7);

    animation-delay: -3s;

}

@keyframes scMatterDot {

    0%, 100% { transform: translate(0, 0); }

    50%      { transform: translate(-3px, -9px); }

}



/* left copy */

.page-id-3506 .elementor-element-b6cc266 .section-heading {

    font-size: clamp(2.8rem, 2.2rem + 1.2vw, 4rem);

    line-height: 1.15;

}

.page-id-3506 .elementor-element-6f10788 .elementor-heading-title {

    font-size: clamp(1.5rem, 1.4rem + 0.2vw, 1.75rem);

    font-weight: 500 !important;

    line-height: 1.6;

    color: #4a4763 !important;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3506 .elementor-element-813e2ea .e-n-accordion-item,

    .page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title-icon,

    .page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title::before {

        transition: none;

    }

    .page-id-3506 .elementor-element-6c6d705 .elementor-element-16bf16d::before,

    .page-id-3506 .elementor-element-6c6d705 .elementor-element-16bf16d::after {

        animation: none;

    }

}





/* =========================================================================

   SCICOM BASICS PAGE - "MY JOURNEY"  (page-id-3506, section #f0afa0a (photo = its background image sci-com.jpg),

   row #dd7a38d, content col #2c3b662: eyebrow #5db61f9, heading #693d78e, sub-line #844acde, then 4 story steps

   (#026af13, #174efb7, #b3b149f = .cringe-box, and #ab261f3): each step = number-badge image column +

   white card (quote glyph + title + description + round icon column). The dashed connector between steps is the

   generic .cringe-box::before (left offsets per breakpoint) and is left alone, as are the badge positions.

   Redesign: the cards become gradient-tinted rounded cards with a soft border, a purple accent bar that grows on

   hover, a slide/lift on hover, bolder titles, softer description colour, a larger icon that tilts on hover; the badges get

   a glow; the sub-line gets a calmer colour / weight (font sizes untouched). Responsive: tighter cards on phones. CSS only.

   ========================================================================= */

.page-id-3506 .elementor-element-844acde .elementor-heading-title {

    font-weight: 500 !important;

    color: #3a3752 !important;

}



/* dashed connector: a touch softer */

.page-id-3506 .elementor-element-2c3b662 .cringe-box::before {

    border-left-color: rgba(97, 82, 173, 0.55);

}



/* number badges (images) */

.page-id-3506 .elementor-element-2c3b662 > .e-con > .e-con:first-child img {

    filter: drop-shadow(0 8px 12px rgba(97, 82, 173, 0.35));

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3506 .elementor-element-2c3b662 > .e-con:hover > .e-con:first-child img {

    transform: scale(1.14);

}



/* story cards */

.page-id-3506 .elementor-element-2c3b662 > .e-con > .e-con:nth-child(2) {

    border: 1px solid rgba(97, 82, 173, 0.16);

    border-radius: 20px !important;

    background: linear-gradient(135deg, #ffffff 0%, #F7F3FF 100%) !important;

    box-shadow: 0 16px 30px -22px rgba(45, 36, 99, 0.5) !important;

    padding: 14px 18px !important;

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-3506 .elementor-element-2c3b662 > .e-con:hover > .e-con:nth-child(2) {

    transform: translateX(6px);

    border-color: rgba(97, 82, 173, 0.45);

    box-shadow: 0 26px 42px -24px rgba(97, 82, 173, 0.65) !important;

}

/* accent bar (explicit sizes: .e-con::before defaults to a full-size overlay) */

.page-id-3506 .elementor-element-2c3b662 > .e-con > .e-con:nth-child(2)::before {

    content: '';

    position: absolute;

    z-index: 1;

    left: 0;

    right: auto;

    top: 18px;

    bottom: 18px;

    width: 4px;

    height: auto;

    border: 0;

    border-radius: 0 4px 4px 0;

    background: #6152AD;

    opacity: 1;

    transform: scaleY(0);

    transition: transform 0.35s ease;

    pointer-events: none;

}

.page-id-3506 .elementor-element-2c3b662 > .e-con:hover > .e-con:nth-child(2)::before {

    transform: scaleY(1);

}

/* quote glyph, title, description */

.page-id-3506 .elementor-element-2c3b662 .elementor-image-box-wrapper .elementor-image-box-img {

    width: 30px !important;

    opacity: 0.85;

}

.page-id-3506 .elementor-element-2c3b662 .elementor-image-box-title {

    font-weight: 700;

    color: #1d1b2e;

    margin-bottom: 8px;

    transition: color 0.3s ease;

}

.page-id-3506 .elementor-element-2c3b662 > .e-con:hover .elementor-image-box-title {

    color: #6152AD;

}

.page-id-3506 .elementor-element-2c3b662 .elementor-image-box-description {

    color: #4a4763;

}

/* round icon on the right */

.page-id-3506 .elementor-element-2c3b662 > .e-con > .e-con:nth-child(2) > .e-con:last-child img {

    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3506 .elementor-element-2c3b662 > .e-con:hover > .e-con:nth-child(2) > .e-con:last-child img {

    transform: scale(1.1) rotate(-6deg);

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3506 .elementor-element-2c3b662 > .e-con > .e-con:nth-child(2),

    .page-id-3506 .elementor-element-2c3b662 > .e-con > .e-con:nth-child(2)::before,

    .page-id-3506 .elementor-element-2c3b662 > .e-con > .e-con:first-child img,

    .page-id-3506 .elementor-element-2c3b662 > .e-con > .e-con:nth-child(2) > .e-con:last-child img {

        transition: none;

    }

}





/* SCICOM BASICS - "MY JOURNEY": desktop layout. Font sizes are the original Elementor ones (not overridden here).

   Spacing scales with the viewport height (clamp on vh), the quote glyph becomes a small watermark in the card corner

   instead of taking a column of the text width, and the icon column is a fixed 64px. Tablets / phones keep the normal

   stacked layout. */





/* =========================================================================

   SCICOM BASICS PAGE - "WHERE TO GO FROM HERE" RESOURCES  (page-id-3506, section #3040ba3 = .core-principles-section,

   dark #060A11; row #0b5b725; left col #6134f2c: eyebrow #71614bb, heading #5671590, sub-line #038b7a5, glow

   #4aedea9, photo #809a683, handwritten note #56324ed; right col #9253c74: 2x2 grid #8b5fbd1 of resource cards

   (#f6c299e, #d411889, #8ec2e2c, #49d06ab: image-box + .alan-button link) and the "More Coming Soon" grid

   #875c7a0 (#9ddc6b0: text + handwritten note #7dd86a8 + newsletter button #b8f39e7)). Font sizes are NOT touched.

   Cards become frosted gradient tiles with a lavender border, a top accent line that draws in on hover and a lift +

   glow; the link becomes a pill that fills purple on hover; the newsletter button lifts; the handwritten notes drift

   slowly; soft purple glows sit in the section background. .alan-button / .newsletter-popup-btn are shared, so

   everything is scoped to this section. CSS only.

   ========================================================================= */

.page-id-3506 .core-principles-section:not(.elementor-motion-effects-element-type-background) {

    background-image:

        radial-gradient(ellipse 45% 55% at 88% 6%, rgba(97, 82, 173, 0.30) 0%, rgba(97, 82, 173, 0) 70%),

        radial-gradient(ellipse 40% 50% at 8% 96%, rgba(97, 82, 173, 0.20) 0%, rgba(97, 82, 173, 0) 70%) !important;

    background-color: #060A11 !important;

}



/* resource cards + the "More Coming Soon" bar */

.page-id-3506 .core-principles-section .e-grid > .e-con {

    position: relative;

    overflow: hidden;

    border: 1px solid rgba(185, 168, 255, 0.16) !important;

    border-radius: 20px !important;

    background: linear-gradient(145deg, rgba(255, 255, 255, 0.06) 0%, rgba(97, 82, 173, 0.12) 100%) !important;

    box-shadow: 0 18px 34px -24px rgba(0, 0, 0, 0.85);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.35s ease, box-shadow 0.35s ease, background 0.35s ease;

}

.page-id-3506 .core-principles-section .e-grid > .e-con:hover {

    transform: translateY(-6px);

    border-color: rgba(185, 168, 255, 0.5) !important;

    background: linear-gradient(145deg, rgba(255, 255, 255, 0.08) 0%, rgba(97, 82, 173, 0.22) 100%) !important;

    box-shadow: 0 28px 46px -24px rgba(97, 82, 173, 0.65);

}

/* top accent line (explicit sizes: .e-con::before defaults to a full-size overlay) */

.page-id-3506 .core-principles-section .e-grid > .e-con::before {

    content: '';

    position: absolute;

    z-index: 2;

    left: 0;

    right: auto;

    top: 0;

    bottom: auto;

    width: 100%;

    height: 3px;

    border: 0;

    border-radius: 0;

    background: linear-gradient(90deg, #6152AD 0%, #B9A8FF 100%);

    opacity: 1;

    transform: scaleX(0);

    transform-origin: left center;

    transition: transform 0.45s ease;

    pointer-events: none;

}

.page-id-3506 .core-principles-section .e-grid > .e-con:hover::before {

    transform: scaleX(1);

}



/* link buttons ("Learn More", "Explore Programs", "Apply", "Join NASW") -> pills */

.page-id-3506 .core-principles-section .alan-button .elementor-button {

    display: inline-flex;

    align-items: center;

    padding: 7px 16px !important;

    border: 1px solid rgba(185, 168, 255, 0.35);

    border-radius: 999px !important;

    background: rgba(185, 168, 255, 0.08) !important;

    transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease, color 0.3s ease;

}

.page-id-3506 .core-principles-section .e-grid > .e-con:hover .alan-button .elementor-button,

.page-id-3506 .core-principles-section .alan-button .elementor-button:hover {

    background: #6152AD !important;

    border-color: #6152AD;

    color: #ffffff !important;

    transform: translateX(4px);

}

.page-id-3506 .core-principles-section .e-grid > .e-con:hover .alan-button .elementor-button .elementor-button-text,

.page-id-3506 .core-principles-section .alan-button .elementor-button:hover .elementor-button-text {

    color: #ffffff !important;

}

.page-id-3506 .core-principles-section .e-grid > .e-con:hover .alan-button .elementor-button-icon svg,

.page-id-3506 .core-principles-section .alan-button .elementor-button:hover .elementor-button-icon svg {

    fill: #ffffff !important;

}



/* newsletter button in the "More Coming Soon" bar */

.page-id-3506 .core-principles-section .newsletter-popup-btn .elementor-button {

    box-shadow: 0 14px 26px -12px rgba(0, 0, 0, 0.7);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;

}

.page-id-3506 .core-principles-section .newsletter-popup-btn .elementor-button:hover {

    transform: translateY(-3px);

    box-shadow: 0 20px 32px -12px rgba(185, 168, 255, 0.55);

}



/* handwritten notes drift slowly */

.page-id-3506 .core-principles-section .elementor-element-56324ed img,

.page-id-3506 .core-principles-section .elementor-element-7dd86a8 img {

    animation: scNoteDrift 7s ease-in-out infinite;

}

.page-id-3506 .core-principles-section .elementor-element-7dd86a8 img {

    animation-delay: -3.5s;

}

@keyframes scNoteDrift {

    0%, 100% { transform: translateY(0) rotate(0deg); }

    50%      { transform: translateY(-6px) rotate(-1.2deg); }

}





@media (hover: none) {

    .page-id-3506 .core-principles-section .e-grid > .e-con:hover {

        transform: none;

    }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3506 .core-principles-section .e-grid > .e-con,

    .page-id-3506 .core-principles-section .e-grid > .e-con::before,

    .page-id-3506 .core-principles-section .alan-button .elementor-button,

    .page-id-3506 .core-principles-section .newsletter-popup-btn .elementor-button {

        transition: none;

    }

    .page-id-3506 .core-principles-section .elementor-element-56324ed img,

    .page-id-3506 .core-principles-section .elementor-element-7dd86a8 img {

        animation: none;

    }

}





/* SCICOM BASICS - "WHERE TO GO FROM HERE": fit one fold on desktop. Font sizes and column widths are NOT touched.

   The paddings / gaps scale with the viewport height (clamp on vh): the boxed container's inner top padding (the 70px

   lived there, not on the section), column + grid padding, gaps between cards, card padding, the link pill's padding and

   the bar's bottom margin (was 50px). The two grid rows are no longer forced to the same height (auto rows), and the

   title / logo margins inside the cards are a little smaller.

   The photo, its purple glow and the handwritten note in the left column are anchored to the column's bottom, so when the

   column got shorter the note climbed onto the sub-line. All three are now scaled together to 78% (from their bottom-left

   corner) with their bottom offsets recomputed (photo 0, glow 165px, note 345px), which keeps the same composition in less

   height. Tablets / phones keep the stacked layout. */





/* =========================================================================

   SCICOM BASICS PAGE - "BOOKS WORTH READING"  (page-id-3506, section #999296a; header #e6ecf20 (eyebrow #621d690,

   heading #d541713); grid #04e7399 (.e-grid, 2x2) of .houston-image cards: cover column (#a096ad2 ... image widget)

   + white text panel (#7d2a641 ...: image-box with title h3 + author, and the description p)). Font sizes are NOT

   touched. Redesign: each text panel becomes a gradient-tinted rounded panel with a lavender border, purple author

   line, a small 01-04 number badge, and the cover gets a book-like shadow and a slight 3D tilt on hover; the whole card

   lifts on hover. Optimisation: the section is last on a very long page, so it is rendered lazily

   (content-visibility: auto with a reserved size) and the grid rows are equal-height. Paddings scale mildly with

   screen height. Tablets / phones keep the stacked layout. .houston-image is used only here. CSS only.

   ========================================================================= */

.page-id-3506 .elementor-element-999296a {

    content-visibility: auto;

    contain-intrinsic-size: auto 835px;

}

.page-id-3506 .elementor-element-999296a:not(.elementor-motion-effects-element-type-background) {

    background-image:

        radial-gradient(ellipse 45% 50% at 96% 6%, rgba(185, 168, 255, 0.28) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 50% at 4% 96%, rgba(255, 214, 180, 0.22) 0%, rgba(255, 214, 180, 0) 70%) !important;

}



/* grid + cards */

.page-id-3506 .elementor-element-04e7399 {

    counter-reset: bkNum;

    align-items: stretch;

}

.page-id-3506 .houston-image {

    counter-increment: bkNum;

    align-items: center;

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3506 .houston-image:hover {

    transform: translateY(-6px);

}



/* cover: book-like shadow + tilt on hover */

.page-id-3506 .houston-image > .e-con:first-child {

    position: relative;

    z-index: 2;

}

.page-id-3506 .houston-image > .e-con:first-child img {

    border-radius: 8px 3px 3px 8px;

    box-shadow: 0 18px 28px -14px rgba(45, 36, 99, 0.65), 0 2px 4px rgba(0, 0, 0, 0.2);

    transform-origin: left center;

    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease;

}

.page-id-3506 .houston-image:hover > .e-con:first-child img {

    transform: perspective(700px) rotateY(-9deg) translateX(-2px);

    box-shadow: 0 26px 36px -16px rgba(97, 82, 173, 0.7), 0 2px 4px rgba(0, 0, 0, 0.2);

}



/* text panel */

.page-id-3506 .houston-image > .e-con:nth-child(2) {

    position: relative;

    padding: 10px 10px 10px 14px !important;

    border: 1px solid rgba(97, 82, 173, 0.16);

    border-left: 0;

    border-radius: 0 20px 20px 0 !important;

    background: linear-gradient(135deg, #ffffff 0%, #F7F3FF 100%) !important;

    box-shadow: 0 18px 32px -24px rgba(45, 36, 99, 0.5) !important;

    transition: border-color 0.35s ease, box-shadow 0.35s ease;

}

.page-id-3506 .houston-image:hover > .e-con:nth-child(2) {

    border-color: rgba(97, 82, 173, 0.45);

    box-shadow: 0 28px 44px -24px rgba(97, 82, 173, 0.65) !important;

}

/* 01-04 badge (explicit sizes: .e-con::after defaults to a full-size overlay) */

.page-id-3506 .houston-image > .e-con:nth-child(2)::after {

    content: counter(bkNum, decimal-leading-zero);

    position: absolute;

    top: 12px;

    right: 14px;

    left: auto;

    bottom: auto;

    width: auto;

    height: auto;

    padding: 3px 10px;

    border: 0;

    border-radius: 999px;

    background: rgba(97, 82, 173, 0.12);

    color: #6152AD;

    font-size: 1.2rem;

    font-weight: 700;

    letter-spacing: 0.06em;

    line-height: 1.3;

    opacity: 1;

    pointer-events: none;

}

.page-id-3506 .houston-image .elementor-image-box-title {

    padding-right: 42px;

    font-weight: 700;

    color: #1d1b2e;

    transition: color 0.3s ease;

}

.page-id-3506 .houston-image:hover .elementor-image-box-title {

    color: #6152AD;

}

.page-id-3506 .houston-image .elementor-image-box-description {

    color: #6152AD;

    font-weight: 600;

}

.page-id-3506 .houston-image > .e-con:nth-child(2) > p {

    color: #4a4763;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3506 .houston-image,

    .page-id-3506 .houston-image > .e-con:first-child img,

    .page-id-3506 .houston-image > .e-con:nth-child(2),

    .page-id-3506 .houston-image .elementor-image-box-title {

        transition: none;

    }

}





/* =========================================================================

   NO DUMB QUESTIONS JOURNAL CLUB PAGE - HERO  (page-id-4980, hero section #9775baf (photo = its background image

   no-dumb-questions-scaled.webp), row #91aea87, content col #858372a = .what-sci-wrapper: eyebrow #ea38a83, heading

   #a994093 (h1.banner-inner-heading, .colorTxt accent), paragraph .banner-subheading, button #334f86b). Same

   treatment as the Science Reads / Research Advice heroes: slow-drifting soft colour blobs behind the copy, a

   staggered fade-up entrance, a shimmering italic accent on hover, and a glowing lift + light sweep on the

   button. Font sizes are not touched. CSS only.

   ========================================================================= */

.page-id-4980 .elementor-element-9775baf {

    position: relative;

    overflow: hidden;

}

.page-id-4980 .elementor-element-9775baf::after {

    content: '';

    position: absolute;

    top: -20%;

    left: -10%;

    right: auto;

    bottom: auto;

    width: 46%;

    height: 140%;

    background:

        radial-gradient(circle at 20% 30%, rgba(152, 128, 244, 0.22) 0%, transparent 55%),

        radial-gradient(circle at 70% 75%, rgba(97, 82, 173, 0.16) 0%, transparent 50%);

    filter: blur(10px);

    pointer-events: none;

    z-index: 1;

    animation: jcHeroBlob 12s ease-in-out infinite;

}

@keyframes jcHeroBlob {

    0%, 100% { transform: translate(0, 0) scale(1); }

    50%      { transform: translate(3%, -4%) scale(1.06); }

}

.page-id-4980 .elementor-element-9775baf > .e-con-inner {

    position: relative;

    z-index: 2;

}



/* staggered entrance for the copy */

.page-id-4980 .elementor-element-ea38a83,

.page-id-4980 .elementor-element-a994093,

.page-id-4980 .elementor-element-858372a > .banner-subheading,

.page-id-4980 .elementor-element-334f86b {

    opacity: 0;

    animation: jcHeroFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-4980 .elementor-element-ea38a83 { animation-delay: 0.05s; }

.page-id-4980 .elementor-element-a994093 { animation-delay: 0.18s; }

.page-id-4980 .elementor-element-858372a > .banner-subheading { animation-delay: 0.32s; }

.page-id-4980 .elementor-element-334f86b { animation-delay: 0.46s; }

@keyframes jcHeroFadeUp {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: translateY(0); }

}



/* headline accent: shimmer sweep on hover */

.page-id-4980 .elementor-element-a994093 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-4980 .elementor-element-a994093:hover .colorTxt {

    background-position: 100% 0%;

}



/* button: glowing lift + light sweep */

.page-id-4980 .elementor-element-334f86b a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-4980 .elementor-element-334f86b a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-4980 .elementor-element-334f86b a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-4980 .elementor-element-334f86b a:hover::before {

    left: 130%;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-4980 .elementor-element-9775baf::after {

        animation: none;

    }

    .page-id-4980 .elementor-element-ea38a83,

    .page-id-4980 .elementor-element-a994093,

    .page-id-4980 .elementor-element-858372a > .banner-subheading,

    .page-id-4980 .elementor-element-334f86b {

        opacity: 1;

        animation: none;

    }

}





/* =========================================================================

   NO DUMB QUESTIONS JOURNAL CLUB PAGE - "THE IDEA"  (page-id-4980, section #8d6c281, row #412d1b6, photo col #76c9697 /

   image #ffa6148 (cut-out PNG with its own arch), text col #c32e258: eyebrow #d407c39, heading #b2399a3, two

   paragraphs). Photo: soft purple glow behind it, a shape-following shadow and two bobbing dots (no disc / ring).

   Copy: the second paragraph (the "No Dumb Questions" idea) gets a purple left line and a stronger colour, the first

   stays calmer; a light lavender / peach wash behind the section. Font sizes are not touched. CSS only.

   ========================================================================= */

.page-id-4980 .elementor-element-8d6c281:not(.elementor-motion-effects-element-type-background) {

    background-image:

        radial-gradient(ellipse 45% 70% at 18% 60%, rgba(185, 168, 255, 0.22) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 55% at 96% 15%, rgba(255, 214, 180, 0.20) 0%, rgba(255, 214, 180, 0) 70%) !important;

}



/* photo column: glow behind (explicit sizes: .e-con::before defaults to a full-size overlay) */

.page-id-4980 .elementor-element-76c9697::before {

    content: '';

    position: absolute;

    z-index: 0;

    left: 6%;

    right: auto;

    top: 18%;

    bottom: auto;

    width: 88%;

    height: auto;

    aspect-ratio: 1;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(97, 82, 173, 0.32) 0%, rgba(97, 82, 173, 0) 70%);

    filter: blur(28px);

    opacity: 1;

    pointer-events: none;

}

.page-id-4980 .elementor-element-76c9697 .elementor-element-ffa6148 {

    position: relative;

    z-index: 1;

}

.page-id-4980 .elementor-element-76c9697 .elementor-element-ffa6148 img {

    display: block;

    /* the PNG's last pixel row can be transparent (thin light line above the next section) */

    margin-bottom: -1px;

    filter: drop-shadow(0 22px 26px rgba(45, 36, 99, 0.28));

}

/* two light icon badges (speech bubble with a "?" = the questions, open book = the journal): pastel disc + white ring,

   line icon as an inline SVG background; they drift slowly */

.page-id-4980 .elementor-element-76c9697 .elementor-element-ffa6148::before,

.page-id-4980 .elementor-element-76c9697 .elementor-element-ffa6148::after {

    content: '';

    position: absolute;

    z-index: 2;

    width: 54px;

    height: 54px;

    border-radius: 50%;

    background-repeat: no-repeat;

    background-position: center;

    background-size: 26px 26px;

    box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.9), 0 12px 24px -10px rgba(97, 82, 173, 0.45);

    pointer-events: none;

    animation: jcIdeaIcon 6s ease-in-out infinite;

}

/* speech bubble with a question mark - left of the photo, peach */

.page-id-4980 .elementor-element-76c9697 .elementor-element-ffa6148::before {

    left: -7%;

    top: 20%;

    background-color: #FFF0E5;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E8993D' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20l1-4.3A8 8 0 1 1 21 12z'/%3E%3Cpath d='M9.6 9.6a2.4 2.4 0 1 1 3.4 2.2c-.7.4-1 .8-1 1.5'/%3E%3Ccircle cx='12' cy='16.2' r='.7' fill='%23E8993D'/%3E%3C/svg%3E");

}

/* open book - lower right of the photo, lavender */

.page-id-4980 .elementor-element-76c9697 .elementor-element-ffa6148::after {

    right: -2%;

    bottom: 22%;

    background-color: #F0ECFF;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238F7CE6' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 6.5C10.5 5 8 4.5 4 4.5v13c4 0 6.5.5 8 2 1.5-1.5 4-2 8-2v-13c-4 0-6.5.5-8 2z'/%3E%3Cpath d='M12 6.5v13'/%3E%3C/svg%3E");

    animation-delay: -3s;

}

@keyframes jcIdeaIcon {

    0%, 100% { transform: translateY(0) rotate(0deg); }

    50%      { transform: translateY(-9px) rotate(-4deg); }

}



/* copy */

.page-id-4980 .elementor-element-c32e258 > p:first-of-type {

    color: #3a3752;

}

.page-id-4980 .elementor-element-c32e258 > p:last-of-type {

    position: relative;

    padding-left: 22px;

    color: #1d1b2e;

    font-weight: 500;

}

.page-id-4980 .elementor-element-c32e258 > p:last-of-type::before {

    content: '';

    position: absolute;

    left: 0;

    top: 4px;

    bottom: 4px;

    width: 4px;

    height: auto;

    border-radius: 0 4px 4px 0;

    background: #6152AD;

}



@media (prefers-reduced-motion: reduce) {

    .page-id-4980 .elementor-element-76c9697 .elementor-element-ffa6148::before,

    .page-id-4980 .elementor-element-76c9697 .elementor-element-ffa6148::after {

        animation: none;

    }

}





/* =========================================================================

   NO DUMB QUESTIONS JOURNAL CLUB PAGE - "HERE'S HOW EACH EDITION WORKS"  (page-id-4980, section #50cf42f (dark, photo on

   the right as its background image Group-1000015702.jpg), row #e3f015b, left column #2f6cd73 with the heading and the

   steps list #e13b3da; each step = row (#d7d1dd8, #73dfc5f, #47924a8, #7badee7) with an icon column + a .research-paper-box

   text column). customjs/custom.js builds the sticky photo layer (.jc-steps-photo), sets the line variables on the list and

   toggles .jc-reached / .is-active on the steps. Font sizes are not touched.

   - the vertical gradient line at the left of every text block (.research-paper-box::before) is removed on this page

   - sticky photo (desktop): the photo stays under the header while the steps scroll past

   - one continuous line joins the icons: grey track + lit fill that travels down with the scroll; icons light up as

     the fill reaches them

   - the step nearest the middle of the screen is active: soft shadow + glow, the others are slightly dimmed

   ========================================================================= */

/* the old left line on each step's text block */

.page-id-4980 .elementor-element-e13b3da .research-paper-box::before {

    display: none !important;

}



/* sticky photo layer (desktop). Base = a solid dark colour close to the photo's own dark half. .jc-steps-photo is an absolute

   wrapper with exactly the section's size; the photo (.jc-steps-photo-stick) is a viewport-height sticky child inside it, so it

   stays under the fixed header (65px) while the section is on screen and can never run past the section's end. */

.jc-steps-photo {

    display: none;

}





/* the list: line through the icon centres */

.page-id-4980 .elementor-element-e13b3da {

    position: relative;

}

.page-id-4980 .elementor-element-e13b3da::before,

.page-id-4980 .elementor-element-e13b3da::after {

    content: '';

    position: absolute;

    left: calc(var(--jc-x, 63px) - 1.5px);

    right: auto;

    top: var(--jc-top, 0);

    bottom: auto;

    width: 3px;

    border-radius: 3px;

    pointer-events: none;

    z-index: 0;

    opacity: 1;

}

.page-id-4980 .elementor-element-e13b3da::before {

    height: var(--jc-len, 0);

    background: rgba(154, 134, 236, 0.20);

}

.page-id-4980 .elementor-element-e13b3da::after {

    height: calc(var(--jc-len, 0px) * var(--jc-p, 0));

    background: linear-gradient(180deg, #8f7be6 0%, #c3b5ff 100%);

    box-shadow: 0 0 12px 1px rgba(154, 134, 236, 0.65);

    transition: height 0.18s linear;

}



/* steps */

.page-id-4980 .elementor-element-e13b3da > .e-con {

    position: relative;

    z-index: 1;

    border-radius: 22px;

    opacity: 0.62;

    transition: opacity 0.45s ease, box-shadow 0.45s ease, background 0.45s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-4980 .elementor-element-e13b3da > .e-con.is-active {

    opacity: 1;

    transform: translateX(6px);

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.06) 0%, rgba(154, 134, 236, 0.10) 100%);

    box-shadow:

        0 0 0 1px rgba(154, 134, 236, 0.30),

        0 24px 46px -24px rgba(0, 0, 0, 0.65),

        0 0 42px -8px rgba(154, 134, 236, 0.38);

}



/* icons: dark disc so the line never shows through the ring, dim until the fill reaches them */

.page-id-4980 .elementor-element-e13b3da > .e-con img {

    border-radius: 50%;

    background: #121027;

    filter: saturate(0.5) brightness(0.72);

    transition: filter 0.45s ease, box-shadow 0.45s ease, transform 0.45s ease;

}

.page-id-4980 .elementor-element-e13b3da > .e-con.jc-reached img {

    filter: none;

    box-shadow: 0 0 22px -2px rgba(154, 134, 236, 0.7);

}

.page-id-4980 .elementor-element-e13b3da > .e-con.is-active img {

    transform: scale(1.06);

    box-shadow: 0 0 28px 0 rgba(154, 134, 236, 0.85);

}





@media (prefers-reduced-motion: reduce) {

    .page-id-4980 .elementor-element-e13b3da::after,

    .page-id-4980 .elementor-element-e13b3da > .e-con,

    .page-id-4980 .elementor-element-e13b3da > .e-con img {

        transition: none;

    }

    .page-id-4980 .elementor-element-e13b3da > .e-con {

        opacity: 1;

    }

}





/* =========================================================================

   NO DUMB QUESTIONS JOURNAL CLUB PAGE - "PAPERS WE'VE COVERED"  (page-id-4980, section #f9ea1a4: header #f40984e (eyebrow

   #347f6d2, heading #21269fa, sub-line #50748f5); block 1 = shortcode #64a5dac -> .ydq-wrapper > .ydq-grid > .ydq-featured

   (iframe + h3 + p) + .ydq-side-posts (3 x .ydq-post-item: .ydq-thumb img + .ydq-content h4 + p); the reels swiper (#707570a)

   and the cards slider (#eda8773) below are separate blocks and are not touched here). The shortcode prints its own

   inline CSS, so this is scoped to this page. Font sizes of the existing text are NOT touched.

   Two-box layout (design taken from a reference, no functionality copied): the LEFT box (lavender) holds the featured YouTube

   video with its title + description, the RIGHT box (warm peach to lavender) holds the episode cards; each box has its heading

   at the top ("Latest Episode" / "More Episodes", added with ::before). The episode cards are white rounded cards with a small

   "Episode" tag, the title, the excerpt and a round arrow button; thumbnails zoom and show a play button on hover. The two

   boxes have the same height, the cards share the right box's height equally, and the widths add up to exactly 100% of the row.

   ========================================================================= */

.page-id-4980 .elementor-element-50748f5 .elementor-heading-title {

    font-weight: 500 !important;

    color: #4a4763 !important;

}

.page-id-4980 .elementor-element-f9ea1a4:not(.elementor-motion-effects-element-type-background) {

    background-image:

        radial-gradient(ellipse 45% 30% at 6% 12%, rgba(185, 168, 255, 0.20) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 30% at 96% 40%, rgba(255, 214, 180, 0.18) 0%, rgba(255, 214, 180, 0) 70%) !important;

}



.page-id-4980 .ydq-wrapper .ydq-grid {

    gap: 24px;

    align-items: stretch;

}



/* the two boxes */

.page-id-4980 .ydq-wrapper .ydq-featured,

.page-id-4980 .ydq-wrapper .ydq-side-posts {

    position: relative;

    padding: 24px 24px 26px;

    border-radius: 30px;

    border: 1px solid rgba(97, 82, 173, 0.12);

    box-shadow: 0 30px 50px -40px rgba(45, 36, 99, 0.55);

}

.page-id-4980 .ydq-wrapper .ydq-featured {

    background: linear-gradient(160deg, #EBE4FA 0%, #E3DAF8 100%);

}

.page-id-4980 .ydq-wrapper .ydq-side-posts {

    display: flex;

    flex-direction: column;

    gap: 14px;

    background: linear-gradient(135deg, #FFF3EA 0%, #F8F0FA 55%, #F1ECFA 100%);

}

/* box headings */

.page-id-4980 .ydq-wrapper .ydq-featured::before,

.page-id-4980 .ydq-wrapper .ydq-side-posts::before {

    display: block;

    flex: none;

    margin: 0 0 18px;

    font-size: 2.6rem;

    font-weight: 500;

    line-height: 1.2;

    letter-spacing: -0.01em;

    color: #223973;

}

.page-id-4980 .ydq-wrapper .ydq-featured::before {

    content: 'Latest Episode';

}

.page-id-4980 .ydq-wrapper .ydq-side-posts::before {

    content: 'More Episodes';

    margin-bottom: 4px;

}



/* left box: video + its text */

.page-id-4980 .ydq-wrapper .ydq-featured iframe {

    display: block;

    /* a script sets an inline width/height on this iframe (it took the box's full width incl. padding, and 34px once during load);

       !important keeps the video at the box's content width in 16:9 whatever it sets */

    width: 100% !important;

    height: auto !important;

    aspect-ratio: 16 / 9 !important;

    border: 0;

    border-radius: 20px;

    box-shadow: 0 22px 36px -22px rgba(6, 10, 17, 0.75);

}

.page-id-4980 .ydq-wrapper .ydq-featured h3,

.page-id-4980 .ydq-wrapper .ydq-featured p {

    padding: 0 4px;

}

.page-id-4980 .ydq-wrapper .ydq-featured h3 a {

    transition: color 0.3s ease;

}

.page-id-4980 .ydq-wrapper .ydq-featured h3 a:hover {

    color: #6152AD;

}

.page-id-4980 .ydq-wrapper .ydq-featured p {

    margin-bottom: 0;

    color: #4a4763;

}



/* right box: episode cards (white, rounded) */

.page-id-4980 .ydq-wrapper .ydq-post-item {

    flex: 1;

    align-items: center;

    gap: 18px;

    margin: 0;

    padding: 14px 16px;

    border: 1px solid rgba(97, 82, 173, 0.12);

    border-radius: 22px;

    background: #ffffff;

    box-shadow: 0 14px 26px -22px rgba(45, 36, 99, 0.5);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-4980 .ydq-wrapper .ydq-post-item:hover {

    transform: translateY(-3px);

    border-color: rgba(97, 82, 173, 0.4);

    box-shadow: 0 22px 36px -22px rgba(97, 82, 173, 0.6);

}

.page-id-4980 .ydq-wrapper .ydq-thumb a {

    position: relative;

    display: block;

    overflow: hidden;

    border-radius: 16px;

}

.page-id-4980 .ydq-wrapper .ydq-thumb img {

    border-radius: 16px;

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-4980 .ydq-wrapper .ydq-post-item:hover .ydq-thumb img {

    transform: scale(1.08);

}

/* play button on the thumbnail (hover) */

.page-id-4980 .ydq-wrapper .ydq-thumb a::after {

    content: '';

    position: absolute;

    left: 50%;

    top: 50%;

    width: 42px;

    height: 42px;

    margin: -21px 0 0 -21px;

    border-radius: 50%;

    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42 42'%3E%3Ccircle cx='21' cy='21' r='21' fill='white' fill-opacity='.95'/%3E%3Cpath d='M17 13v16l13-8z' fill='%236152AD'/%3E%3C/svg%3E") center / 100% 100% no-repeat;

    box-shadow: 0 10px 20px -8px rgba(6, 10, 17, 0.6);

    opacity: 0;

    transform: scale(0.8);

    transition: opacity 0.3s ease, transform 0.3s ease;

    pointer-events: none;

}

.page-id-4980 .ydq-wrapper .ydq-post-item:hover .ydq-thumb a::after {

    opacity: 1;

    transform: scale(1);

}

/* small tag above the title */

.page-id-4980 .ydq-wrapper .ydq-content::before {

    content: 'Episode';

    display: inline-block;

    margin-bottom: 8px;

    padding: 2px 12px;

    border-radius: 8px;

    background: rgba(97, 82, 173, 0.12);

    color: #6152AD;

    font-size: 1.25rem;

    font-weight: 600;

    line-height: 1.5;

}

.page-id-4980 .ydq-wrapper .ydq-content h4 {

    margin-bottom: 6px;

}

.page-id-4980 .ydq-wrapper .ydq-content h4 a {

    transition: color 0.3s ease;

}

.page-id-4980 .ydq-wrapper .ydq-post-item:hover .ydq-content h4 a {

    color: #6152AD;

}

.page-id-4980 .ydq-wrapper .ydq-content p {

    color: #4a4763;

}

/* round arrow button at the right end of each card (decorative: the thumbnail and the title are the links) */

.page-id-4980 .ydq-wrapper .ydq-post-item::after {

    content: '\2197';

    flex: none;

    width: 42px;

    height: 42px;

    margin-left: auto;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #EBE4FA;

    color: #6152AD;

    font-size: 1.7rem;

    line-height: 1;

    transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease;

}

.page-id-4980 .ydq-wrapper .ydq-post-item:hover::after {

    background: #6152AD;

    color: #ffffff;

    transform: rotate(45deg);

}



/* desktop: exact widths (the 1022-1099 and tablet rules of the shortcode keep applying below 1100px) */





@media (prefers-reduced-motion: reduce) {

    .page-id-4980 .ydq-wrapper .ydq-post-item,

    .page-id-4980 .ydq-wrapper .ydq-thumb img,

    .page-id-4980 .ydq-wrapper .ydq-thumb a::after,

    .page-id-4980 .ydq-wrapper .ydq-post-item::after {

        transition: none;

    }

}





/* =========================================================================

   NO DUMB QUESTIONS JOURNAL CLUB PAGE - INSTAGRAM REELS  (also used by page-id-3510 Women's Health and page-id-3518 Diversity & Inclusion "Quick Cuts"; page-id-4980, section #f9ea1a4 -> block #c885880 -> shortcode #707570a

   -> .ck-no-dumb-questions-reels-section > .swiper.ck-no-dumb-questions-swiper > .swiper-slide > a.ck-reel-card

   (.ck-reel-thumbnail: img + .ck-play-btn; .ck-reel-content: h3 + p)). The shortcode prints its own inline CSS, so this is scoped

   to this page. Goal: the block should feel like Instagram. customjs/custom.js adds the decorative pieces (.ig-profile strip,

   .ig-head, .ig-reel-badge, .ig-actions, .ig-view). Cards: white posts with a thin grey border, the post header, the picture

   (without the heavy dark gradient; translucent Instagram-style play button + reel badge), an action row, then the caption

   (title in bold, excerpt) and a quiet "View on Instagram" line. Pagination dots are Instagram's (small grey, blue active).

   Existing text keeps its font sizes. The whole card still links to the Instagram post.

   ========================================================================= */

/* equal-height posts: every slide stretches to the tallest one */

:is(.page-id-4980 .ck-no-dumb-questions-swiper, .page-id-3510 .ck-women-health-swiper, .page-id-3518 .ck-diversity-swiper) .swiper-wrapper {

    align-items: stretch !important;

}

:is(.page-id-4980 .ck-no-dumb-questions-swiper, .page-id-3510 .ck-women-health-swiper, .page-id-3518 .ck-diversity-swiper) .swiper-slide {

    height: auto !important;

}



/* profile strip */

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ig-profile {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 16px;

    flex-wrap: wrap;

    padding: 0 4px 22px;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-profile-id {

    display: flex;

    align-items: center;

    gap: 14px;

    text-decoration: none;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-profile-text {

    display: flex;

    flex-direction: column;

    gap: 2px;

    line-height: 1.25;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-profile-text strong {

    font-size: 1.7rem;

    font-weight: 700;

    color: #262626;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-profile-text span {

    font-size: 1.35rem;

    color: #737373;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-follow {

    padding: 8px 26px;

    border-radius: 8px;

    background: #0095f6;

    color: #ffffff;

    font-size: 1.5rem;

    font-weight: 600;

    line-height: 1.3;

    text-decoration: none;

    transition: background 0.25s ease, transform 0.25s ease;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-follow:hover {

    background: #1877f2;

    color: #ffffff;

    transform: translateY(-1px);

}



/* avatar with Instagram's gradient ring */

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-avatar {

    flex: none;

    display: block;

    padding: 2.5px;

    border-radius: 50%;

    background: linear-gradient(45deg, #feda75 0%, #fa7e1e 25%, #d62976 50%, #962fbf 75%, #4f5bd5 100%);

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-avatar img {

    display: block;

    width: 100%;

    height: 100%;

    border: 2px solid #ffffff;

    border-radius: 50%;

    object-fit: cover;

    background: #ffffff;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-avatar-empty::after {

    content: '';

    display: block;

    width: 100%;

    height: 100%;

    border: 2px solid #ffffff;

    border-radius: 50%;

    background: #EBE4FA;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-avatar-lg {

    width: 62px;

    height: 62px;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-avatar-sm {

    width: 36px;

    height: 36px;

    padding: 2px;

}



/* the post card */

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-reel-card {

    display: flex;

    flex-direction: column;

    border: 1px solid rgba(38, 38, 38, 0.12);

    border-radius: 14px;

    background: #ffffff;

    box-shadow: 0 14px 30px -22px rgba(0, 0, 0, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;

}

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-reel-card:hover {

    transform: translateY(-4px);

    box-shadow: 0 24px 40px -22px rgba(0, 0, 0, 0.5);

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-head {

    display: flex;

    align-items: center;

    gap: 10px;

    padding: 10px 12px;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-handle {

    flex: 1;

    min-width: 0;

    overflow: hidden;

    text-overflow: ellipsis;

    white-space: nowrap;

    font-size: 1.4rem;

    font-weight: 600;

    color: #262626;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-more {

    display: flex;

    color: #262626;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-more svg {

    width: 20px;

    height: 20px;

}



/* the picture: lighter overlay, translucent play button, reel badge */

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-reel-thumbnail::after {

    background: linear-gradient(to top, rgba(0, 0, 0, 0.28), rgba(0, 0, 0, 0) 40%);

}

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-reel-thumbnail img {

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-reel-card:hover .ck-reel-thumbnail img {

    transform: scale(1.04);

}

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-play-btn {

    z-index: 2;

    color: #ffffff;

    background: rgba(0, 0, 0, 0.32) !important;

    border: 2px solid rgba(255, 255, 255, 0.9);

    -webkit-backdrop-filter: blur(6px);

    backdrop-filter: blur(6px);

    box-shadow: 0 10px 24px -8px rgba(0, 0, 0, 0.5);

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-reel-badge {

    position: absolute;

    z-index: 2;

    top: 10px;

    right: 10px;

    display: flex;

    color: #ffffff;

    filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.6));

    pointer-events: none;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-reel-badge svg {

    width: 24px;

    height: 24px;

}



/* action row */

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-actions {

    display: flex;

    align-items: center;

    gap: 16px;

    padding: 10px 12px 0;

    color: #262626;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-act {

    display: flex;

    transition: transform 0.25s ease, color 0.25s ease;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-act svg {

    width: 24px;

    height: 24px;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ck-reel-card:hover .ig-act:first-child {

    color: #ed4956;

    transform: scale(1.12);

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-save {

    margin-left: auto;

}



/* caption */

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-reel-content {

    flex: 1;

    padding: 8px 14px 14px;

}

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-reel-content h3 {

    margin-bottom: 6px;

    color: #262626;

}

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-reel-content p {

    color: #4a4a4a;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-view {

    display: block;

    margin-top: 8px;

    font-size: 1.3rem;

    font-weight: 500;

    color: #737373;

    transition: color 0.25s ease;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ck-reel-card:hover .ig-view {

    color: #0095f6;

}



/* pagination dots: Instagram's carousel dots */

:is(.page-id-4980 .ck-no-dumb-questions-swiper, .page-id-3510 .ck-women-health-swiper, .page-id-3518 .ck-diversity-swiper) .swiper-pagination-bullet {

    width: 7px;

    height: 7px;

    border-radius: 50%;

    background: #c7c7c7 !important;

    opacity: 1;

}

:is(.page-id-4980 .ck-no-dumb-questions-swiper, .page-id-3510 .ck-women-health-swiper, .page-id-3518 .ck-diversity-swiper) .swiper-pagination-bullet-active {

    width: 7px;

    border-radius: 50%;

    background: #0095f6 !important;

}





@media (prefers-reduced-motion: reduce) {

    :is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-reel-card,

    :is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-reel-thumbnail img,

    :is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-act,

    :is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-follow {

        transition: none;

    }

}





/* INSTAGRAM REELS - dots below the cards (no overlap) + a more compact block so it fits one fold. The swiper gets a bottom band

   for the dots (its own 55px padding was computed as 0), the dots sit in that band, and the vertical chrome is tightened:

   wrapper padding, profile strip, post header, action row, caption padding. custom.js also shows 4.5 cards per view from 1200px

   up (narrower cards = shorter pictures). Existing text keeps its font sizes. */

:is(.page-id-4980 .ck-no-dumb-questions-swiper, .page-id-3510 .ck-women-health-swiper, .page-id-3518 .ck-diversity-swiper) {

    padding-bottom: 40px !important;

}

:is(.page-id-4980 .ck-no-dumb-questions-swiper, .page-id-3510 .ck-women-health-swiper, .page-id-3518 .ck-diversity-swiper) .swiper-pagination {

    top: auto !important;

    bottom: 10px !important;

}

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) {

    padding: 6px 0 0;

}

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ig-profile {

    padding-bottom: 14px;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-avatar-lg {

    width: 54px;

    height: 54px;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-head {

    padding: 8px 12px;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-actions {

    padding: 8px 12px 0;

}

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-reel-content {

    padding: 6px 14px 12px;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-view {

    margin-top: 6px;

}





/* INSTAGRAM REELS - short laptop screens (<= 800px tall, desktop widths): one more notch of spacing so the block still fits a fold

   (profile strip, post header, action row, caption padding, the dots band). Font sizes are not touched. */





/* =========================================================================

   NO DUMB QUESTIONS JOURNAL CLUB PAGE - PAPER PDF CARDS SLIDER  (page-id-4980, section #f9ea1a4 -> block #1a3d07a -> shortcode

   #eda8773 -> .swiper.custom-category-slider > .swiper-slide > .custom-slide-item (a.post-thumb img + .post-content:

   .post-category "Paper Pdf", h3.post-title)). The cards slider shortcode prints its own inline CSS and

   .custom-slide-item / .post-* are shared with other pages, so this is scoped to this block. Font sizes are NOT touched.

   Cards: rounded white cards with a lavender border and soft shadow, a photo that zooms and shows a round arrow chip on hover,

   the category as a lavender pill, a bolder title that turns purple on hover, equal heights and a lift on hover. The pagination

   dots (they sat on the cards' bottom edge: the swiper's bottom padding is only 3px) get their own band below the cards.

   ========================================================================= */

.page-id-4980 .elementor-element-1a3d07a .custom-category-slider {

    padding-bottom: 42px !important;

}

.page-id-4980 .elementor-element-1a3d07a .custom-category-slider .swiper-pagination {

    top: auto !important;

    bottom: 10px !important;

}

.page-id-4980 .elementor-element-1a3d07a .swiper-pagination-bullet {

    width: 8px;

    height: 8px;

    background: #cfc8ea !important;

    opacity: 1;

    transition: width 0.3s ease, background 0.3s ease;

}

.page-id-4980 .elementor-element-1a3d07a .swiper-pagination-bullet-active {

    width: 24px;

    border-radius: 6px;

    background: #6152AD !important;

}

.page-id-4980 .elementor-element-1a3d07a .custom-category-slider .swiper-wrapper {

    align-items: stretch;

}

.page-id-4980 .elementor-element-1a3d07a .custom-category-slider .swiper-slide {

    height: auto;

}



/* the cards */

.page-id-4980 .elementor-element-1a3d07a .custom-slide-item {

    display: flex;

    flex-direction: column;

    min-height: 0;

    border-radius: 22px;

    border: 1px solid rgba(97, 82, 173, 0.14);

    background: #ffffff;

    box-shadow: 0 14px 26px -20px rgba(45, 36, 99, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-4980 .elementor-element-1a3d07a .custom-slide-item:hover {

    transform: translateY(-6px);

    border-color: rgba(97, 82, 173, 0.42);

    box-shadow: 0 26px 40px -22px rgba(97, 82, 173, 0.6);

}

.page-id-4980 .elementor-element-1a3d07a .post-thumb {

    position: relative;

    display: block;

    overflow: hidden;

}

.page-id-4980 .elementor-element-1a3d07a .post-thumb img {

    height: 230px;

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-4980 .elementor-element-1a3d07a .custom-slide-item:hover .post-thumb img {

    transform: scale(1.07);

}

/* soft shade at the foot of the photo + round arrow chip that appears on hover */

.page-id-4980 .elementor-element-1a3d07a .post-thumb::before {

    content: '';

    position: absolute;

    left: 0;

    right: 0;

    bottom: 0;

    height: 45%;

    background: linear-gradient(to top, rgba(45, 36, 99, 0.28), rgba(45, 36, 99, 0));

    pointer-events: none;

    z-index: 1;

}

.page-id-4980 .elementor-element-1a3d07a .post-thumb::after {

    content: '\2192';

    position: absolute;

    right: 14px;

    bottom: 14px;

    z-index: 2;

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffffff;

    color: #6152AD;

    font-size: 2rem;

    font-weight: 700;

    line-height: 1;

    box-shadow: 0 10px 20px -8px rgba(6, 10, 17, 0.5);

    opacity: 0;

    transform: translateY(6px) scale(0.9);

    transition: opacity 0.35s ease, transform 0.35s ease;

}

.page-id-4980 .elementor-element-1a3d07a .custom-slide-item:hover .post-thumb::after {

    opacity: 1;

    transform: translateY(0) scale(1);

}

.page-id-4980 .elementor-element-1a3d07a .post-content {

    flex: 1;

    padding: 18px 20px 22px;

}

.page-id-4980 .elementor-element-1a3d07a .post-category {

    display: inline-block;

    margin-bottom: 12px;

    padding: 4px 12px;

    border-radius: 999px;

    background: rgba(97, 82, 173, 0.12);

    color: #6152AD;

    font-size: 1.2rem;

    letter-spacing: 0.1em;

}

.page-id-4980 .elementor-element-1a3d07a .post-title {

    font-weight: 700;

}

.page-id-4980 .elementor-element-1a3d07a .post-title a {

    color: #1d1b2e;

    transition: color 0.3s ease;

}

.page-id-4980 .elementor-element-1a3d07a .custom-slide-item:hover .post-title a {

    color: #6152AD;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-4980 .elementor-element-1a3d07a .custom-slide-item,

    .page-id-4980 .elementor-element-1a3d07a .post-thumb img,

    .page-id-4980 .elementor-element-1a3d07a .post-thumb::after,

    .page-id-4980 .elementor-element-1a3d07a .swiper-pagination-bullet {

        transition: none;

    }

}





/* =========================================================================

   NO DUMB QUESTIONS JOURNAL CLUB PAGE - "THE RESEARCH IS CLOSER THAN YOU THINK"  (page-id-4980, section #d1a087d, header #f0e0064

   (eyebrow #148faa0, heading #d2a365b, sub-line #a67890a), grid #b607d5b (3 columns) of 6 resource cards (#d37ed1e, #1250efb, #46dcb3c,

   #9e89b25, #420ead7, #c4b9d33): image-box (logo + title + description) + outlined button (.purple-button.button-onHover)).

   Font sizes are NOT touched. What changes:

   - the button now always sits at the bottom of its card (the image-box takes the free space) so all buttons line up in a row; before,

     it followed the description so each card's button was at a different height

   - extra space removed: section top/bottom padding, the grid's own 10px padding, the header gap, widgets' default margins

   - logos sit in equal 72px tiles (they differ in shape / size)

   - cards: rounded gradient cards with a lavender border, top accent line that draws in on hover, lift + purple shadow on hover;

     the button fills purple on hover and its arrow slides

   ========================================================================= */

.page-id-4980 .elementor-element-d1a087d > .e-con-inner {

    padding-top: clamp(28px, 4vh, 44px) !important;

    padding-bottom: clamp(28px, 4vh, 44px) !important;

    gap: 22px !important;

}

.page-id-4980 .elementor-element-f0e0064 {

    gap: 12px !important;

}

.page-id-4980 .elementor-element-a67890a .elementor-heading-title {

    font-weight: 500 !important;

    color: #4a4763 !important;

}



/* grid */

.page-id-4980 .elementor-element-b607d5b {

    padding: 0 !important;

    gap: 22px !important;

}



/* cards */

.page-id-4980 .elementor-element-b607d5b > .e-con {

    position: relative;

    overflow: hidden;

    justify-content: flex-start;

    gap: 16px !important;

    padding: 22px !important;

    border: 1px solid rgba(97, 82, 173, 0.14) !important;

    border-radius: 22px !important;

    background: linear-gradient(160deg, #ffffff 0%, #FBF9FF 100%) !important;

    box-shadow: 0 16px 30px -24px rgba(45, 36, 99, 0.5);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-4980 .elementor-element-b607d5b > .e-con:hover {

    transform: translateY(-6px);

    border-color: rgba(97, 82, 173, 0.42) !important;

    box-shadow: 0 28px 44px -24px rgba(97, 82, 173, 0.6);

}

/* top accent line (explicit sizes: .e-con::before defaults to a full-size overlay) */

.page-id-4980 .elementor-element-b607d5b > .e-con::before {

    content: '';

    position: absolute;

    z-index: 2;

    left: 0;

    right: auto;

    top: 0;

    bottom: auto;

    width: 100%;

    height: 3px;

    border: 0;

    border-radius: 0;

    background: linear-gradient(90deg, #6152AD 0%, #B9A8FF 100%);

    opacity: 1;

    transform: scaleX(0);

    transform-origin: left center;

    transition: transform 0.45s ease;

    pointer-events: none;

}

.page-id-4980 .elementor-element-b607d5b > .e-con:hover::before {

    transform: scaleX(1);

}



/* the image-box takes the free height, the button is pinned to the bottom -> buttons line up across the row */

.page-id-4980 .elementor-element-b607d5b > .e-con > .elementor-widget {

    margin: 0 !important;

}

.page-id-4980 .elementor-element-b607d5b > .e-con > .elementor-widget-image-box {

    flex: 1 1 auto;

}

.page-id-4980 .elementor-element-b607d5b > .e-con > .elementor-widget-button {

    margin-top: auto !important;

}



/* logos in equal tiles */

.page-id-4980 .elementor-element-b607d5b .elementor-image-box-img {

    width: 72px !important;

    height: 72px;

    flex: none;

    display: flex;

    align-items: center;

    justify-content: center;

    margin-right: 16px !important;

    padding: 10px;

    border-radius: 18px;

    background: #F4F0FF;

}

.page-id-4980 .elementor-element-b607d5b .elementor-image-box-img img {

    /* a fixed box (tile 72px - 2 x 10px padding), NOT width/height:auto: these images are lazy-loaded and an auto-sized

       image is 0x0 before it loads, so the browser would never start loading it */

    width: 52px !important;

    height: 52px !important;

    max-width: none;

    object-fit: contain;

}

.page-id-4980 .elementor-element-b607d5b .elementor-image-box-title {

    color: #1d1b2e;

    font-weight: 700;

}

.page-id-4980 .elementor-element-b607d5b .elementor-image-box-description {

    color: #4a4763;

}



/* button: fills purple on hover, arrow slides */

.page-id-4980 .elementor-element-b607d5b .elementor-button {

    transition: background-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;

}

.page-id-4980 .elementor-element-b607d5b > .e-con:hover .elementor-button,

.page-id-4980 .elementor-element-b607d5b .elementor-button:hover {

    background-color: #6152AD !important;

    color: #ffffff !important;

    box-shadow: 0 14px 24px -12px rgba(97, 82, 173, 0.7);

}

.page-id-4980 .elementor-element-b607d5b > .e-con:hover .elementor-button .elementor-button-text,

.page-id-4980 .elementor-element-b607d5b .elementor-button:hover .elementor-button-text {

    color: #ffffff !important;

}

.page-id-4980 .elementor-element-b607d5b .elementor-button-icon svg {

    transition: transform 0.3s ease;

}

.page-id-4980 .elementor-element-b607d5b > .e-con:hover .elementor-button-icon svg {

    transform: translateX(5px);

}

.page-id-4980 .elementor-element-b607d5b > .e-con:hover .elementor-button-icon svg path {

    fill: #ffffff !important;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-4980 .elementor-element-b607d5b > .e-con,

    .page-id-4980 .elementor-element-b607d5b > .e-con::before,

    .page-id-4980 .elementor-element-b607d5b .elementor-button,

    .page-id-4980 .elementor-element-b607d5b .elementor-button-icon svg {

        transition: none;

    }

}





/* =========================================================================

   NO DUMB QUESTIONS JOURNAL CLUB PAGE - "GOT A PAPER TO DISCUSS" FORM  (page-id-4980, section #14143e5, row #b18983e: form column

   #f388440 with the Contact Form 7 widget #bb0dd91 (form 5043, the same .collaborate-contact-form markup as the About Me page) +

   photo column #a700f1a). The About Me page's optimised form (page-id-3490, widget #e009f65: "form card: compact, soft frame") is

   the reference, so these are the same values: compact card with a soft frame and shadow, smaller row gaps, purple semi-bold

   labels, 46px fields with an 11px radius, an 84px message box, a purple focus ring, the select arrow re-centred, a 50px button

   with the site's 11px shape and a hover lift, and a smaller note line. Text, fields and photo are untouched.

   ========================================================================= */

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form {

    padding: 24px 26px;

    border-radius: 18px;

    border: 1px solid rgba(97, 82, 173, 0.14);

    box-shadow: 0 16px 34px -24px rgba(60, 40, 140, 0.5);

}

.page-id-4980 .elementor-element-bb0dd91 .collaborate-cf7-row,

.page-id-4980 .elementor-element-bb0dd91 .collaborate-cf7-full {

    margin-bottom: 12px;

}

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form label {

    font-size: clamp(1.4rem, 0.9rem + 0.3vw, 1.6rem);

    margin-bottom: 6px;

    font-weight: 600;

    color: #2b2470;

}

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form input[type="text"],

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form input[type="email"],

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form select {

    height: 46px;

    padding: 10px 14px;

    border-radius: 11px;

    font-size: 1.5rem;

}

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form textarea {

    height: 84px;

    padding: 10px 14px;

    border-radius: 11px;

    font-size: 1.5rem;

}

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form input:focus,

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form textarea:focus,

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form select:focus {

    border-color: #6152AD;

    box-shadow: 0 0 0 3px rgba(97, 82, 173, 0.14);

}

.page-id-4980 .elementor-element-bb0dd91 .collaborate-cf7-select-wrap::after {

    top: 62%;

}

/* button: site button shape (11px), hover lift */

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form input[type="submit"],

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form button[type="submit"] {

    height: 50px;

    min-width: 0;

    padding: 0 30px;

    border-radius: 11px;

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;

}

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form input[type="submit"]:hover,

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form button[type="submit"]:hover {

    transform: translateY(-3px);

    box-shadow: 0 14px 22px -12px rgba(97, 82, 173, 0.85);

}

.page-id-4980 .elementor-element-bb0dd91 .collaborate-cf7-note,

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form .wpcf7-form > p:last-of-type {

    margin-top: 10px;

    font-size: 1.3rem;

}

/* tablet / phone (same as About Me) */





/* NO DUMB QUESTIONS JOURNAL CLUB PAGE - HERO: one-line heading, no CTA.

   - the heading widget (#a994093) was capped at 66.781% of the column (374px) so "No Dumb Questions" (481px on one line at

     1440px wide) wrapped onto two lines; the widget now takes the full column width and the h1 does not wrap (768px and up;

     on phones the heading may wrap as before)

   - the "Start Here" button (#334f86b) is hidden; the scroll cue (customjs/custom.js) now starts under the intro paragraph */

.page-id-4980 .elementor-element-334f86b {

    display: none !important;

}





/* =========================================================================

   INSTAGRAM REELS - ON-PAGE ACTIONS  (page-id-4980; behaviour is in customjs/custom.js). The cards no longer send the visitor to

   Instagram: a click opens the post in a popup (Instagram's embed page in an iframe), like / save toggle in place (remembered in

   the browser only), share copies the link or opens the share sheet, and a small toast confirms. This is the popup, the toast and

   the on / focus states of the icons.

   ========================================================================= */

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) .ck-reel-card {

    cursor: pointer;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-act {

    cursor: pointer;

    border-radius: 6px;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-act:focus-visible {

    outline: 2px solid #0095f6;

    outline-offset: 3px;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-act.is-on {

    color: #262626;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-act[data-act="like"].is-on {

    color: #ed4956;

}

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-act.pop svg {

    animation: igPop 0.45s ease;

}

@keyframes igPop {

    0%   { transform: scale(1); }

    35%  { transform: scale(1.35); }

    70%  { transform: scale(0.95); }

    100% { transform: scale(1); }

}

/* a liked heart stays red even when the card is not hovered / hovered */

:is(.page-id-4980, .page-id-3510, .page-id-3518) .ck-reel-card:hover .ig-act[data-act="like"].is-on {

    color: #ed4956;

}



/* toast */

.ig-toast {

    position: fixed;

    left: 50%;

    bottom: 32px;

    z-index: 100001;

    padding: 10px 20px;

    border-radius: 999px;

    background: #262626;

    color: #ffffff;

    font-size: 1.4rem;

    font-weight: 600;

    line-height: 1.3;

    box-shadow: 0 14px 30px -12px rgba(0, 0, 0, 0.6);

    opacity: 0;

    transform: translate(-50%, 12px);

    transition: opacity 0.3s ease, transform 0.3s ease;

    pointer-events: none;

}

.ig-toast.is-on {

    opacity: 1;

    transform: translate(-50%, 0);

}



/* popup */

html.ig-modal-open {

    overflow: hidden;

}

.ig-modal {

    position: fixed;

    inset: 0;

    z-index: 100000;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 16px;

    opacity: 0;

    transition: opacity 0.3s ease;

}

.ig-modal[hidden] {

    display: none;

}

.ig-modal.is-open {

    opacity: 1;

}

.ig-modal-backdrop {

    position: absolute;

    inset: 0;

    background: rgba(6, 10, 17, 0.72);

    -webkit-backdrop-filter: blur(4px);

    backdrop-filter: blur(4px);

}

.ig-modal-box {

    position: relative;

    display: flex;

    flex-direction: column;

    width: min(100%, 440px);

    height: min(100%, 780px);

    border-radius: 18px;

    overflow: hidden;

    background: #ffffff;

    box-shadow: 0 40px 80px -30px rgba(0, 0, 0, 0.8);

    transform: translateY(14px) scale(0.98);

    transition: transform 0.3s ease;

}

.ig-modal.is-open .ig-modal-box {

    transform: none;

}

.ig-modal-bar {

    flex: none;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 10px 12px 10px 16px;

    border-bottom: 1px solid #efefef;

}

.ig-modal-title {

    flex: 1;

    font-size: 1.5rem;

    font-weight: 700;

    color: #262626;

}

.ig-modal-ext {

    font-size: 1.3rem;

    font-weight: 600;

    color: #0095f6;

    text-decoration: none;

}

.ig-modal-ext:hover {

    color: #1877f2;

}

.ig-modal-close {

    flex: none;

    width: 36px;

    height: 36px;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 0;

    border: 0;

    border-radius: 50%;

    background: #f2f2f2;

    color: #262626;

    font-size: 2.4rem;

    line-height: 1;

    cursor: pointer;

    transition: background 0.2s ease;

}

.ig-modal-close:hover {

    background: #e4e4e4;

}

.ig-modal-close:focus-visible,

.ig-modal-ext:focus-visible {

    outline: 2px solid #0095f6;

    outline-offset: 2px;

}

.ig-modal-frame {

    flex: 1;

    min-height: 0;

    overflow: auto;

    background: #ffffff;

}

.ig-modal-frame iframe {

    display: block;

    width: 100%;

    height: 100%;

    min-height: 620px;

    border: 0;

}



@media (prefers-reduced-motion: reduce) {

    .ig-modal,

    .ig-modal-box,

    .ig-toast {

        transition: none;

    }

    :is(.page-id-4980, .page-id-3510, .page-id-3518) .ig-act.pop svg {

        animation: none;

    }

}





/* GOT A PAPER TO DISCUSS: the photo file has empty space on its left, which read as a big gap after the form - pull the photo closer (desktop only; shifted inside its own column so it never overlaps the form) */





/* GOT A PAPER TO DISCUSS: the photo file has empty space on its right too, so the form + photo group sat left of the page centre -

   balance it by moving the row right (visible group = form card to the edge of the person) */





/* =========================================================================

   INSTAGRAM REELS - FRAME  (page-id-4980). The block used to sit open on the page background, so it looked like the site's own

   theme. It is now enclosed like an Instagram surface: white panel, Instagram's 1px #dbdbdb hairline border, soft radius and a thin

   Instagram-gradient strip on top. Spacing inside is kept tight so the block still fits its fold.

   ========================================================================= */

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section) {

    position: relative;

    box-sizing: border-box;

    padding: 16px 16px 0;

    background: #ffffff;

    border: 1px solid #dbdbdb;

    border-radius: 14px;

    box-shadow: 0 18px 40px -26px rgba(38, 38, 38, 0.35);

    overflow: hidden;

}

:is(.page-id-4980 .ck-no-dumb-questions-reels-section, .page-id-3510 .ck-women-health-reels-section, .page-id-3518 .ck-diversity-reels-section)::before {

    content: "";

    position: absolute;

    top: 0;

    left: 0;

    right: 0;

    width: auto;

    height: 4px;

    inset: 0 0 auto 0;

    opacity: 1;

    background: linear-gradient(90deg, #feda75 0%, #fa7e1e 25%, #d62976 50%, #962fbf 75%, #4f5bd5 100%);

    pointer-events: none;

}





/* =========================================================================

   GOT A PAPER TO DISCUSS - MOTION  (page-id-4980, section #14143e5). Two soft purple glows drift slowly behind the form and the

   photo, light science icons (added by custom.js: .gp-float) float around the edges, the photo bobs gently and the form card

   breathes with a faint purple glow. Everything is decorative, sits behind the content and is switched off for reduced motion.

   ========================================================================= */

.page-id-4980 .elementor-element-14143e5 {

    position: relative;

    overflow: hidden;

}

.page-id-4980 .elementor-element-14143e5 > .e-con-inner,

.page-id-4980 .elementor-element-14143e5 > .elementor-element {

    position: relative;

    z-index: 1;

}

.page-id-4980 .elementor-element-14143e5::before,

.page-id-4980 .elementor-element-14143e5::after {

    content: "";

    position: absolute;

    width: 420px;

    height: 420px;

    inset: auto;

    opacity: 0.55;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(154, 132, 224, 0.35) 0%, rgba(154, 132, 224, 0) 68%);

    pointer-events: none;

    z-index: 0;

}

.page-id-4980 .elementor-element-14143e5::before {

    left: -120px;

    top: 8%;

    animation: gpDriftA 16s ease-in-out infinite alternate;

}

.page-id-4980 .elementor-element-14143e5::after {

    right: -100px;

    bottom: 4%;

    background: radial-gradient(circle, rgba(196, 170, 245, 0.38) 0%, rgba(196, 170, 245, 0) 68%);

    animation: gpDriftB 19s ease-in-out infinite alternate;

}

@keyframes gpDriftA {

    0%   { transform: translate(0, 0) scale(1); }

    100% { transform: translate(140px, 60px) scale(1.18); }

}

@keyframes gpDriftB {

    0%   { transform: translate(0, 0) scale(1.1); }

    100% { transform: translate(-150px, -70px) scale(0.92); }

}



/* floating icons */

.page-id-4980 .gp-float {

    position: absolute;

    z-index: 0;

    display: block;

    color: rgba(95, 76, 178, 0.28);

    pointer-events: none;

    animation: gpFloat 7s ease-in-out infinite;

}

.page-id-4980 .gp-float svg {

    display: block;

    width: 100%;

    height: 100%;

}

.page-id-4980 .gp-float.gp-spin svg {

    animation: gpSpin 22s linear infinite;

}

@keyframes gpFloat {

    0%, 100% { transform: translateY(0) rotate(var(--gp-r, 0deg)); }

    50%      { transform: translateY(-16px) rotate(calc(var(--gp-r, 0deg) + 8deg)); }

}

@keyframes gpSpin {

    to { transform: rotate(360deg); }

}



/* the photo bobs, the form card breathes */



@keyframes gpBob {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-8px); }

}

.page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form {

    animation: gpGlow 5.5s ease-in-out infinite;

}

@keyframes gpGlow {

    0%, 100% { box-shadow: 0 18px 40px -28px rgba(95, 76, 178, 0.28), 0 0 0 0 rgba(95, 76, 178, 0); }

    50%      { box-shadow: 0 22px 46px -26px rgba(95, 76, 178, 0.5), 0 0 0 5px rgba(95, 76, 178, 0.07); }

}



@media (prefers-reduced-motion: reduce) {

    .page-id-4980 .elementor-element-14143e5::before,

    .page-id-4980 .elementor-element-14143e5::after,

    .page-id-4980 .gp-float,

    .page-id-4980 .gp-float svg,

    .page-id-4980 .elementor-element-14143e5 .elementor-element-a700f1a,

    .page-id-4980 .elementor-element-bb0dd91 .collaborate-contact-form {

        animation: none;

    }

}





/* =========================================================================

   POST BANNER  (singular.php -> .Blogbanner; every single post). Redesign of the purple title banner: the flat purple becomes a

   layered brand-purple gradient with soft light glows, a fine dot texture and thin rings, a curved bottom edge; the breadcrumb and

   the date / author / read-time become glass pills; a bigger title; the picture gets a rounded, deeper frame with an offset

   gradient plate behind it. Decorative icons and the read-time pill are added by custom.js. The banner's own text is unchanged.

   (!important is needed because singular.php / footer.php print their own .Blogbanner rules inline.)

   ========================================================================= */

body .Blogbanner {

    position: relative;

    overflow: hidden;

    padding: 112px 0 64px !important;

    border-radius: 0 0 44px 44px;

    background:

        radial-gradient(55% 90% at 90% 15%, rgba(255, 255, 255, 0.20) 0%, rgba(255, 255, 255, 0) 62%),

        radial-gradient(45% 80% at 0% 100%, rgba(255, 193, 7, 0.18) 0%, rgba(255, 193, 7, 0) 62%),

        linear-gradient(135deg, #43368f 0%, #6152ad 52%, #8570d6 100%) !important;

}

.Blogbanner::before {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 0.5;

    background-image: radial-gradient(rgba(255, 255, 255, 0.35) 1.2px, transparent 1.4px);

    background-size: 26px 26px;

    -webkit-mask-image: linear-gradient(115deg, #000 0%, rgba(0, 0, 0, 0.25) 45%, transparent 75%);

    mask-image: linear-gradient(115deg, #000 0%, rgba(0, 0, 0, 0.25) 45%, transparent 75%);

    pointer-events: none;

}

.Blogbanner::after {

    content: "";

    position: absolute;

    inset: auto -140px -220px auto;

    width: 520px;

    height: 520px;

    border-radius: 50%;

    opacity: 1;

    border: 1px solid rgba(255, 255, 255, 0.18);

    box-shadow: 0 0 0 46px rgba(255, 255, 255, 0.04), 0 0 0 96px rgba(255, 255, 255, 0.03);

    pointer-events: none;

    animation: bbRing 14s ease-in-out infinite alternate;

}

@keyframes bbRing {

    from { transform: scale(1); }

    to   { transform: scale(1.08) translate(-14px, -10px); }

}

.Blogbanner > .container {

    position: relative;

    z-index: 1;

}



/* breadcrumb */

.Blogbanner .post-breadcrumbs {

    display: inline-flex;

    flex-wrap: wrap;

    align-items: center;

    max-width: 100%;

    margin-bottom: 18px !important;

    padding: 7px 16px;

    font-size: 13px;

    border-radius: 999px;

    background: rgba(255, 255, 255, 0.13);

    border: 1px solid rgba(255, 255, 255, 0.24);

    -webkit-backdrop-filter: blur(6px);

    backdrop-filter: blur(6px);

}

.Blogbanner .post-breadcrumbs a:hover {

    color: #ffd76a;

    border-bottom-color: #ffd76a;

}



/* title */

.Blogbanner .sliderHeading {

    margin-bottom: 22px !important;

    font-size: clamp(27px, 2.9vw, 42px) !important;

    line-height: 1.18 !important;

    font-weight: 700;

    letter-spacing: -0.01em;

    color: #ffffff !important;

    text-shadow: 0 8px 28px rgba(28, 18, 84, 0.35);

}

.Blogbanner .sliderHeading::after {

    content: "";

    display: block;

    width: 64px;

    height: 4px;

    margin-top: 18px;

    border-radius: 4px;

    background: linear-gradient(90deg, #ffd76a, #ffb400);

}



/* date / author / read time pills */

.Blogbanner .post-meta {

    gap: 10px !important;

}

.Blogbanner .post-meta .publishTxt {

    display: inline-flex;

    align-items: center;

    gap: 7px;

    margin: 0;

    padding: 7px 15px;

    border-radius: 999px;

    background: rgba(255, 255, 255, 0.12);

    border: 1px solid rgba(255, 255, 255, 0.2);

    line-height: 1.2;

}

.Blogbanner .post-meta .publishTxt .bi {

    color: #ffd76a;

    font-size: 15px;

    margin-right: 0;

}

.Blogbanner .post-meta .publishTxt > span {

    display: inline-flex;

    align-items: center;

    gap: 5px;

}

.Blogbanner .post-meta .dateTxt,

.Blogbanner .post-meta .authorTxt {

    font-size: 14px;

}



/* picture: deeper frame + offset gradient plate + dot cluster */

.Blogbanner .post-thumbnail {

    position: relative;

    z-index: 0;

    transition: transform 0.4s ease;

}

.Blogbanner .post-thumbnail::before {

    content: "";

    position: absolute;

    inset: 16px -16px -16px 16px;

    width: auto;

    height: auto;

    opacity: 0.85;

    border-radius: 26px;

    background: linear-gradient(135deg, rgba(255, 215, 106, 0.85), rgba(168, 148, 240, 0.65));

    z-index: -1;

    transition: transform 0.4s ease;

}

.Blogbanner .post-thumbnail::after {

    content: "";

    position: absolute;

    inset: -22px auto auto -22px;

    width: 92px;

    height: 92px;

    opacity: 0.55;

    background-image: radial-gradient(rgba(255, 255, 255, 0.95) 2px, transparent 2.4px);

    background-size: 14px 14px;

    z-index: -1;

}

.Blogbanner .post-thumbnail:hover {

    transform: translateY(-4px);

}

.Blogbanner .post-thumbnail:hover::before {

    transform: translate(4px, 4px);

}

.Blogbanner .post-thumbnail img {

    display: block;

    width: 100%;

    height: auto;

    aspect-ratio: 16 / 11;

    object-fit: cover;

    border: 0 !important;

    border-radius: 22px !important;

    box-shadow: 0 30px 50px -22px rgba(22, 12, 74, 0.7), 0 0 0 4px rgba(255, 255, 255, 0.92) !important;

}



/* decorative floating icons (custom.js) */

.Blogbanner .bb-float {

    position: absolute;

    z-index: 0;

    display: block;

    color: rgba(255, 255, 255, 0.22);

    pointer-events: none;

    animation: bbFloat 8s ease-in-out infinite;

}

.Blogbanner .bb-float svg {

    display: block;

    width: 100%;

    height: 100%;

}

@keyframes bbFloat {

    0%, 100% { transform: translateY(0) rotate(var(--bb-r, 0deg)); }

    50%      { transform: translateY(-14px) rotate(calc(var(--bb-r, 0deg) + 8deg)); }

}



/* entrance */

@keyframes bbUp {

    from { opacity: 0; transform: translateY(16px); }

    to   { opacity: 1; transform: none; }

}

.Blogbanner .post-breadcrumbs,

.Blogbanner .sliderHeading,

.Blogbanner .post-meta {

    animation: bbUp 0.7s ease both;

}

.Blogbanner .sliderHeading { animation-delay: 0.08s; }

.Blogbanner .post-meta     { animation-delay: 0.16s; }





@media (prefers-reduced-motion: reduce) {

    .Blogbanner::after,

    .Blogbanner .bb-float,

    .Blogbanner .post-breadcrumbs,

    .Blogbanner .sliderHeading,

    .Blogbanner .post-meta {

        animation: none;

    }

}





/* =========================================================================

   POST BODY + SIDEBAR  (singular.php: .post-content-card, .sidebar-instagram, .related-sidebar; every single post).

   The white block on a white page becomes a reading surface: a soft lavender page tint with a faint texture, a white article card

   with a brand-gradient top edge, the first paragraph as a larger lead, headings with a gradient marker, purple links with an

   animated underline, styled lists / quotes / images, and a reading-progress bar (custom.js). The sidebar cards get the same

   language: "Follow Me" is an Instagram-flavoured card (gradient top edge, gradient button when the feed plugin is not active),

   "Related Posts" become numbered, hoverable cards. Body font sizes are not changed. (body-prefixed selectors + !important

   because singular.php prints its own rules inline.)

   ========================================================================= */

section:has(> .container .post-content-card) {

    position: relative;

    padding: 56px 0 72px;

    background: #f1ecfb;

}



/* article card */

body .post-content-card {

    position: relative;

    padding: 52px 56px 48px;

    border-radius: 26px;

    border: 1px solid #ece8f8;

    box-shadow: 0 30px 60px -36px rgba(67, 54, 143, 0.28), 0 4px 14px rgba(34, 57, 115, 0.05);

    overflow: hidden;

    animation: pcUp 0.7s ease both;

}

body .post-content-card::before {

    content: "";

    position: absolute;

    inset: 0 0 auto 0;

    width: auto;

    height: 5px;

    opacity: 1;

    background: linear-gradient(90deg, #223973 0%, #6152ad 50%, #b79cff 100%);

    pointer-events: none;

}

@keyframes pcUp {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: none; }

}



/* lead paragraph */

body .post-content > p:first-of-type {

    font-size: 1.15em !important;

    line-height: 1.65 !important;

    font-weight: 500;

    color: #2a2a3d;

}

body .post-content > p:first-of-type::first-line {

    color: #223973;

}



/* headings: gradient marker */

body .post-content h2,

body .post-content h3 {

    position: relative;

    padding-left: 18px;

    color: #223973;

}

body .post-content h2::before,

body .post-content h3::before {

    content: "";

    position: absolute;

    left: 0;

    top: 0.14em;

    bottom: 0.14em;

    width: 5px;

    border-radius: 5px;

    background: linear-gradient(180deg, #6152ad, #b79cff);

}

body .post-content h2 {

    margin-top: 34px !important;

}



/* links */

body .post-content p a,

body .post-content li a {

    color: #6152ad;

    font-weight: 600;

    text-decoration: none;

    background-image: linear-gradient(currentColor, currentColor);

    background-repeat: no-repeat;

    background-position: 0 100%;

    background-size: 100% 2px;

    padding-bottom: 1px;

    transition: background-size 0.3s ease, color 0.3s ease;

}

body .post-content p a:hover,

body .post-content li a:hover {

    color: #43368f;

    background-size: 100% 100%;

    background-image: linear-gradient(rgba(97, 82, 173, 0.12), rgba(97, 82, 173, 0.12));

}



/* lists */

body .post-content ul {

    list-style: none;

    padding-left: 4px;

}

body .post-content ul > li {

    position: relative;

    padding-left: 26px;

    margin-bottom: 8px;

}

body .post-content ul > li::before {

    content: "";

    position: absolute;

    left: 4px;

    top: 0.62em;

    width: 9px;

    height: 9px;

    border-radius: 50%;

    background: linear-gradient(135deg, #6152ad, #b79cff);

    box-shadow: 0 0 0 4px rgba(97, 82, 173, 0.12);

}

body .post-content ol > li::marker {

    color: #6152ad;

    font-weight: 700;

}



/* quotes, images, tables */

body .post-content blockquote {

    position: relative;

    margin: 26px 0;

    padding: 22px 26px 22px 30px;

    border: 0;

    border-left: 5px solid #6152ad;

    border-radius: 0 18px 18px 0;

    background: linear-gradient(90deg, #f3effd 0%, #faf8ff 100%);

    color: #2a2a3d;

}

body .post-content blockquote p:last-child {

    margin-bottom: 0;

}

body .post-content img {

    max-width: 100%;

    height: auto;

    border-radius: 18px;

}

body .post-content figure {

    margin: 26px 0;

}

body .post-content figcaption {

    margin-top: 8px;

    font-size: 0.85em;

    text-align: center;

    color: #7a7a8c;

}



/* sidebar: shared card language */

body .sidebar-instagram,

body .related-sidebar {

    position: relative;

    border-radius: 26px;

    border: 1px solid #ece8f8;

    box-shadow: 0 26px 50px -36px rgba(67, 54, 143, 0.3), 0 4px 14px rgba(34, 57, 115, 0.05);

    overflow: hidden;

}

body .sidebar-instagram {

    padding: 26px 22px 22px;

    animation: pcUp 0.7s ease 0.1s both;

}

body .related-sidebar {

    padding: 26px 20px 16px;

    animation: pcUp 0.7s ease 0.2s both;

}

body .sidebar-instagram::before,

body .related-sidebar::before {

    content: "";

    position: absolute;

    inset: 0 0 auto 0;

    width: auto;

    height: 5px;

    opacity: 1;

    pointer-events: none;

}

body .sidebar-instagram::before {

    background: linear-gradient(90deg, #feda75 0%, #fa7e1e 25%, #d62976 50%, #962fbf 75%, #4f5bd5 100%);

}

body .related-sidebar::before {

    background: linear-gradient(90deg, #223973 0%, #6152ad 60%, #b79cff 100%);

}

body .related-sidebar h3,

body .sidebar-instagram > h3 {

    margin-bottom: 20px;

    padding-bottom: 12px;

}



/* Follow Me: the plain link (feed plugin not active) becomes a gradient button */

body .sidebar-instagram > a {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    padding: 12px 16px;

    font-size: 14px;

    text-align: center;

    border-radius: 999px;

    color: #ffffff !important;

    font-weight: 700;

    text-decoration: none !important;

    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);

    box-shadow: 0 14px 26px -14px rgba(220, 39, 67, 0.8);

    transition: transform 0.25s ease, box-shadow 0.25s ease;

}

body .sidebar-instagram > a:hover {

    transform: translateY(-2px);

    box-shadow: 0 18px 30px -14px rgba(220, 39, 67, 0.9);

}



/* Related Posts: numbered, hoverable cards */

body .related-sidebar {

    counter-reset: rp;

}

body .related-post-item {

    align-items: center;

    gap: 14px;

    margin-bottom: 8px;

    padding: 10px;

    border: 1px solid transparent;

    border-bottom: 1px solid transparent !important;

    border-radius: 18px;

    transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;

}

body .related-post-item:last-child {

    margin-bottom: 0;

    padding-bottom: 10px !important;

}

body .related-post-item:hover {

    transform: translateY(-2px);

    background: #f6f3fd;

    border-color: #e6def9;

    box-shadow: 0 14px 26px -20px rgba(67, 54, 143, 0.5);

}

body .related-thumb {

    position: relative;

    width: 92px;

    min-width: 92px !important;

    height: 92px;

    border-radius: 14px !important;

}

body .related-thumb img {

    height: 92px;

    border-radius: 14px;

}

body .related-thumb::after {

    counter-increment: rp;

    content: counter(rp, decimal-leading-zero);

    position: absolute;

    left: 6px;

    top: 6px;

    width: auto;

    height: auto;

    inset: 6px auto auto 6px;

    opacity: 1;

    padding: 2px 8px;

    border-radius: 999px;

    background: rgba(34, 24, 92, 0.78);

    color: #ffffff;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 0.04em;

    line-height: 1.5;

    -webkit-backdrop-filter: blur(4px);

    backdrop-filter: blur(4px);

}

body .related-content h5 {

    font-size: 15px;

    line-height: 1.4;

}

body .related-content h5 a {

    display: -webkit-box;

    -webkit-line-clamp: 3;

    -webkit-box-orient: vertical;

    overflow: hidden;

    color: #1c1c2e;

}



/* reading progress bar (custom.js) */

.rd-progress {

    position: fixed;

    left: 0;

    top: 0;

    z-index: 99999;

    width: 100%;

    height: 4px;

    background: transparent;

    pointer-events: none;

}

.rd-progress > span {

    display: block;

    width: 100%;

    height: 100%;

    transform-origin: 0 50%;

    transform: scaleX(var(--rd-p, 0));

    background: linear-gradient(90deg, #ffd76a, #b79cff 45%, #6152ad);

    border-radius: 0 4px 4px 0;

}





@media (prefers-reduced-motion: reduce) {

    body .post-content-card,

    body .sidebar-instagram,

    body .related-sidebar {

        animation: none;

    }

}





/* =========================================================================

   POST BODY - SELF-ADJUSTING TYPOGRAPHY  (singular.php -> .post-content, every single post).

   Whatever an editor types, pastes or restyles in the WordPress editor should end up in the same clean type system, without any

   per-post fixing:

   - ONE fluid base size (--pc-fs, ~15px on phones up to ~17.5px on desktop; it replaces the old stack of per-breakpoint tables in

     singular.php) and everything else is in em, so headings / lead / lists / quotes / tables all scale together;

   - heading levels h1-h6 have fixed ratios to the body text and ignore inline sizes; text is shown as typed (no forced capitals);

   - pasted content (Word / Google Docs / web pages) usually carries inline font-size, font-family, line-height and letter-spacing

     on <span>/<p>: those are neutralised so the site's font and size win; <font size/face>, WordPress size classes are mapped to

     relative sizes; sub / sup / small / code keep their own sizing;

   - long words and URLs wrap, code blocks / tables scroll inside the card instead of breaking the layout, images / embeds never

     overflow, empty paragraphs (custom.js marks the ones that only hold &nbsp;) collapse.

   Colours and the design from the two blocks above are untouched.

   ========================================================================= */

body .post-content {

    --pc-fs: clamp(15px, 14px + 0.22vw, 17.5px);

    font-size: var(--pc-fs);

    line-height: 1.6;

    font-family: "Teachers", "Urbanist", sans-serif;

    overflow-wrap: break-word;

    word-wrap: break-word;

    hyphens: auto;

    -webkit-hyphens: auto;

}

body .post-content > :first-child {

    margin-top: 0 !important;

}

body .post-content > :last-child {

    margin-bottom: 0 !important;

}



/* body text: same size and rhythm everywhere */

body .post-content p,

body .post-content li,

body .post-content li a,

body .post-content li p,

body .post-content dd,

body .post-content dt,

body .post-content td,

body .post-content th,

body .post-content figcaption,

body .post-content blockquote,

body .post-content blockquote p {

    font-size: 1em !important;

    line-height: 1.6 !important;

    font-family: inherit;

}

body .post-content p {

    margin: 0 0 0.85em;

}

body .post-content li p {

    margin: 0;

}

body .post-content ul,

body .post-content ol {

    margin: 0 0 1em;

    padding-left: 1.4em;

}

body .post-content ul ul,

body .post-content ol ol,

body .post-content ul ol,

body .post-content ol ul {

    margin: 0.5em 0 0;

}

body .post-content b,

body .post-content strong {

    font-weight: 700;

}

body .post-content figcaption {

    font-size: 0.85em !important;

}



/* headings: fixed ratios, always as typed */

body .post-content h1,

body .post-content h2,

body .post-content h3,

body .post-content h4,

body .post-content h5,

body .post-content h6 {

    font-family: inherit;

    font-weight: 700;

    line-height: 1.25 !important;

    letter-spacing: normal;

    text-transform: none !important;

    margin: 1.5em 0 0.5em;

    overflow-wrap: break-word;

    hyphens: manual;

}

body .post-content h1 { font-size: 1.9em !important; }

body .post-content h2 { font-size: 1.5em !important; }

body .post-content h3 { font-size: 1.3em !important; }

body .post-content h4 { font-size: 1.15em !important; }

body .post-content h5 { font-size: 1.05em !important; }

body .post-content h6 { font-size: 1em !important; letter-spacing: 0.02em; }

body .post-content h2,

body .post-content h3 {

    margin-top: 1.6em !important;

}



/* pasted / restyled text: the site's font, size and spacing win over inline styles */

body .post-content [style*="font-size"]:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):not(small):not(sub):not(sup):not(code):not(pre):not(kbd),

body .post-content [style*="font-family"]:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):not(code):not(pre):not(kbd):not(samp),

body .post-content [style*="line-height"]:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6),

body .post-content [style*="letter-spacing"]:not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) {

    font-size: inherit !important;

    font-family: inherit !important;

    line-height: inherit !important;

    letter-spacing: normal !important;

}

body .post-content h1[style], body .post-content h2[style], body .post-content h3[style],

body .post-content h4[style], body .post-content h5[style], body .post-content h6[style] {

    font-family: inherit !important;

    line-height: 1.25 !important;

}

body .post-content span[style*="background"]:not(mark),

body .post-content font[style*="background"] {

    background: transparent !important;

}

body .post-content font[size],

body .post-content font[face] {

    font-size: inherit !important;

    font-family: inherit !important;

}

body .post-content small { font-size: 0.85em !important; }

body .post-content sub, body .post-content sup { font-size: 0.75em !important; line-height: 0; }

body .post-content .has-small-font-size   { font-size: 0.85em !important; }

body .post-content .has-normal-font-size,

body .post-content .has-regular-font-size,

body .post-content .has-medium-font-size  { font-size: 1.1em !important; }

body .post-content .has-large-font-size   { font-size: 1.4em !important; }

body .post-content .has-x-large-font-size { font-size: 1.8em !important; }

body .post-content .has-huge-font-size,

body .post-content .has-xx-large-font-size { font-size: 2.2em !important; }



/* code */

body .post-content code,

body .post-content kbd,

body .post-content samp,

body .post-content pre {

    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

    font-size: 0.88em;

}

body .post-content code {

    padding: 0.12em 0.4em;

    border-radius: 6px;

    background: #f3effd;

    color: #43368f;

}

body .post-content pre {

    max-width: 100%;

    margin: 1.2em 0;

    padding: 16px 18px;

    overflow-x: auto;

    white-space: pre-wrap;

    word-break: break-word;

    border-radius: 14px;

    background: #1f1b3a;

    color: #ece8f8;

    line-height: 1.55;

}

body .post-content pre code {

    padding: 0;

    background: none;

    color: inherit;

}



/* nothing may push the card wider */

body .post-content a {

    overflow-wrap: anywhere;

}

body .post-content img,

body .post-content video,

body .post-content canvas,

body .post-content svg {

    max-width: 100%;

    height: auto;

}

body .post-content iframe,

body .post-content embed,

body .post-content object {

    max-width: 100%;

}

body .post-content iframe[src*="youtube"],

body .post-content iframe[src*="youtu.be"],

body .post-content iframe[src*="vimeo"] {

    width: 100%;

    height: auto;

    aspect-ratio: 16 / 9;

    border-radius: 16px;

}

body .post-content .pc-table-wrap {

    max-width: 100%;

    margin: 1.2em 0;

    overflow-x: auto;

    -webkit-overflow-scrolling: touch;

}

body .post-content table {

    max-width: 100%;

    border-collapse: collapse;

}

body .post-content td,

body .post-content th {

    padding: 0.55em 0.8em;

    vertical-align: top;

    overflow-wrap: break-word;

}

body .post-content p:empty,

body .post-content p.pc-empty {

    display: none;

}





/* =========================================================================

   WOMEN'S HEALTH RESEARCH PAGE - SECTION 2 "The Funding Gap"  (page-id-3510, section #9e90084 -> #f9a96aa heading block, #8b5c29b

   photo + stats + text, #c36d96f readings + quote). Redesign: soft lavender wash behind the section, larger centred heading

   text in softer ink, the four statistic cards as clean white cards with a coloured accent edge (matching each icon), a lift on

   hover and a subtle entrance, a glow + gentle float behind the photo, better reading rhythm for the paragraphs with the last one

   as a highlighted note, and the readings panel / quote card polished (rounded, layered, hoverable rows). Text, images and

   font sizes are unchanged. Responsive: 4 cards -> 2 columns -> 1 column, photo above the content on tablet / phone.

   ========================================================================= */

.page-id-3510 .elementor-element-9e90084 {

    position: relative;

    isolation: isolate;

}

.page-id-3510 .elementor-element-9e90084::before {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 1;

    z-index: -1;

    background:

        radial-gradient(38% 30% at 100% 6%, rgba(133, 112, 214, 0.14) 0%, rgba(133, 112, 214, 0) 70%),

        radial-gradient(34% 26% at 0% 62%, rgba(255, 193, 7, 0.09) 0%, rgba(255, 193, 7, 0) 70%),

        linear-gradient(180deg, #ffffff 0%, #f8f5fe 38%, #ffffff 100%);

    pointer-events: none;

}



/* heading text */

.page-id-3510 .elementor-element-bd2d6f6 {

    max-width: 900px;

}

.page-id-3510 .elementor-element-bd2d6f6 .elementor-heading-title {

    color: #2a2a3d;

    font-weight: 500;

    line-height: 1.5;

    text-wrap: balance;

}



/* photo: glow + float */

.page-id-3510 .elementor-element-a912798 {

    position: relative;

    z-index: 0;

}

.page-id-3510 .elementor-element-a912798::before {

    content: "";

    position: absolute;

    left: -10%;

    right: -6%;

    bottom: 0;

    width: auto;

    height: 72%;

    inset: auto -6% 0 -10%;

    opacity: 1;

    z-index: -1;

    border-radius: 50% 50% 0 0 / 60% 60% 0 0;

    background: radial-gradient(70% 90% at 50% 100%, rgba(154, 132, 224, 0.28) 0%, rgba(154, 132, 224, 0) 70%);

    pointer-events: none;

    animation: whGlow 7s ease-in-out infinite alternate;

}

@keyframes whGlow {

    from { transform: scale(0.96); opacity: 0.8; }

    to   { transform: scale(1.06); opacity: 1; }

}

.page-id-3510 .elementor-element-4b46155 img {

    animation: whFloat 8s ease-in-out infinite;

}

@keyframes whFloat {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-8px); }

}



/* statistic cards */

.page-id-3510 .elementor-element-b0f87d6 {

    gap: 18px !important;

}

.page-id-3510 .elementor-element-b0f87d6 > .e-con {

    position: relative;

    overflow: hidden;

    justify-content: center;

    padding: 18px 20px 18px 24px !important;

    border: 1px solid #ece8f8 !important;

    border-radius: 20px !important;

    background: #ffffff !important;

    box-shadow: 0 20px 38px -28px rgba(67, 54, 143, 0.5), 0 2px 8px rgba(34, 57, 115, 0.05) !important;

    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;

    animation: whCardIn 0.7s ease both;

}

.page-id-3510 .elementor-element-b0f87d6 > .e-con:nth-child(2) { animation-delay: 0.08s; }

.page-id-3510 .elementor-element-b0f87d6 > .e-con:nth-child(3) { animation-delay: 0.16s; }

.page-id-3510 .elementor-element-b0f87d6 > .e-con:nth-child(4) { animation-delay: 0.24s; }

@keyframes whCardIn {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: none; }

}

.page-id-3510 .elementor-element-b0f87d6 > .e-con::before {

    content: "";

    position: absolute;

    inset: 0 auto 0 0;

    width: 5px;

    height: auto;

    opacity: 1;

    background: var(--wh-c, #6152ad);

    pointer-events: none;

}

.page-id-3510 .elementor-element-b0f87d6 > .e-con::after {

    content: "";

    position: absolute;

    inset: -40px -40px auto auto;

    width: 110px;

    height: 110px;

    opacity: 0.09;

    border-radius: 50%;

    background: var(--wh-c, #6152ad);

    pointer-events: none;

}

.page-id-3510 .elementor-element-b0f87d6 > .e-con:nth-child(1) { --wh-c: #f26b4a; }

.page-id-3510 .elementor-element-b0f87d6 > .e-con:nth-child(2) { --wh-c: #2f7d62; }

.page-id-3510 .elementor-element-b0f87d6 > .e-con:nth-child(3) { --wh-c: #3b6bd6; }

.page-id-3510 .elementor-element-b0f87d6 > .e-con:nth-child(4) { --wh-c: #e0761b; }

.page-id-3510 .elementor-element-b0f87d6 > .e-con:hover {

    transform: translateY(-5px);

    border-color: #ddd3f7 !important;

    box-shadow: 0 28px 46px -26px rgba(67, 54, 143, 0.6), 0 2px 8px rgba(34, 57, 115, 0.06) !important;

}

.page-id-3510 .elementor-element-b0f87d6 .elementor-image-box-img img {

    transition: transform 0.35s ease;

}

.page-id-3510 .elementor-element-b0f87d6 > .e-con:hover .elementor-image-box-img img {

    transform: scale(1.08);

}

.page-id-3510 .elementor-element-b0f87d6 .elementor-image-box-description {

    color: #2a2a3d;

    font-weight: 500;

}



/* paragraphs: reading rhythm, last one as a highlighted note */

.page-id-3510 .elementor-element-9144215 > p {

    margin: 0 0 0.95em;

    color: #363650;

    line-height: 1.7;

}

.page-id-3510 .elementor-element-9144215 > p:first-of-type {

    margin-top: 6px;

}

.page-id-3510 .elementor-element-9144215 > p:last-of-type {

    margin: 8px 0 0;

    padding: 20px 24px 20px 28px;

    border-left: 5px solid #6152ad;

    border-radius: 0 18px 18px 0;

    background: linear-gradient(90deg, #f1ecfc 0%, #faf8ff 100%);

    color: #2a2a3d;

}



/* readings panel + quote card */

.page-id-3510 .elementor-element-d907ee9 {

    border: 1px solid #e6def9 !important;

    border-radius: 22px !important;

    box-shadow: 0 26px 46px -34px rgba(67, 54, 143, 0.55);

}

.page-id-3510 .elementor-element-63932e7,

.page-id-3510 .elementor-element-aa7be2f,

.page-id-3510 .elementor-element-a8d15bc,

.page-id-3510 .elementor-element-02d91f5 {

    border-radius: 12px;

    transition: background 0.25s ease, transform 0.25s ease;

}

.page-id-3510 .elementor-element-63932e7:hover,

.page-id-3510 .elementor-element-aa7be2f:hover,

.page-id-3510 .elementor-element-a8d15bc:hover,

.page-id-3510 .elementor-element-02d91f5:hover {

    background: rgba(255, 255, 255, 0.75);

    transform: translateX(4px);

}

.page-id-3510 .elementor-element-3bdf561 {

    position: relative;

    overflow: hidden;

    border: 0 !important;

    border-radius: 22px !important;

    background: linear-gradient(135deg, #5a4aa8 0%, #7473bb 55%, #8d7fd6 100%) !important;

    box-shadow: 0 30px 50px -30px rgba(67, 54, 143, 0.75);

}

.page-id-3510 .elementor-element-3bdf561::after {

    content: "";

    position: absolute;

    inset: auto -60px -80px auto;

    width: 240px;

    height: 240px;

    opacity: 1;

    border-radius: 50%;

    border: 1px solid rgba(255, 255, 255, 0.2);

    box-shadow: 0 0 0 30px rgba(255, 255, 255, 0.05), 0 0 0 64px rgba(255, 255, 255, 0.035);

    pointer-events: none;

}



/* tablet */



/* phone */



@media (prefers-reduced-motion: reduce) {

    .page-id-3510 .elementor-element-a912798::before,

    .page-id-3510 .elementor-element-4b46155 img,

    .page-id-3510 .elementor-element-b0f87d6 > .e-con {

        animation: none;

    }

}





/* =========================================================================

   WOMEN'S HEALTH RESEARCH - SECTION 2 IN ONE FOLD  (page-id-3510, desktop >= 1025px). The section was one tall column (heading,

   then photo + cards + four paragraphs, ~1000px before the quote / readings), so nothing fit a screen. New desktop layout: the

   photo sits on the left for the full height, the heading (left-aligned), the four stat cards and the text share the right column,

   the paragraphs run in two columns and the highlighted note spans both. The quote + readings row is its own second fold.

   custom.js scales a block down a little (never below 0.7) if a short window still cannot hold it. Text is unchanged.

   ========================================================================= */





/* section 2 one-fold: tighter vertical rhythm on desktop so the fold needs less scaling on short windows */





/* =========================================================================

   WOMEN'S HEALTH RESEARCH PAGE - SECTION 3 "Underfunded Conditions"  (page-id-3510, section #4db212e -> heading block #5dbb2e6,

   6-card grid #14564cf; each card #328951a ... = photo container + text container). Redesign of the dark section: a deeper

   night-blue base with two soft violet glows, the cards as glass panels with a violet hairline border, a border that draws itself around the card as it scrolls into view (custom.js), a corner glow

   on hover, a lift + photo brighten on hover, a short gradient accent under each card

   title, softer white body text and a staggered entrance. Text and images are unchanged, font sizes are kept. Responsive:

   3 columns -> 2 -> 1; on phones the photo sits on top of the text.

   ========================================================================= */

.page-id-3510 .elementor-element-4db212e {

    position: relative;

    isolation: isolate;

    background-color: #080c15;

}

.page-id-3510 .elementor-element-4db212e::before {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 1;

    z-index: -1;

    background:

        radial-gradient(46% 34% at 50% 0%, rgba(124, 92, 235, 0.32) 0%, rgba(124, 92, 235, 0) 70%),

        radial-gradient(38% 30% at 0% 100%, rgba(139, 120, 230, 0.20) 0%, rgba(139, 120, 230, 0) 70%),

        radial-gradient(34% 28% at 100% 70%, rgba(93, 74, 190, 0.18) 0%, rgba(93, 74, 190, 0) 70%);

    pointer-events: none;

    animation: whGlow3 12s ease-in-out infinite alternate;

}

@keyframes whGlow3 {

    from { opacity: 0.75; }

    to   { opacity: 1; }

}



/* heading block */

.page-id-3510 .elementor-element-fd6edc8 {

    max-width: 920px;

}

.page-id-3510 .elementor-element-fd6edc8 .elementor-heading-title {

    color: rgba(255, 255, 255, 0.88);

    font-weight: 500;

    line-height: 1.5;

    text-wrap: balance;

}



/* grid + cards */

.page-id-3510 .elementor-element-14564cf {

    gap: 22px !important;

}

.page-id-3510 .elementor-element-14564cf > .e-con {

    position: relative;

    overflow: hidden;

    flex-wrap: nowrap !important;

    border: 1px solid rgba(139, 120, 230, 0.22) !important;

    border-radius: 18px !important;

    background: linear-gradient(160deg, rgba(23, 29, 46, 0.92) 0%, rgba(12, 18, 26, 0.96) 100%) !important;

    box-shadow: 0 24px 44px -30px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.05);

    transition: transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;

    animation: whCard3 0.7s ease both;

}

.page-id-3510 .elementor-element-14564cf > .e-con:nth-child(2) { animation-delay: 0.07s; }

.page-id-3510 .elementor-element-14564cf > .e-con:nth-child(3) { animation-delay: 0.14s; }

.page-id-3510 .elementor-element-14564cf > .e-con:nth-child(4) { animation-delay: 0.21s; }

.page-id-3510 .elementor-element-14564cf > .e-con:nth-child(5) { animation-delay: 0.28s; }

.page-id-3510 .elementor-element-14564cf > .e-con:nth-child(6) { animation-delay: 0.35s; }

@keyframes whCard3 {

    from { opacity: 0; transform: translateY(20px); }

    to   { opacity: 1; transform: none; }

}

/* border that completes while the card scrolls into view: custom.js sets --wh-p (0deg -> 360deg) from the card's scroll position;

   the ring is a conic gradient cut to a 1.5px frame, so it runs around the card and closes */

.page-id-3510 .elementor-element-14564cf > .e-con::before {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 1;

    padding: 1.5px;

    border-radius: 18px;

    background: conic-gradient(from 0deg, #d3c8ff 0deg, #8b78e6 var(--wh-p, 360deg), rgba(139, 120, 230, 0) var(--wh-p, 360deg));

    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);

    -webkit-mask-composite: xor;

    mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);

    pointer-events: none;

    z-index: 3;

}

.page-id-3510 .elementor-element-14564cf > .e-con::after {

    content: "";

    position: absolute;

    inset: -60px -60px auto auto;

    width: 200px;

    height: 200px;

    opacity: 0;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(139, 120, 230, 0.35) 0%, rgba(139, 120, 230, 0) 68%);

    transition: opacity 0.4s ease;

    pointer-events: none;

    z-index: 0;

}

.page-id-3510 .elementor-element-14564cf > .e-con:hover {

    transform: translateY(-6px);

    border-color: rgba(183, 166, 255, 0.55) !important;

    box-shadow: 0 34px 56px -30px rgba(0, 0, 0, 0.95), 0 0 0 1px rgba(139, 120, 230, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.08);

}

.page-id-3510 .elementor-element-14564cf > .e-con:hover::after {

    opacity: 1;

}



/* photo side */

.page-id-3510 .elementor-element-14564cf > .e-con > .e-con:first-child {

    position: relative;

    --width: 28%;

    width: 28%;

    flex: none;

    border-radius: 0 !important;

    overflow: hidden;

    background-size: cover !important;

    background-position: center center !important;

    transition: filter 0.4s ease;

}

.page-id-3510 .elementor-element-14564cf > .e-con:hover > .e-con:first-child {

    filter: saturate(1.15) brightness(1.06);

}

.page-id-3510 .elementor-element-14564cf > .e-con > .e-con:first-child::before {

    content: "";

    position: absolute;

    inset: 0 0 0 auto;

    width: 40%;

    height: auto;

    opacity: 1;

    background: linear-gradient(90deg, rgba(12, 18, 26, 0) 0%, rgba(12, 18, 26, 0.7) 100%);

    pointer-events: none;

    z-index: 1;

}



/* text side */

.page-id-3510 .elementor-element-14564cf > .e-con > .e-con:nth-child(2) {

    --width: 68%;

    flex: 1 1 0;

    width: auto;

    min-width: 0;

    justify-content: center;

    z-index: 1;

}

.page-id-3510 .elementor-element-14564cf .elementor-image-box-title {

    color: #ffffff;

}

.page-id-3510 .elementor-element-14564cf .elementor-image-box-title::after {

    content: "";

    display: block;

    width: 34px;

    height: 3px;

    margin-top: 7px;

    border-radius: 3px;

    background: linear-gradient(90deg, #8b78e6, #c9baff);

    transition: width 0.35s ease;

}

.page-id-3510 .elementor-element-14564cf > .e-con:hover .elementor-image-box-title::after {

    width: 62px;

}

.page-id-3510 .elementor-element-14564cf .elementor-image-box-description {

    color: rgba(255, 255, 255, 0.82);

    line-height: 1.5;

}



/* tablet: 2 columns */



/* phone: 1 column, photo on top */



@media (prefers-reduced-motion: reduce) {

    .page-id-3510 .elementor-element-4db212e::before,

    .page-id-3510 .elementor-element-14564cf > .e-con {

        animation: none;

    }

}



/* section 3: keep the small "Underfunded Conditions" label on one line */

.page-id-3510 .elementor-element-ed9f3b0 {

    width: max-content !important;

    max-width: 100%;

}

.page-id-3510 .elementor-element-ed9f3b0 .elementor-heading-title {

    white-space: nowrap;

}





/* =========================================================================

   WOMEN'S HEALTH RESEARCH PAGE - SECTION 4 "Representation Matters"  (page-id-3510, section #e04db73 -> photo column #aba685a,

   content column #9150c52 with heading block + 6-card grid #4f3587d; card = container #0485e29 ... > image box). Redesign: the

   photo becomes a rounded floating panel with a soft violet under-glow and a fade at the bottom; the section gets a light

   lavender wash; the six cards become clean white cards with each icon in a tinted rounded tile, a gradient bar that grows along

   the top on hover, a lift and an icon tilt; softer body ink; a staggered entrance. Text, images and font sizes are unchanged.

   Responsive: desktop = photo left + 2-column cards; tablet = photo on top as a wide banner + 2 columns; phone = 1 column.

   ========================================================================= */

.page-id-3510 .elementor-element-e04db73 {

    position: relative;

    isolation: isolate;

    gap: 36px;

    padding: 44px 40px 44px 40px !important;

}

.page-id-3510 .elementor-element-e04db73::before {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 1;

    z-index: -1;

    background:

        radial-gradient(36% 34% at 0% 0%, rgba(133, 112, 214, 0.16) 0%, rgba(133, 112, 214, 0) 70%),

        radial-gradient(34% 30% at 100% 100%, rgba(255, 193, 7, 0.10) 0%, rgba(255, 193, 7, 0) 70%),

        linear-gradient(180deg, #ffffff 0%, #f8f5fe 55%, #ffffff 100%);

    pointer-events: none;

}



/* photo panel */

.page-id-3510 .elementor-element-aba685a {

    position: relative;

    flex: 0 0 auto;

    align-self: stretch;

    border-radius: 28px !important;

    overflow: hidden;

    background-position: center top !important;

    background-size: cover !important;

    box-shadow: 0 34px 60px -30px rgba(67, 54, 143, 0.6), 0 0 0 6px rgba(255, 255, 255, 0.9);

}

.page-id-3510 .elementor-element-aba685a::before {

    content: "";

    position: absolute;

    inset: auto 0 0 0;

    width: auto;

    height: 42%;

    opacity: 1;

    background: linear-gradient(180deg, rgba(34, 24, 92, 0) 0%, rgba(34, 24, 92, 0.55) 100%);

    pointer-events: none;

}

.page-id-3510 .elementor-element-aba685a::after {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 1;

    border-radius: 28px;

    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.35);

    pointer-events: none;

}



/* heading block */

.page-id-3510 .elementor-element-96e0798 .elementor-heading-title {

    color: #2a2a3d;

    font-weight: 500;

    line-height: 1.5;

    text-wrap: pretty;

}



/* cards */

.page-id-3510 .elementor-element-4f3587d {

    gap: 18px !important;

}

.page-id-3510 .elementor-element-4f3587d > .e-con {

    position: relative;

    overflow: hidden;

    padding: 0 !important;

    border: 1px solid #ece8f8 !important;

    border-radius: 20px !important;

    background: #ffffff !important;

    box-shadow: 0 20px 38px -28px rgba(67, 54, 143, 0.5), 0 2px 8px rgba(34, 57, 115, 0.05) !important;

    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;

    animation: whCard4 0.7s ease both;

}

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(2) { animation-delay: 0.07s; }

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(3) { animation-delay: 0.14s; }

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(4) { animation-delay: 0.21s; }

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(5) { animation-delay: 0.28s; }

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(6) { animation-delay: 0.35s; }

@keyframes whCard4 {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: none; }

}

.page-id-3510 .elementor-element-4f3587d > .e-con > .e-con-inner {

    padding: 16px 18px;

}

.page-id-3510 .elementor-element-4f3587d > .e-con::before {

    content: "";

    position: absolute;

    inset: 0 auto auto 0;

    width: 100%;

    height: 3px;

    opacity: 1;

    background: linear-gradient(90deg, #6152ad, #b79cff);

    transform: scaleX(0.18);

    transform-origin: 0 50%;

    transition: transform 0.45s ease;

    pointer-events: none;

    z-index: 2;

}

.page-id-3510 .elementor-element-4f3587d > .e-con::after {

    content: "";

    position: absolute;

    inset: auto -50px -60px auto;

    width: 150px;

    height: 150px;

    opacity: 0.08;

    border-radius: 50%;

    background: #6152ad;

    transition: opacity 0.4s ease, transform 0.4s ease;

    pointer-events: none;

}

.page-id-3510 .elementor-element-4f3587d > .e-con:hover {

    transform: translateY(-5px);

    border-color: #ddd3f7 !important;

    box-shadow: 0 30px 48px -28px rgba(67, 54, 143, 0.6), 0 2px 8px rgba(34, 57, 115, 0.06) !important;

}

.page-id-3510 .elementor-element-4f3587d > .e-con:hover::before {

    transform: scaleX(1);

}

.page-id-3510 .elementor-element-4f3587d > .e-con:hover::after {

    opacity: 0.14;

    transform: scale(1.25);

}



/* icon tile + text */

.page-id-3510 .elementor-element-4f3587d .elementor-image-box-wrapper {

    display: flex;

    align-items: flex-start;

    gap: 16px;

    text-align: left;

}

.page-id-3510 .elementor-element-4f3587d .elementor-image-box-img {

    flex: none;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 64px !important;

    height: 64px;

    margin: 0 !important;

    border-radius: 18px;

    background: linear-gradient(135deg, #f1ecfc 0%, #e0d6f9 100%);

    box-shadow: inset 0 0 0 1px rgba(97, 82, 173, 0.12);

    transition: transform 0.35s ease, background 0.35s ease;

}

.page-id-3510 .elementor-element-4f3587d .elementor-image-box-img img {

    width: 40px !important;

    height: 40px !important;

    object-fit: contain;

}

.page-id-3510 .elementor-element-4f3587d > .e-con:hover .elementor-image-box-img {

    transform: rotate(-6deg) scale(1.06);

    background: linear-gradient(135deg, #e6defb 0%, #cfc0f6 100%);

}

.page-id-3510 .elementor-element-4f3587d .elementor-image-box-content {

    flex: 1;

    min-width: 0;

}

.page-id-3510 .elementor-element-4f3587d .elementor-image-box-title {

    color: #223973;

    font-weight: 700;

    margin-bottom: 8px;

}

.page-id-3510 .elementor-element-4f3587d .elementor-image-box-description {

    color: #3a3a52;

    line-height: 1.55;

}



/* tablet: photo on top as a banner, 2 columns */



/* phone: 1 column */



@media (prefers-reduced-motion: reduce) {

    .page-id-3510 .elementor-element-4f3587d > .e-con {

        animation: none;

    }

}





/* =========================================================================

   SECTION 4 "Representation Matters" IN ONE FOLD  (page-id-3510, desktop >= 1025px). New layout: a narrower photo panel on the left

   and the six cards in THREE columns x two rows (was two columns x three rows), with a tighter heading block and card padding, so

   the whole section is about one window tall. custom.js scales it down a little (never below 0.7) on windows that are still too

   short. Text, images and font sizes are unchanged; tablet / phone layouts are the ones above.

   ========================================================================= */





/* section 2: the photo fills the whole height of its column (no empty band above it): cover instead of contain, anchored to the

   bottom-left so the person stays fully in view; the column is a little wider so very little is cropped */





/* =========================================================================

   WOMEN'S HEALTH RESEARCH - SECTION 2, STATS + TEXT CLEAN-UP  (page-id-3510, cards #b0f87d6, paragraphs #9144215). The four stat

   cards and the text under them looked crowded (heavy shadows, accent bars, corner blobs, tight paragraphs). Simplified: flat

   white cards with a hairline border and a soft shadow, no accent bars / blobs, more air between the cards, the text and the

   note; the old icon pictures are replaced (custom.js, .wh-num) by soft pastel number tiles - 11c, 80%, 50 years, 7-10 years -

   in muted colours; softer body ink and a lighter note. Text is unchanged; the stat wording and font sizes are kept.

   ========================================================================= */

.page-id-3510 .elementor-element-b0f87d6 > .e-con {

    border: 1px solid #ece9f6 !important;

    border-radius: 18px !important;

    background: #ffffff !important;

    box-shadow: 0 10px 26px -20px rgba(67, 54, 143, 0.35) !important;

    padding-left: 18px !important;

}

.page-id-3510 .elementor-element-b0f87d6 > .e-con::before,

.page-id-3510 .elementor-element-b0f87d6 > .e-con::after {

    content: none;

}

.page-id-3510 .elementor-element-b0f87d6 > .e-con:hover {

    transform: translateY(-3px);

    border-color: #ddd6f3 !important;

    box-shadow: 0 16px 30px -20px rgba(67, 54, 143, 0.45) !important;

}



/* number tiles (custom.js swaps the picture for these) */

.page-id-3510 .elementor-element-b0f87d6 .elementor-image-box-img img {

    display: none;

}

.page-id-3510 .elementor-element-b0f87d6 .elementor-image-box-wrapper .elementor-image-box-img {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 76px !important;

    height: 76px;

    flex: none;

    margin: 0 18px 0 0 !important;

    border-radius: 22px;

    background: var(--wh-tile, #f1eefa);

    transition: transform 0.3s ease;

}

.page-id-3510 .elementor-element-b0f87d6 > .e-con:hover .elementor-image-box-img {

    transform: scale(1.05);

}

.page-id-3510 .wh-num {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    line-height: 1;

    font-weight: 700;

    color: var(--wh-ink, #7d6fc0);

    letter-spacing: -0.02em;

}

.page-id-3510 .wh-num b {

    font-size: 26px;

    font-weight: 700;

}

.page-id-3510 .wh-num small {

    margin-top: 3px;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 0.04em;

    text-transform: lowercase;

    opacity: 0.85;

}

.page-id-3510 .elementor-element-b0f87d6 > .e-con:nth-child(1) { --wh-tile: #fdf0ec; --wh-ink: #de907a; }

.page-id-3510 .elementor-element-b0f87d6 > .e-con:nth-child(2) { --wh-tile: #ebf4f0; --wh-ink: #67a08b; }

.page-id-3510 .elementor-element-b0f87d6 > .e-con:nth-child(3) { --wh-tile: #ecf0fb; --wh-ink: #7f9ce0; }

.page-id-3510 .elementor-element-b0f87d6 > .e-con:nth-child(4) { --wh-tile: #fbf3e8; --wh-ink: #d8a464; }



/* text under the cards: more air, softer ink, lighter note */

.page-id-3510 .elementor-element-b0f87d6 .elementor-image-box-description {

    color: #3a3a4f;

    font-weight: 500;

    line-height: 1.5;

}

.page-id-3510 .elementor-element-9144215 > p {

    color: #55556b;

    line-height: 1.65;

}

.page-id-3510 .elementor-element-9144215 > p:last-of-type {

    border-left: 3px solid #b7a9ea;

    border-radius: 0 14px 14px 0;

    background: #f7f5fd;

    color: #3f3f57;

}





/* =========================================================================

   SINGLE POST - LAYOUT: WIDER ARTICLE, TIGHTER SIDEBAR, STICKY SIDEBAR  (singular.php, posts with the sidebar layout, >= 1200px).

   - the article (9/12) + sidebar (3/12) now fill the whole .container, the same width as the hero above (singular.php: col-xl-9 / col-xl-3);

   - the gap between the "Follow Me" card and the "Related Posts" card is reduced;

   - the whole sidebar column (both cards) stays in view while the article scrolls; if it is taller than the window (e.g. the

     Instagram feed is tall) it scrolls inside itself instead of being cut off - the scrollbar is hidden.

   ========================================================================= */



body .sidebar-instagram {

    margin-bottom: 16px;

}





/* single post: the article + sidebar row uses the same .container as the banner above it (no wider override), so both line up at every width */





/* single post: the banner's rounded bottom corners used to show the white page behind them; the lavender article section now starts

   behind the banner (pulled up by the corner radius, with the same amount added to its top padding), so the corners are lavender */

body .Blogbanner {

    z-index: 1;

}

section:has(> .container .post-content-card) {

    margin-top: -44px;

    padding-top: 100px;

}





/* =========================================================================

   CATEGORY / ARCHIVE PAGE  (category.php: .category-container > h1.category-title + .posts-grid > .post-card + .pagination).

   The template had no styling at all (one full-width column of bare images, links and text under the fixed header). New design,

   in the same language as the post pages: a purple gradient hero band with a dot texture, rings, curved bottom edge and a small

   "Category" pill above the title; the posts as a responsive card grid (3 -> 2 -> 1 columns) on a flat lavender page - white cards

   with a 16:10 picture that zooms on hover, a two-line title, a three-line excerpt and a "Read article" cue; soft entrance;

   round pagination. Text comes from WordPress unchanged. The "Category" pill and the stagger index come from custom.js.

   ========================================================================= */

body.archive .category-container {

    position: relative;

    padding: 0 0 84px;

    background: #f1ecfb;

    font-family: inherit;

}



/* hero band */

body.archive .category-title {

    position: relative;

    overflow: hidden;

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    margin: 0;

    padding: 132px 24px 84px;

    border-radius: 0 0 44px 44px;

    background:

        radial-gradient(55% 90% at 90% 15%, rgba(255, 255, 255, 0.20) 0%, rgba(255, 255, 255, 0) 62%),

        radial-gradient(45% 80% at 0% 100%, rgba(255, 193, 7, 0.18) 0%, rgba(255, 193, 7, 0) 62%),

        linear-gradient(135deg, #43368f 0%, #6152ad 52%, #8570d6 100%);

    color: #ffffff;

    font-size: clamp(3.2rem, 2.2rem + 2.8vw, 5.6rem);

    font-weight: 700;

    line-height: 1.1;

    letter-spacing: -0.02em;

    text-align: center;

    text-shadow: 0 10px 30px rgba(28, 18, 84, 0.35);

}

body.archive .category-title::before {

    content: "";

    position: absolute;

    inset: 0;

    opacity: 0.5;

    background-image: radial-gradient(rgba(255, 255, 255, 0.35) 1.2px, transparent 1.4px);

    background-size: 26px 26px;

    -webkit-mask-image: linear-gradient(115deg, #000 0%, rgba(0, 0, 0, 0.25) 45%, transparent 75%);

    mask-image: linear-gradient(115deg, #000 0%, rgba(0, 0, 0, 0.25) 45%, transparent 75%);

    pointer-events: none;

}

body.archive .category-title::after {

    content: "";

    position: absolute;

    inset: auto -140px -220px auto;

    width: 520px;

    height: 520px;

    border-radius: 50%;

    border: 1px solid rgba(255, 255, 255, 0.18);

    box-shadow: 0 0 0 46px rgba(255, 255, 255, 0.04), 0 0 0 96px rgba(255, 255, 255, 0.03);

    pointer-events: none;

}

body.archive .cat-eyebrow {

    position: relative;

    z-index: 1;

    display: inline-block;

    margin-bottom: 18px;

    padding: 7px 18px;

    border-radius: 999px;

    background: rgba(255, 255, 255, 0.14);

    border: 1px solid rgba(255, 255, 255, 0.28);

    -webkit-backdrop-filter: blur(6px);

    backdrop-filter: blur(6px);

    color: #ffffff;

    font-size: 13px;

    font-weight: 600;

    letter-spacing: 0.12em;

    line-height: 1.2;

    text-transform: uppercase;

    text-shadow: none;

}



/* grid */

body.archive .posts-grid {

    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 28px;

    width: min(1320px, calc(100% - 48px));

    margin: 56px auto 0;

}

body.archive .post-card {

    display: flex;

    min-width: 0;

    border-radius: 22px;

    border: 1px solid #e6def9;

    background: #ffffff;

    box-shadow: 0 22px 40px -32px rgba(67, 54, 143, 0.55), 0 2px 8px rgba(34, 57, 115, 0.05);

    overflow: hidden;

    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;

    animation: catUp 0.7s ease both;

    animation-delay: calc(var(--i, 0) * 70ms);

}

@keyframes catUp {

    from { opacity: 0; transform: translateY(20px); }

    to   { opacity: 1; transform: none; }

}

body.archive .post-card:hover {

    transform: translateY(-6px);

    border-color: #cfc2f3;

    box-shadow: 0 34px 54px -30px rgba(67, 54, 143, 0.7), 0 2px 8px rgba(34, 57, 115, 0.06);

}

body.archive .post-card > a {

    display: flex;

    flex-direction: column;

    width: 100%;

    color: inherit;

    text-decoration: none;

}

body.archive .post-thumbnail {

    position: relative;

    overflow: hidden;

    aspect-ratio: 16 / 10;

    background: linear-gradient(135deg, #e6defb, #d5c9f6);

}

body.archive .post-thumbnail img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.6s ease;

}

body.archive .post-card:hover .post-thumbnail img {

    transform: scale(1.07);

}

body.archive .post-thumbnail::after {

    content: "";

    position: absolute;

    inset: auto 0 0 0;

    height: 40%;

    background: linear-gradient(180deg, rgba(34, 24, 92, 0) 0%, rgba(34, 24, 92, 0.28) 100%);

    pointer-events: none;

}

body.archive .post-title {

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

    margin: 20px 22px 0;

    color: #223973;

    font-size: 2rem;

    font-weight: 700;

    line-height: 1.3;

    letter-spacing: -0.01em;

    text-transform: none;

    transition: color 0.25s ease;

}

body.archive .post-card:hover .post-title {

    color: #6152ad;

}

body.archive .post-excerpt {

    margin: 10px 22px 0;

}

body.archive .post-excerpt p {

    display: -webkit-box;

    -webkit-line-clamp: 3;

    -webkit-box-orient: vertical;

    overflow: hidden;

    margin: 0;

    color: #55556b;

    font-size: 1.55rem;

    line-height: 1.6;

}

body.archive .post-card > a::after {

    content: "Read article \2192";

    margin: auto 22px 0;

    padding: 18px 0 22px;

    color: #6152ad;

    font-size: 1.4rem;

    font-weight: 700;

    letter-spacing: 0.02em;

    transition: letter-spacing 0.25s ease, color 0.25s ease;

}

body.archive .post-card:hover > a::after {

    letter-spacing: 0.06em;

    color: #43368f;

}

body.archive .post-excerpt {

    margin-bottom: 0;

}



/* pagination + empty state */

body.archive .category-container .pagination {

    display: flex;

    justify-content: center;

    width: min(1320px, calc(100% - 48px));

    margin: 48px auto 0;

}

body.archive .category-container .pagination:empty {

    display: none;

}

body.archive .pagination .nav-links {

    display: flex;

    flex-wrap: wrap;

    align-items: center;

    justify-content: center;

    gap: 10px;

}

body.archive .pagination .page-numbers {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-width: 44px;

    height: 44px;

    padding: 0 16px;

    border-radius: 999px;

    border: 1px solid #ddd3f7;

    background: #ffffff;

    color: #223973;

    font-size: 1.5rem;

    font-weight: 600;

    text-decoration: none;

    transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;

}

body.archive .pagination a.page-numbers:hover {

    background: #6152ad;

    border-color: #6152ad;

    color: #ffffff;

    transform: translateY(-2px);

}

body.archive .pagination .page-numbers.current {

    background: #6152ad;

    border-color: #6152ad;

    color: #ffffff;

}

body.archive .category-container > p {

    width: min(1320px, calc(100% - 48px));

    margin: 56px auto 0;

    padding: 32px;

    border-radius: 22px;

    background: #ffffff;

    color: #55556b;

    text-align: center;

}





@media (prefers-reduced-motion: reduce) {

    body.archive .post-card {

        animation: none;

    }

}





/* category / archive page: the logo text is white over the purple hero, and turns black once the header becomes white on scroll

   (same behaviour as the home page); with the menu open the theme's own .white-logo class still wins */

body.archive .chloe-logo {

    color: #ffffff;

    transition: color 0.3s ease;

}

body.archive .main-header.scrolled .chloe-logo {

    color: #000000;

}

body.archive .chloe-logo.white-logo {

    color: #ffffff;

}

body.archive .main-header .logo.profile {

    color: inherit !important;

}





/* =========================================================================

   AUTHOR PAGE  (no author.php: WordPress uses index.php -> #site-content > header.archive-header + one <article> per post, each

   with the WHOLE post text, + .pagination-wrapper). That printed ~37,000px of full articles under a bare title. New design in the

   language of the category / post pages: a purple gradient hero with dot texture, rings and curved bottom edge, a round initials

   avatar, an "Author" pill and the author's name; the posts as a responsive grid of cards (3 -> 2 -> 1 columns) on flat lavender -

   16:10 picture, category chip, two-line title, date, a short excerpt and a "Read article" cue, the full text hidden and the whole

   card clickable; round pagination. custom.js wraps the cards in .au-grid, builds the avatar / excerpt / cue and removes the

   separators. Titles, dates and links come from WordPress unchanged.

   ========================================================================= */

body.author #site-content {

    padding-bottom: 84px;

    background: #f1ecfb;

}



/* hero */

body.author .archive-header {

    position: relative;

    overflow: hidden;

    margin: 0;

    padding: 132px 24px 84px;

    border: 0;

    border-radius: 0 0 44px 44px;

    background:

        radial-gradient(55% 90% at 90% 15%, rgba(255, 255, 255, 0.20) 0%, rgba(255, 255, 255, 0) 62%),

        radial-gradient(45% 80% at 0% 100%, rgba(255, 193, 7, 0.18) 0%, rgba(255, 193, 7, 0) 62%),

        linear-gradient(135deg, #43368f 0%, #6152ad 52%, #8570d6 100%);

}

body.author .archive-header::before {

    content: "";

    position: absolute;

    inset: 0;

    opacity: 0.5;

    background-image: radial-gradient(rgba(255, 255, 255, 0.35) 1.2px, transparent 1.4px);

    background-size: 26px 26px;

    -webkit-mask-image: linear-gradient(115deg, #000 0%, rgba(0, 0, 0, 0.25) 45%, transparent 75%);

    mask-image: linear-gradient(115deg, #000 0%, rgba(0, 0, 0, 0.25) 45%, transparent 75%);

    pointer-events: none;

}

body.author .archive-header::after {

    content: "";

    position: absolute;

    inset: auto -140px -220px auto;

    width: 520px;

    height: 520px;

    border-radius: 50%;

    border: 1px solid rgba(255, 255, 255, 0.18);

    box-shadow: 0 0 0 46px rgba(255, 255, 255, 0.04), 0 0 0 96px rgba(255, 255, 255, 0.03);

    pointer-events: none;

}

body.author .archive-header-inner {

    position: relative;

    z-index: 1;

    width: 100%;

    max-width: 1000px;

    margin: 0 auto;

    padding: 0;

}

body.author .archive-title {

    display: flex;

    flex-direction: column;

    align-items: center;

    margin: 0;

    color: #ffffff;

    font-size: clamp(3.2rem, 2.2rem + 2.8vw, 5.6rem);

    font-weight: 700;

    line-height: 1.1;

    letter-spacing: -0.02em;

    text-align: center;

    text-shadow: 0 10px 30px rgba(28, 18, 84, 0.35);

}

body.author .au-avatar {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 92px;

    height: 92px;

    margin-bottom: 18px;

    border-radius: 50%;

    background: linear-gradient(135deg, #ffd76a, #f4a23a);

    border: 4px solid rgba(255, 255, 255, 0.85);

    box-shadow: 0 18px 34px -14px rgba(20, 10, 70, 0.6);

    color: #3b2c86;

    font-size: 3.2rem;

    font-weight: 700;

    letter-spacing: 0;

    text-shadow: none;

}

body.author .au-pill {

    display: inline-block;

    margin-bottom: 14px;

    padding: 7px 18px;

    border-radius: 999px;

    background: rgba(255, 255, 255, 0.14);

    border: 1px solid rgba(255, 255, 255, 0.28);

    -webkit-backdrop-filter: blur(6px);

    backdrop-filter: blur(6px);

    color: #ffffff;

    font-size: 13px;

    font-weight: 600;

    letter-spacing: 0.12em;

    line-height: 1.2;

    text-transform: uppercase;

    text-shadow: none;

}



/* cards */

body.author .au-grid {

    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 28px;

    width: min(1320px, calc(100% - 48px));

    margin: 56px auto 0;

}

body.author .au-grid > article {

    position: relative;

    display: flex;

    flex-direction: column;

    min-width: 0;

    margin: 0;

    padding: 0;

    border-radius: 22px;

    border: 1px solid #e6def9;

    background: #ffffff;

    box-shadow: 0 22px 40px -32px rgba(67, 54, 143, 0.55), 0 2px 8px rgba(34, 57, 115, 0.05);

    overflow: hidden;

    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;

    animation: auUp 0.7s ease both;

    animation-delay: calc(var(--i, 0) * 70ms);

}

@keyframes auUp {

    from { opacity: 0; transform: translateY(20px); }

    to   { opacity: 1; transform: none; }

}

body.author .au-grid > article:hover {

    transform: translateY(-6px);

    border-color: #cfc2f3;

    box-shadow: 0 34px 54px -30px rgba(67, 54, 143, 0.7), 0 2px 8px rgba(34, 57, 115, 0.06);

}

/* the full post text is not shown on the list */

body.author .au-grid > article .post-inner,

body.author .au-grid > article > .section-inner {

    display: none;

}



/* picture on top */

body.author .au-grid > article .featured-media {

    order: 0;

    position: relative;

    overflow: hidden;

    margin: 0;

    aspect-ratio: 16 / 10;

    background: linear-gradient(135deg, #e6defb, #d5c9f6);

}

body.author .au-grid > article .featured-media-inner {

    width: 100%;

    max-width: none;

    height: 100%;

    margin: 0;

    padding: 0;

}

body.author .au-grid > article .featured-media img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.6s ease;

}

body.author .au-grid > article:hover .featured-media img {

    transform: scale(1.07);

}

body.author .au-grid > article .featured-media::after {

    content: "";

    position: absolute;

    inset: auto 0 0 0;

    height: 40%;

    background: linear-gradient(180deg, rgba(34, 24, 92, 0) 0%, rgba(34, 24, 92, 0.28) 100%);

    pointer-events: none;

}



/* text */

body.author .au-grid > article .entry-header {

    order: 1;

    margin: 0;

    padding: 20px 22px 0;

    text-align: left;

}

body.author .au-grid > article .entry-header-inner {

    width: 100%;

    max-width: none;

    margin: 0;

    padding: 0;

}

body.author .au-grid > article .entry-categories {

    margin: 0 0 12px;

}

body.author .au-grid > article .entry-categories-inner {

    display: flex;

    flex-wrap: wrap;

    justify-content: flex-start;

    gap: 6px;

}

body.author .au-grid > article .entry-categories a {

    display: inline-block;

    margin: 0;

    padding: 4px 12px;

    border: 0;

    border-radius: 999px;

    background: #efeafc;

    color: #6152ad;

    font-size: 1.15rem;

    font-weight: 700;

    letter-spacing: 0.08em;

    line-height: 1.5;

    text-decoration: none;

    text-transform: uppercase;

}

body.author .au-grid > article .entry-title {

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

    margin: 0;

    font-size: 2rem;

    font-weight: 700;

    line-height: 1.3;

    letter-spacing: -0.01em;

    text-align: left;

    text-transform: none;

}

body.author .au-grid > article .entry-title a {

    color: #223973;

    text-decoration: none;

    transition: color 0.25s ease;

}

body.author .au-grid > article:hover .entry-title a {

    color: #6152ad;

}

/* the title link covers the whole card */

body.author .au-grid > article .entry-title a::after {

    content: "";

    position: absolute;

    inset: 0;

    z-index: 2;

}

body.author .au-grid > article .post-meta-wrapper {

    margin: 10px 0 0;

}

body.author .au-grid > article .post-meta {

    display: flex;

    flex-wrap: wrap;

    justify-content: flex-start;

    gap: 6px 14px;

    margin: 0;

    padding: 0;

    list-style: none;

    color: #7a7a90;

    font-size: 1.3rem;

}

body.author .au-grid > article .post-meta li {

    margin: 0;

}

body.author .au-grid > article .post-meta .post-author,

body.author .au-grid > article .post-meta .post-comment-link {

    display: none;

}

body.author .au-grid > article .post-meta .meta-icon svg {

    fill: #9a8fd0;

}

body.author .au-grid > article .post-meta a,

body.author .au-grid > article .post-meta .meta-text {

    color: #7a7a90;

    text-decoration: none;

}

body.author .au-excerpt {

    order: 2;

    display: -webkit-box;

    -webkit-line-clamp: 3;

    -webkit-box-orient: vertical;

    overflow: hidden;

    margin: 12px 22px 0;

    color: #55556b;

    font-size: 1.55rem;

    line-height: 1.6;

}

body.author .au-more {

    order: 3;

    margin: auto 22px 0;

    padding: 18px 0 22px;

    color: #6152ad;

    font-size: 1.4rem;

    font-weight: 700;

    letter-spacing: 0.02em;

    transition: letter-spacing 0.25s ease, color 0.25s ease;

}

body.author .au-grid > article:hover .au-more {

    letter-spacing: 0.06em;

    color: #43368f;

}



/* pagination */

body.author .pagination-wrapper {

    width: min(1320px, calc(100% - 48px));

    margin: 48px auto 0;

    padding: 0;

}

body.author .pagination-wrapper hr {

    display: none;

}

body.author .pagination-wrapper .nav-links {

    display: flex;

    flex-wrap: wrap;

    align-items: center;

    justify-content: center;

    gap: 10px;

    margin: 0;

    padding: 0;

}

body.author .pagination-wrapper .page-numbers {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    min-width: 44px;

    height: 44px;

    margin: 0;

    padding: 0 16px;

    border-radius: 999px;

    border: 1px solid #ddd3f7;

    background: #ffffff;

    color: #223973;

    font-size: 1.5rem;

    font-weight: 600;

    text-decoration: none;

    transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;

}

body.author .pagination-wrapper a.page-numbers:hover {

    background: #6152ad;

    border-color: #6152ad;

    color: #ffffff;

    transform: translateY(-2px);

}

body.author .pagination-wrapper .page-numbers.current {

    background: #6152ad;

    border-color: #6152ad;

    color: #ffffff;

}

body.author .pagination-wrapper .page-numbers.dots,

body.author .pagination-wrapper .page-numbers.placeholder {

    border-color: transparent;

    background: transparent;

}

body.author .pagination-wrapper .page-numbers.placeholder {

    display: none;

}

body.author .pagination-wrapper .page-numbers .svg-icon {

    fill: currentColor;

}



/* logo: white over the hero, black once the header turns white (same as category / home) */

body.author .chloe-logo {

    color: #ffffff;

    transition: color 0.3s ease;

}

body.author .main-header.scrolled .chloe-logo {

    color: #000000;

}

body.author .chloe-logo.white-logo {

    color: #ffffff;

}





@media (prefers-reduced-motion: reduce) {

    body.author .au-grid > article {

        animation: none;

    }

}



/* author page: index.php also prints the (empty) Twenty Twenty footer widget area, which left a white band between the lavender list and the footer */

body.author .footer-nav-widgets-wrapper {

    display: none;

}





/* =========================================================================

   AUTHOR PAGE - HERO + SIDEBAR  (author.php). Builds on "AUTHOR PAGE" above (same purple hero background, cards and pagination).

   Hero: a row with a round initials avatar on the left, top-aligned with the text column on the right (breadcrumb, pill, name,

   bio). Below: two columns - heading row + card grid on the left, sticky sidebar on the right (popular articles, topics,

   collaborate box). Tablet: sidebar moves under the list; phone: everything stacks and the hero is centred.

   ========================================================================= */

body.author .au-hero {

    padding: 128px 24px 72px;

    text-align: left;

}

body.author .au-hero-inner {

    position: relative;

    z-index: 1;

    width: min(1320px, 100%);

    margin: 0 auto;

}

body.author .au-crumbs {

    display: flex;

    flex-wrap: wrap;

    align-items: center;

    gap: 8px;

    margin: 0 0 18px;

    color: rgba(255, 255, 255, 0.7);

    font-size: 1.45rem;

    font-weight: 500;

}

body.author .au-crumbs a {

    color: rgba(255, 255, 255, 0.85);

    text-decoration: none;

    transition: color 0.2s ease;

}

body.author .au-crumbs a:hover {

    color: #ffd76a;

}

body.author .au-crumbs [aria-current] {

    color: #ffffff;

    font-weight: 600;

}

body.author .au-hero-row {

    display: flex;

    align-items: flex-start;

    gap: 32px;

}

body.author .au-hero-avatar {

    flex: 0 0 auto;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 120px;

    height: 120px;

    border-radius: 50%;

    background: linear-gradient(135deg, #ffd76a, #f4a23a);

    border: 5px solid rgba(255, 255, 255, 0.9);

    box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.08), 0 20px 38px -16px rgba(20, 10, 70, 0.7);

    color: #3b2c86;

    font-size: 3.8rem;

    font-weight: 700;

    letter-spacing: 0.01em;

}

body.author .au-hero-text {

    min-width: 0;

    max-width: 760px;

    color: #ffffff;

}

body.author .au-hero-text .au-pill {

    margin-bottom: 12px;

}

body.author .au-hero-name {

    margin: 0 0 14px;

    color: #ffffff;

    font-size: clamp(3.4rem, 2.4rem + 2.6vw, 5.6rem);

    font-weight: 700;

    line-height: 1.08;

    letter-spacing: -0.02em;

    text-shadow: 0 10px 30px rgba(28, 18, 84, 0.35);

}

body.author .au-hero-bio p {

    margin: 0;

    color: rgba(255, 255, 255, 0.9);

    font-size: 1.75rem;

    line-height: 1.65;

}

/* two columns */

body.archive .au-layout {

    display: grid;

    grid-template-columns: minmax(0, 1fr) 340px;

    align-items: start;

    gap: 36px;

    width: min(1320px, calc(100% - 48px));

    margin: 56px auto 0;

}

body.author .au-main-head {

    display: flex;

    align-items: baseline;

    justify-content: space-between;

    gap: 16px;

    margin-bottom: 24px;

}

body.author .au-main-head h2 {

    margin: 0;

    color: #223973;

    font-size: clamp(2.4rem, 2rem + 0.8vw, 3rem);

    font-weight: 700;

    letter-spacing: -0.01em;

}

body.author .au-main-count {

    flex: 0 0 auto;

    color: #6152ad;

    font-size: 1.5rem;

    font-weight: 600;

}

body.archive .au-layout .au-grid {

    width: 100%;

    margin: 0;

    gap: 24px;

}

body.archive .au-layout .pagination-wrapper {

    width: 100%;

}

body.author .au-grid > article .entry-title {

    font-size: 1.85rem;

}

body.author .au-grid > article .au-card-meta {

    flex-wrap: nowrap;

    gap: 0;

    font-size: 1.25rem;

    white-space: nowrap;

}

body.author .au-card-meta li + li::before {

    content: "·";

    margin: 0 8px;

    color: #b3abd6;

}



/* sidebar: as tall as the list, so the collaborate box at its end can stay in view while scrolling */

body.archive .au-sidebar {

    align-self: stretch;

    display: flex;

    flex-direction: column;

    gap: 24px;

}

body.archive .au-sidebar .au-cta {

    position: sticky;

    top: 110px;

}

body.archive .au-box {

    padding: 24px;

    border-radius: 22px;

    border: 1px solid #e6def9;

    background: #ffffff;

    box-shadow: 0 22px 40px -32px rgba(67, 54, 143, 0.55);

}

body.archive .au-box-title {

    margin: 0 0 16px;

    padding-bottom: 12px;

    border-bottom: 1px solid #efeafc;

    color: #223973;

    font-size: 1.9rem;

    font-weight: 700;

}

body.archive .au-popular {

    margin: 0;

    padding: 0;

    list-style: none;

    counter-reset: aupop;

}

body.archive .au-popular li {

    margin: 0;

}

body.archive .au-popular li + li {

    border-top: 1px dashed #e6def9;

}

body.archive .au-popular a {

    display: flex;

    align-items: center;

    gap: 14px;

    padding: 12px 0;

    text-decoration: none;

}

body.archive .au-popular-thumb {

    position: relative;

    flex: 0 0 64px;

    width: 64px;

    height: 64px;

    border-radius: 14px;

    overflow: hidden;

    background: linear-gradient(135deg, #e6defb, #d5c9f6);

}

body.archive .au-popular-thumb img {

    width: 100%;

    height: 100%;

    object-fit: cover;

}

body.archive .au-popular-thumb::after {

    counter-increment: aupop;

    content: counter(aupop);

    position: absolute;

    top: 4px;

    left: 4px;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 22px;

    height: 22px;

    border-radius: 50%;

    background: #ffd76a;

    color: #3b2c86;

    font-size: 1.2rem;

    font-weight: 700;

}

body.archive .au-popular-text {

    display: flex;

    flex-direction: column;

    gap: 4px;

    min-width: 0;

}

body.archive .au-popular-title {

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

    color: #223973;

    font-size: 1.5rem;

    font-weight: 700;

    line-height: 1.35;

    transition: color 0.2s ease;

}

body.archive .au-popular a:hover .au-popular-title {

    color: #6152ad;

}

body.archive .au-popular-meta {

    color: #7a7a90;

    font-size: 1.25rem;

}

body.archive .au-topics {

    display: flex;

    flex-direction: column;

    gap: 6px;

    margin: 0;

    padding: 0;

    list-style: none;

}

body.archive .au-topics li {

    margin: 0;

}

body.archive .au-topics a {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 12px;

    padding: 10px 14px;

    border-radius: 12px;

    background: #f7f4fe;

    color: #223973;

    font-size: 1.5rem;

    font-weight: 600;

    text-decoration: none;

    transition: background 0.2s ease, color 0.2s ease;

}

body.archive .au-topics a b {

    min-width: 30px;

    padding: 2px 8px;

    border-radius: 999px;

    background: #ffffff;

    color: #6152ad;

    font-size: 1.2rem;

    text-align: center;

}

body.archive .au-topics a:hover {

    background: #6152ad;

    color: #ffffff;

}

body.archive .au-cta {

    position: relative;

    overflow: hidden;

    border: 0;

    color: #ffffff;

    background:

        radial-gradient(70% 90% at 100% 0%, rgba(255, 255, 255, 0.18) 0%, rgba(255, 255, 255, 0) 60%),

        linear-gradient(135deg, #43368f 0%, #6152ad 55%, #8570d6 100%);

}

body.archive .au-cta-title {

    margin: 0 0 10px;

    color: #ffffff;

    font-size: 2.4rem;

    font-weight: 700;

}

body.archive .au-cta p {

    margin: 0 0 20px;

    color: rgba(255, 255, 255, 0.88);

    font-size: 1.5rem;

    line-height: 1.6;

}

body.archive .au-cta-btn {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    padding: 12px 24px;

    border-radius: 999px;

    background: #ffd76a;

    color: #3b2c86;

    font-size: 1.5rem;

    font-weight: 700;

    text-decoration: none;

    transition: transform 0.2s ease, background 0.2s ease;

}

body.archive .au-cta-btn:hover {

    background: #ffffff;

    transform: translateY(-2px);

}





/* =========================================================================

   ARCHIVE SIDEBAR ON CATEGORY PAGES  (category.php: .category-container > h1.category-title + .au-layout.cat-layout > .cat-main

   [.posts-grid + .pagination] + aside.au-sidebar). Two-column layout, sidebar boxes and breakpoints come from "AUTHOR PAGE - HERO +

   SIDEBAR" above (scoped to body.archive, which both page types carry); this only fits the existing category card grid into the

   left column: 3 cards per row on wide screens, 2 below 1366px, 1 on phones.

   ========================================================================= */

body.archive .cat-layout .posts-grid {

    width: 100%;

    margin: 0;

    gap: 24px;

}

body.archive .cat-layout .pagination {

    width: 100%;

}

body.archive .cat-layout .post-title {

    font-size: 1.85rem;

}

body.archive .cat-empty {

    margin: 0;

    padding: 32px;

    border-radius: 22px;

    background: #ffffff;

    color: #55556b;

    text-align: center;

}





/* =========================================================================

   WOMEN'S HEALTH RESEARCH - SECTION 2 AS HEADING ROW + THREE COLUMNS  (page-id-3510, .wh-fold1 built by custom.js).

   Row 1: the heading block (eyebrow, title, description), centred. Row 2, three columns on desktop:

     1) the photo   2) the four stat cards, stacked   3) two boxes, one above the other: the first with the description text,

        the second (highlighted) with the next content.

   custom.js moves the cards out of the text container and groups the four paragraphs into the two boxes (.wh-box). Tablet / phone:

   everything stacks - heading, photo, cards, boxes. Text is unchanged.

   ========================================================================= */

.page-id-3510 .wh-fold1 {

    width: 100%;

    display: flex;

    flex-direction: column;

    gap: 22px;

}

.page-id-3510 .elementor-element-8b5c29b {

    display: contents !important;

}

.page-id-3510 .elementor-element.elementor-element-9144215 {

    display: flex !important;

    flex-direction: column;

    gap: 16px;

    width: 100%;

    margin: 0 !important;

}



/* the two text boxes */

.page-id-3510 .wh-box {

    display: flex;

    flex-direction: column;

    justify-content: center;

    flex: 1 1 auto;

    padding: 22px 24px;

    border: 1px solid #ece9f6;

    border-radius: 20px;

    background: #ffffff;

    box-shadow: 0 10px 26px -20px rgba(67, 54, 143, 0.35);

}

.page-id-3510 .wh-box p {

    margin: 0 0 0.75em;

    padding: 0;

    border: 0;

    background: none;

    color: #55556b;

    line-height: 1.65;

}

.page-id-3510 .wh-box p:last-child {

    margin-bottom: 0;

}

.page-id-3510 .wh-box--note {

    border: 0;

    border-left: 4px solid #b7a9ea;

    border-radius: 6px 20px 20px 6px;

    background: linear-gradient(90deg, #f1ecfc 0%, #faf8ff 100%);

    box-shadow: none;

}

.page-id-3510 .wh-box--note p {

    color: #3f3f57;

}





/* tablet / phone order: heading, photo, cards, boxes */





/* =========================================================================

   WOMEN'S HEALTH RESEARCH - QUOTE + FURTHER READINGS STRIPS  (page-id-3510, row #c36d96f: quote card #3bdf561, readings panel

   #d907ee9). The row touched the section above (margin-top -21px) and each strip was ~345px tall with a 36px heading, 36px quote

   and 53px quote-mark widgets. Now: a 28px gap above the row, both strips compact (~230px), quote marks small, the quote text and

   the "Further Readings" heading smaller, the readings as tidy hoverable rows with a tinted icon dot and no underline, a soft

   glass panel + a tighter gradient quote card. Text and links are unchanged. The fold-fit code still scales it on short windows.

   ========================================================================= */

.page-id-3510 .elementor-element.elementor-element-c36d96f {

    margin-top: 28px !important;

    gap: 20px;

    align-items: stretch;

}



/* quote card */

.page-id-3510 .elementor-element.elementor-element-3bdf561 {

    justify-content: center;

    gap: 4px;

    padding: 20px 30px !important;

}

.page-id-3510 .elementor-element-3bdf561::after {

    inset: auto -40px -70px auto;

    width: 200px;

    height: 200px;

}

.page-id-3510 .elementor-element-353aae2,

.page-id-3510 .elementor-element-9982741 {

    width: 100%;

    margin: 0 !important;

    line-height: 0;

}

.page-id-3510 .elementor-element-353aae2 img,

.page-id-3510 .elementor-element-9982741 img {

    width: auto !important;

    height: 30px !important;

    max-width: none;

    opacity: 0.55;

}

.page-id-3510 .elementor-element-3bdf561 > span {

    margin: 0 !important;

    font-size: 2.8rem !important;

    line-height: 1.35 !important;

    font-weight: 600;

    text-align: left !important;

    text-wrap: balance;

}



/* readings panel */

.page-id-3510 .elementor-element.elementor-element-d907ee9 {

    justify-content: center;

    gap: 0;

    padding: 18px 20px 14px !important;

    background: rgba(255, 255, 255, 0.72) !important;

    -webkit-backdrop-filter: blur(6px);

    backdrop-filter: blur(6px);

    border: 1px solid #e6def9 !important;

}

.page-id-3510 .elementor-element-d907ee9 > span {

    margin: 0 0 8px !important;

    color: #223973;

    font-size: 2.4rem !important;

    line-height: 1.2 !important;

    font-weight: 700;

}

.page-id-3510 .elementor-element-63932e7,

.page-id-3510 .elementor-element-aa7be2f,

.page-id-3510 .elementor-element-a8d15bc,

.page-id-3510 .elementor-element-02d91f5 {

    min-height: 0;

    padding: 6px 10px !important;

    margin: 0 0 4px;

    border-radius: 12px;

    transition: background 0.25s ease, transform 0.25s ease;

}

.page-id-3510 .elementor-element-63932e7:hover,

.page-id-3510 .elementor-element-aa7be2f:hover,

.page-id-3510 .elementor-element-a8d15bc:hover,

.page-id-3510 .elementor-element-02d91f5:hover {

    background: #f1ecfc;

    transform: translateX(4px);

}

.page-id-3510 .elementor-element-d907ee9 .e-con .e-con img:first-child {

    box-sizing: content-box;

    width: 18px;

    height: 18px;

    padding: 6px;

    border-radius: 50%;

    background: #ebe5fb;

    object-fit: contain;

}

.page-id-3510 .elementor-element-d907ee9 p {

    margin: 0;

    line-height: 1.3;

}

.page-id-3510 .elementor-element-d907ee9 a,

.page-id-3510 .elementor-element-d907ee9 p a {

    color: #223973;

    font-weight: 600;

    text-decoration: none;

    transition: color 0.25s ease;

}

.page-id-3510 .elementor-element-d907ee9 .e-con:hover a {

    color: #6152ad;

}





.page-id-3510 .elementor-element-d907ee9 p,

.page-id-3510 .elementor-element-d907ee9 p * {

    text-decoration: none !important;

}



/* readings rows stay on one line on phones (Elementor wraps the row containers there): icon + link on the left, arrow on the right */

.page-id-3510 .elementor-element-63932e7,

.page-id-3510 .elementor-element-aa7be2f,

.page-id-3510 .elementor-element-a8d15bc,

.page-id-3510 .elementor-element-02d91f5 {

    display: flex !important;

    flex-direction: row !important;

    flex-wrap: nowrap !important;

    align-items: center !important;

    justify-content: space-between;

}

.page-id-3510 .elementor-element-973ddd8,

.page-id-3510 .elementor-element-ad301a7,

.page-id-3510 .elementor-element-8095adb,

.page-id-3510 .elementor-element-75bb8f8 {

    display: flex !important;

    flex-direction: row !important;

    flex-wrap: nowrap !important;

    align-items: center !important;

    flex: 1 1 auto;

    width: auto;

    min-width: 0;

    gap: 12px;

}

.page-id-3510 .elementor-element-63932e7 > img,

.page-id-3510 .elementor-element-aa7be2f > img,

.page-id-3510 .elementor-element-a8d15bc > img,

.page-id-3510 .elementor-element-02d91f5 > img {

    flex: none;

    width: 18px;

    height: auto;

    margin-left: 10px;

}





/* quote + readings strips: shorter still (row ~190px instead of ~270px) - tighter padding, smaller quote marks, slimmer reading rows */

.page-id-3510 .elementor-element.elementor-element-3bdf561 {

    padding: 14px 28px !important;

    gap: 0;

}

.page-id-3510 .elementor-element-353aae2 img,

.page-id-3510 .elementor-element-9982741 img {

    height: 22px !important;

}

.page-id-3510 .elementor-element-3bdf561 > span {

    font-size: 2.5rem !important;

    line-height: 1.3 !important;

}

.page-id-3510 .elementor-element.elementor-element-d907ee9 {

    padding: 12px 18px 8px !important;

}

.page-id-3510 .elementor-element-d907ee9 > span {

    margin: 0 0 4px !important;

    font-size: 2.2rem !important;

    line-height: 1.15 !important;

}

.page-id-3510 .elementor-element-63932e7,

.page-id-3510 .elementor-element-aa7be2f,

.page-id-3510 .elementor-element-a8d15bc,

.page-id-3510 .elementor-element-02d91f5 {

    padding: 3px 8px !important;

    margin: 0 0 2px;

}

.page-id-3510 .elementor-element-d907ee9 .e-con .e-con img:first-child {

    width: 14px;

    height: 14px;

    padding: 5px;

}

.page-id-3510 .elementor-element-d907ee9 p {

    line-height: 1.25;

}

.page-id-3510 .elementor-element-63932e7 > img,

.page-id-3510 .elementor-element-aa7be2f > img,

.page-id-3510 .elementor-element-a8d15bc > img,

.page-id-3510 .elementor-element-02d91f5 > img {

    width: 16px;

}





/* Further Readings: slightly smaller type (heading and links) */

.page-id-3510 .elementor-element-d907ee9 > span {

    font-size: 2rem !important;

}

.page-id-3510 .elementor-element-d907ee9 p,

.page-id-3510 .elementor-element-d907ee9 p a {

    font-size: 1.5rem !important;

}





/* =========================================================================

   WOMEN'S HEALTH RESEARCH - SECTION 4 "Representation Matters" AS HEADING ROW + THREE COLUMNS  (page-id-3510, section #e04db73).

   The section itself becomes the grid (its content container #9150c52 and the card grid #4f3587d dissolve with display: contents,

   so the heading blocks, the six cards and the photo are all grid items - no script needed):

     row 1-3: eyebrow, title, description - centred, spanning the full width

     row 4-6: column 1 = cards 1, 3, 5   |   column 2 = the photo, full height   |   column 3 = cards 2, 4, 6

   so the cards still read left-to-right, top-to-bottom around the photo. Tablet: photo as a banner, cards in 2 columns; phone: one

   column. Card design, text and font sizes are unchanged. The fold-fit code still scales the section on short windows.

   ========================================================================= */

.page-id-3510 .elementor-element.elementor-element-e04db73 {

    display: grid !important;

    grid-template-columns: minmax(0, 1fr) minmax(250px, 0.6fr) minmax(0, 1fr);

    column-gap: 24px;

    row-gap: 14px;

    align-items: stretch;

    flex-direction: initial;

}

.page-id-3510 .elementor-element-e04db73 > .elementor-element-9150c52,

.page-id-3510 .elementor-element-4f3587d {

    display: contents !important;

}



/* heading blocks: centred, full width */

.page-id-3510 .elementor-element-e04db73 .elementor-element-486de0c,

.page-id-3510 .elementor-element-e04db73 .elementor-element-a4707d4,

.page-id-3510 .elementor-element-e04db73 .elementor-element-96e0798 {

    grid-column: 1 / -1;

    justify-self: center;

    width: auto;

    max-width: 100%;

    margin: 0;

    text-align: center;

}

.page-id-3510 .elementor-element-486de0c { grid-row: 1; }

.page-id-3510 .elementor-element-a4707d4 { grid-row: 2; }

.page-id-3510 .elementor-element-96e0798 { grid-row: 3; max-width: 940px; margin-bottom: 8px; }

.page-id-3510 .elementor-element-486de0c .elementor-heading-title,

.page-id-3510 .elementor-element-a4707d4 .elementor-heading-title,

.page-id-3510 .elementor-element-a4707d4 h1,

.page-id-3510 .elementor-element-96e0798 .elementor-heading-title {

    text-align: center !important;

}

.page-id-3510 .elementor-element-486de0c,

.page-id-3510 .elementor-element-486de0c .elementor-heading-title {

    width: max-content;

    white-space: nowrap;

    line-height: 3rem;

}

.page-id-3510 .elementor-element-486de0c .elementor-heading-title {

    display: flex;

    justify-content: center;

}

.page-id-3510 .elementor-element-486de0c .elementor-heading-title::before,

.page-id-3510 .elementor-element-486de0c .elementor-heading-title::after,

.page-id-3510 .elementor-element-486de0c::before,

.page-id-3510 .elementor-element-486de0c::after {

    left: 50% !important;

    right: auto !important;

    transform: translateX(-50%) !important;

}

.page-id-3510 .elementor-element-96e0798 .elementor-heading-title {

    text-wrap: balance;

}



/* cards: odd ones left, even ones right, three rows */

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(odd)  { grid-column: 1; }

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(even) { grid-column: 3; }

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(1),

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(2) { grid-row: 4; }

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(3),

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(4) { grid-row: 5; }

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(5),

.page-id-3510 .elementor-element-4f3587d > .e-con:nth-child(6) { grid-row: 6; }

.page-id-3510 .elementor-element-4f3587d > .e-con {

    height: 100%;

    margin: 0;

}



/* photo: centre column, full height of the three card rows */

.page-id-3510 .elementor-element.elementor-element-aba685a {

    --width: auto;

    grid-column: 2;

    grid-row: 4 / span 3;

    width: auto;

    min-width: 0;

    flex: none;

    align-self: stretch;

    background-position: center top !important;

}



/* tablet: photo banner, cards in two columns */



/* phone: one column */



/* desktop side gutters for the wider grid */



/* a little air between the heading row and the cards / photo row */

.page-id-3510 .elementor-element.elementor-element-e04db73 .elementor-element-96e0798 {

    margin-bottom: 26px;

}





/* =========================================================================

   WOMEN'S HEALTH RESEARCH PAGE - SECTION 5 "The Conversation"  (page-id-3510, section #a0ca073: heading text on the left, the

   [women_health_podcasts] list on the right - .wh-podcast-item = .wh-podcast-left (.wh-podcast-image + .wh-podcast-content) +

   .wh-podcast-play-wrap). Redesign with a podcast / night-studio feel: the peach background becomes deep indigo with soft violet

   glows and faint rings; heading text turns light with a lavender italic accent; each episode is a glass card with a rounded

   cover, a light title, softer description and a filled gradient play button that pulses and lifts on hover; the Load More

   button becomes a gradient pill. Episode titles, descriptions, images and links come from WordPress unchanged.

   ========================================================================= */

.page-id-3510 .elementor-element.elementor-element-a0ca073 {

    position: relative;

    isolation: isolate;

    overflow: hidden;

    background-color: #17123f !important;

}

.page-id-3510 .elementor-element-a0ca073::before {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 1;

    z-index: -1;

    background:

        radial-gradient(46% 60% at 8% 0%, rgba(124, 92, 235, 0.42) 0%, rgba(124, 92, 235, 0) 70%),

        radial-gradient(40% 55% at 100% 100%, rgba(90, 70, 200, 0.35) 0%, rgba(90, 70, 200, 0) 70%),

        linear-gradient(160deg, #1c1650 0%, #17123f 55%, #120e33 100%);

    pointer-events: none;

    animation: whConv 12s ease-in-out infinite alternate;

}

@keyframes whConv {

    from { opacity: 0.8; }

    to   { opacity: 1; }

}

.page-id-3510 .elementor-element-a0ca073::after {

    content: "";

    position: absolute;

    inset: auto auto -260px -180px;

    width: 560px;

    height: 560px;

    opacity: 1;

    border-radius: 50%;

    border: 1px solid rgba(255, 255, 255, 0.08);

    box-shadow: 0 0 0 50px rgba(255, 255, 255, 0.025), 0 0 0 104px rgba(255, 255, 255, 0.02);

    pointer-events: none;

    z-index: -1;

}



/* left text: light on dark */

.page-id-3510 .elementor-element-a0ca073 .purple-heading,

.page-id-3510 .elementor-element-a0ca073 .purple-heading .elementor-heading-title {

    color: #cbbdff !important;

}

.page-id-3510 .elementor-element-a0ca073 .purple-heading::after {

    background: rgba(255, 255, 255, 0.18);

}

.page-id-3510 .elementor-element-a0ca073 .purple-heading::before {

    background: #a894f0;

}

.page-id-3510 .elementor-element-a0ca073 h1,

.page-id-3510 .elementor-element-a0ca073 h1.elementor-heading-title,

.page-id-3510 .elementor-element-a0ca073 .section-heading .elementor-heading-title {

    color: #ffffff !important;

}

.page-id-3510 .elementor-element-a0ca073 .colorTxt {

    color: #b7a6ff !important;

}

.page-id-3510 .elementor-element-a0ca073 h2.elementor-heading-title:not(.purple-heading .elementor-heading-title),

.page-id-3510 .elementor-element-a0ca073 .elementor-widget-text-editor,

.page-id-3510 .elementor-element-a0ca073 .elementor-widget-text-editor p {

    color: rgba(255, 255, 255, 0.78) !important;

    font-weight: 500;

    line-height: 1.6;

}



/* episode list */

body.page-id-3510 .wh-podcast-wrapper {

    padding: 0;

    background: transparent;

}

body.page-id-3510 .wh-podcast-list {

    gap: 14px;

}

body.page-id-3510 .wh-podcast-item {

    position: relative;

    padding: 14px 20px 14px 14px;

    gap: 18px;

    border: 1px solid rgba(255, 255, 255, 0.12);

    border-bottom: 1px solid rgba(255, 255, 255, 0.12);

    border-radius: 20px;

    background: linear-gradient(160deg, rgba(255, 255, 255, 0.09) 0%, rgba(255, 255, 255, 0.04) 100%);

    -webkit-backdrop-filter: blur(8px);

    backdrop-filter: blur(8px);

    box-shadow: 0 24px 40px -30px rgba(0, 0, 0, 0.8), inset 0 1px 0 rgba(255, 255, 255, 0.08);

    transition: transform 0.3s ease, border-color 0.3s ease, background 0.3s ease, box-shadow 0.3s ease;

    animation: whEp 0.6s ease both;

}

body.page-id-3510 .wh-podcast-item:nth-child(2) { animation-delay: 0.08s; }

body.page-id-3510 .wh-podcast-item:nth-child(3) { animation-delay: 0.16s; }

body.page-id-3510 .wh-podcast-item:nth-child(4) { animation-delay: 0.24s; }

body.page-id-3510 .wh-podcast-item:nth-child(5) { animation-delay: 0.32s; }

@keyframes whEp {

    from { opacity: 0; transform: translateY(16px); }

    to   { opacity: 1; transform: none; }

}

body.page-id-3510 .wh-podcast-item:last-child {

    border-bottom: 1px solid rgba(255, 255, 255, 0.12);

}

body.page-id-3510 .wh-podcast-item:hover {

    transform: translateY(-4px);

    border-color: rgba(183, 166, 255, 0.5);

    background: linear-gradient(160deg, rgba(255, 255, 255, 0.13) 0%, rgba(255, 255, 255, 0.06) 100%);

    box-shadow: 0 30px 46px -28px rgba(0, 0, 0, 0.9), 0 0 0 1px rgba(139, 120, 230, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.1);

}

body.page-id-3510 .wh-podcast-image {

    width: 168px;

    min-width: 168px;

    border-radius: 14px;

    box-shadow: 0 16px 28px -16px rgba(0, 0, 0, 0.8);

}

body.page-id-3510 .wh-podcast-image img {

    transition: transform 0.5s ease;

}

body.page-id-3510 .wh-podcast-item:hover .wh-podcast-image img {

    transform: scale(1.06);

}

body.page-id-3510 .wh-podcast-title {

    margin: 0 0 8px;

}

body.page-id-3510 .wh-podcast-title a {

    color: #ffffff;

    font-size: 22px;

    line-height: 1.3;

}

body.page-id-3510 .wh-podcast-title a:hover {

    color: #c9baff;

}

body.page-id-3510 .wh-podcast-description {

    color: rgba(255, 255, 255, 0.7);

    font-size: 15px;

    line-height: 1.6;

}



/* play button: filled gradient, pulsing ring */

body.page-id-3510 .wh-podcast-play-wrap {

    min-width: 56px;

}

body.page-id-3510 .wh-podcast-play-btn {

    position: relative;

    width: 50px;

    height: 50px;

    border: 0;

    background: linear-gradient(135deg, #8b78e6 0%, #6152ad 100%);

    box-shadow: 0 12px 24px -10px rgba(124, 92, 235, 0.9);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;

}

body.page-id-3510 .wh-podcast-play-btn::after {

    content: "";

    position: absolute;

    inset: -6px;

    border-radius: 50%;

    border: 1px solid rgba(183, 166, 255, 0.55);

    opacity: 0;

    animation: whPulse 2.6s ease-out infinite;

}

@keyframes whPulse {

    0%   { transform: scale(0.85); opacity: 0.7; }

    100% { transform: scale(1.35); opacity: 0; }

}

body.page-id-3510 .wh-podcast-play-btn:hover {

    background: linear-gradient(135deg, #a894f0 0%, #7a67d8 100%);

    transform: scale(1.08);

    box-shadow: 0 16px 30px -10px rgba(150, 120, 255, 1);

}

body.page-id-3510 .wh-play-icon,

body.page-id-3510 .wh-podcast-play-btn:hover .wh-play-icon {

    border-left-color: #ffffff;

}



/* load more */

body.page-id-3510 .wh-podcast-load-more-wrap {

    margin-top: 26px;

}

body.page-id-3510 .wh-podcast-load-more-btn {

    padding: 13px 30px;

    border: 1px solid rgba(255, 255, 255, 0.28);

    border-radius: 999px;

    background: linear-gradient(135deg, #8b78e6 0%, #6152ad 100%);

    box-shadow: 0 16px 28px -14px rgba(124, 92, 235, 0.9);

    color: #ffffff;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 0.1em;

    text-transform: uppercase;

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

body.page-id-3510 .wh-podcast-load-more-btn:hover {

    opacity: 1;

    transform: translateY(-2px);

    box-shadow: 0 20px 34px -14px rgba(150, 120, 255, 1);

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3510 .elementor-element-a0ca073::before,

    body.page-id-3510 .wh-podcast-item,

    body.page-id-3510 .wh-podcast-play-btn::after {

        animation: none;

    }

}





/* =========================================================================

   WOMEN'S HEALTH RESEARCH - HERO  (page-id-3510, section #818c092 (photo = its background image Rectangle-15.png), copy column

   #4a07878: eyebrow #ee8d901, heading #8994ddc (h1.banner-inner-heading, .colorTxt accent), paragraph .banner-subheading, buttons

   row #6dda215). Same treatment as the Journal Club / Science Reads heroes: soft drifting colour blobs behind the copy, a staggered

   fade-up entrance, a shimmering italic accent on hover, glowing buttons with a light sweep, plus three glass fact chips (custom.js:

   11c of every NIH dollar / 80% of autoimmune patients / 7-10 yrs to diagnose endometriosis - the page's own statistics) and the

   dashed "Scroll down" cue (custom.js, desktop). Text and font sizes of the existing copy are unchanged.

   ========================================================================= */

.page-id-3510 .elementor-element-818c092 {

    position: relative;

    overflow: hidden;

}

.page-id-3510 .elementor-element-818c092::after {

    content: "";

    position: absolute;

    inset: auto;

    top: -20%;

    left: -10%;

    width: 46%;

    height: 140%;

    opacity: 1;

    background:

        radial-gradient(circle at 20% 30%, rgba(152, 128, 244, 0.22) 0%, transparent 55%),

        radial-gradient(circle at 70% 75%, rgba(97, 82, 173, 0.16) 0%, transparent 50%);

    filter: blur(10px);

    pointer-events: none;

    z-index: 1;

    animation: whHeroBlob 12s ease-in-out infinite;

}

@keyframes whHeroBlob {

    0%, 100% { transform: translate(0, 0) scale(1); }

    50%      { transform: translate(3%, -4%) scale(1.06); }

}

.page-id-3510 .elementor-element-818c092 > .e-con-inner {

    position: relative;

    z-index: 2;

}



/* staggered entrance */

.page-id-3510 .elementor-element-ee8d901,

.page-id-3510 .elementor-element-8994ddc,

.page-id-3510 .elementor-element-4a07878 > .banner-subheading,

.page-id-3510 .elementor-element-4a07878 .wh-chips,

.page-id-3510 .elementor-element-6dda215 {

    opacity: 0;

    animation: whHeroUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-3510 .elementor-element-ee8d901 { animation-delay: 0.05s; }

.page-id-3510 .elementor-element-8994ddc { animation-delay: 0.18s; }

.page-id-3510 .elementor-element-4a07878 > .banner-subheading { animation-delay: 0.32s; }

.page-id-3510 .elementor-element-4a07878 .wh-chips { animation-delay: 0.44s; }

.page-id-3510 .elementor-element-6dda215 { animation-delay: 0.56s; }

@keyframes whHeroUp {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: translateY(0); }

}



/* headline accent: shimmer on hover */

.page-id-3510 .elementor-element-8994ddc .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-3510 .elementor-element-8994ddc:hover .colorTxt {

    background-position: 100% 0%;

}

.page-id-3510 .elementor-element-4a07878 > .banner-subheading {

    color: #3a3a52;

}



/* fact chips */

.page-id-3510 .wh-chips {

    display: flex;

    flex-wrap: wrap;

    gap: 10px;

    margin: 0 0 22px;

}

.page-id-3510 .wh-chip {

    display: inline-flex;

    align-items: center;

    gap: 9px;

    padding: 7px 16px 7px 7px;

    border: 1px solid rgba(97, 82, 173, 0.18);

    border-radius: 999px;

    background: rgba(255, 255, 255, 0.72);

    -webkit-backdrop-filter: blur(8px);

    backdrop-filter: blur(8px);

    box-shadow: 0 12px 24px -18px rgba(67, 54, 143, 0.5);

    color: #2a2a3d;

    font-size: 14px;

    font-weight: 500;

    line-height: 1.2;

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3510 .wh-chip:hover {

    transform: translateY(-2px);

    box-shadow: 0 16px 28px -16px rgba(67, 54, 143, 0.6);

}

.page-id-3510 .wh-chip b {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-width: 46px;

    height: 30px;

    padding: 0 11px;

    border-radius: 999px;

    background: #efeafc;

    color: #6152ad;

    font-size: 14px;

    font-weight: 700;

    letter-spacing: -0.01em;

    white-space: nowrap;

}

.page-id-3510 .wh-chip:nth-child(1) b { background: #fdf0ec; color: #d97e66; }

.page-id-3510 .wh-chip:nth-child(2) b { background: #ebf4f0; color: #5f9983; }

.page-id-3510 .wh-chip:nth-child(3) b { background: #fbf3e8; color: #cf9a58; }



/* buttons: glowing lift + light sweep */

.page-id-3510 .elementor-element-6dda215 a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-3510 .elementor-element-6dda215 a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-3510 .elementor-element-6dda215 a::before {

    content: "";

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    opacity: 1;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-3510 .elementor-element-6dda215 a:hover::before {

    left: 130%;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3510 .elementor-element-818c092::after {

        animation: none;

    }

    .page-id-3510 .elementor-element-ee8d901,

    .page-id-3510 .elementor-element-8994ddc,

    .page-id-3510 .elementor-element-4a07878 > .banner-subheading,

    .page-id-3510 .elementor-element-4a07878 .wh-chips,

    .page-id-3510 .elementor-element-6dda215 {

        opacity: 1;

        animation: none;

    }

}



/* hero fact chips as a compact 3-up stat row (number on top, small label below) so they fit the copy column on one line */

.page-id-3510 .wh-chips {

    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 10px;

    margin: 0 0 20px;

}

.page-id-3510 .wh-chip {

    flex-direction: column;

    align-items: flex-start;

    gap: 4px;

    padding: 10px 14px 11px;

    border-radius: 16px;

    font-size: 12.5px;

    line-height: 1.3;

    color: #4a4a62;

}

.page-id-3510 .wh-chip b {

    min-width: 0;

    height: auto;

    padding: 0;

    border-radius: 0;

    background: none !important;

    font-size: 24px;

    line-height: 1.1;

}



/* hero chips, more compact: one line each (number + label), sized to their text */

.page-id-3510 .wh-chips {

    display: flex;

    flex-wrap: nowrap;

    gap: 8px;

    margin: 0 0 16px;

}

.page-id-3510 .wh-chip {

    flex: 0 0 auto;

    gap: 1px;

    padding: 6px 12px 7px;

    border-radius: 14px;

    font-size: 11.5px;

    white-space: nowrap;

}

.page-id-3510 .wh-chip b {

    font-size: 19px;

}





/* =========================================================================

   INSTAGRAM FEED WIDGET IN THE POST SIDEBAR  (Smash Balloon "Instagram Feed" plugin, [instagram-feed feed=1], printed by singular.php

   inside .sidebar-instagram; the plugin's own markup: #sb_instagram > .sb_instagram_header (.sbi_header_img avatar +

   .sbi_feedtheme_header_text h3 + .sbi_bio), #sbi_images > .sbi_item > .sbi_photo_wrap > a.sbi_photo, #sbi_load > .sbi_load_btn +

   .sbi_follow_btn a). The plugin only exists on the live site, so this was written and checked against the live page and lives here

   so it ships with the theme file. Everything is scoped to the sidebar card, and !important is used because the plugin prints its

   own styles. Design: rounded card, header with a gradient-ring avatar and neutral, tidy name / bio text (the bio was the plugin's

   pink link colour), a 3-column grid of rounded thumbnails with a hover lift + zoom, and two pill buttons side by side - a light

   "Load More" and an Instagram-gradient "Follow on Instagram".

   ========================================================================= */

body .sidebar-instagram {

    border-radius: 24px;

    overflow: hidden;

}

body .sidebar-instagram #sb_instagram {

    width: 100% !important;

    padding: 0 0 2px !important;

    background: transparent !important;

}



/* header: avatar + name + bio */

body .sidebar-instagram #sb_instagram .sb_instagram_header {

    padding: 0 0 14px !important;

    margin: 0 0 2px !important;

    border-bottom: 1px solid #f0eef8;

}

body .sidebar-instagram #sb_instagram .sbi_header_link {

    display: block;

    color: inherit !important;

    text-decoration: none !important;

}

body .sidebar-instagram #sb_instagram .sbi_header_text {

    display: flex !important;

    align-items: flex-start !important;

    gap: 14px !important;

    margin: 0 !important;

    padding: 0 !important;

}

body .sidebar-instagram #sb_instagram .sbi_header_img {

    position: relative;

    flex: none;

    width: 64px !important;

    height: 64px !important;

    margin: 0 !important;

    padding: 3px;

    border-radius: 50%;

    background: linear-gradient(45deg, #feda75 0%, #fa7e1e 25%, #d62976 50%, #962fbf 75%, #4f5bd5 100%) !important;

}

body .sidebar-instagram #sb_instagram .sbi_header_img img {

    display: block;

    width: 100% !important;

    height: 100% !important;

    border: 2px solid #ffffff;

    border-radius: 50% !important;

    object-fit: cover;

}

body .sidebar-instagram #sb_instagram .sbi_header_img_hover {

    border-radius: 50%;

}

body .sidebar-instagram #sb_instagram .sbi_feedtheme_header_text {

    flex: 1;

    min-width: 0;

    margin: 0 !important;

    padding: 0 !important;

}

body .sidebar-instagram #sb_instagram .sbi_feedtheme_header_text h3 {

    margin: 2px 0 4px !important;

    color: #262626 !important;

    font-size: 15.5px !important;

    font-weight: 700 !important;

    line-height: 1.25 !important;

    letter-spacing: -0.01em;

}

body .sidebar-instagram #sb_instagram .sbi_bio {

    margin: 0 !important;

    color: #5a5a70 !important;

    font-size: 12.5px !important;

    line-height: 1.55 !important;

    overflow-wrap: anywhere;

}



/* thumbnails */

body .sidebar-instagram #sb_instagram #sbi_images {

    display: grid !important;

    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;

    gap: 8px !important;

    padding: 14px 0 6px !important;

}

body .sidebar-instagram #sb_instagram .sbi_item {

    width: auto !important;

    margin: 0 !important;

    padding: 0 !important;

}

body .sidebar-instagram #sb_instagram .sbi_photo_wrap {

    overflow: hidden;

    border-radius: 14px;

    box-shadow: 0 10px 18px -14px rgba(38, 38, 60, 0.6);

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

body .sidebar-instagram #sb_instagram .sbi_photo {

    overflow: hidden;

    border-radius: 14px !important;

}

body .sidebar-instagram #sb_instagram .sbi_photo img {

    border-radius: 14px;

    object-fit: cover;

    transition: transform 0.5s ease;

}

body .sidebar-instagram #sb_instagram .sbi_item:hover .sbi_photo_wrap {

    transform: translateY(-2px);

    box-shadow: 0 16px 24px -14px rgba(97, 82, 173, 0.7);

}

body .sidebar-instagram #sb_instagram .sbi_item:hover .sbi_photo img {

    transform: scale(1.08);

}



/* buttons: light "Load More" + Instagram-gradient "Follow on Instagram", side by side */

body .sidebar-instagram #sb_instagram #sbi_load {

    display: flex !important;

    align-items: stretch;

    gap: 8px;

    margin-top: 8px;

}

body .sidebar-instagram #sb_instagram .sbi_load_btn {

    flex: 0 0 auto;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    height: 42px;

    margin: 0 !important;

    padding: 0 16px !important;

    border: 1px solid #dbdbdb !important;

    border-radius: 999px !important;

    background: #ffffff !important;

    color: #262626 !important;

    font-size: 12.5px !important;

    font-weight: 600 !important;

    letter-spacing: 0 !important;

    text-transform: none !important;

    transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease, transform 0.25s ease;

}

body .sidebar-instagram #sb_instagram .sbi_load_btn:hover {

    transform: translateY(-2px);

    border-color: #b7a6ff !important;

    background: #f6f3fd !important;

    color: #6152ad !important;

}

body .sidebar-instagram #sb_instagram .sbi_follow_btn {

    display: flex !important;

    flex: 1 1 0;

    float: none !important;

    margin: 0 !important;

}

body .sidebar-instagram #sb_instagram .sbi_follow_btn a {

    flex: 1;

    display: flex !important;

    align-items: center;

    justify-content: center;

    gap: 8px;

    height: 42px;

    margin: 0 !important;

    padding: 0 14px !important;

    border-radius: 999px !important;

    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%) !important;

    box-shadow: 0 12px 22px -12px rgba(220, 39, 67, 0.8);

    color: #ffffff !important;

    font-size: 12.5px !important;

    font-weight: 600 !important;

    white-space: nowrap;

    text-decoration: none !important;

    transition: transform 0.25s ease, box-shadow 0.25s ease;

}

body .sidebar-instagram #sb_instagram .sbi_follow_btn a:hover {

    transform: translateY(-2px);

    box-shadow: 0 16px 26px -12px rgba(220, 39, 67, 0.95);

    opacity: 1;

}

body .sidebar-instagram #sb_instagram .sbi_follow_btn svg {

    width: 15px;

    height: 15px;

    margin: 0 !important;

}

@media (prefers-reduced-motion: reduce) {

    body .sidebar-instagram #sb_instagram .sbi_photo_wrap,

    body .sidebar-instagram #sb_instagram .sbi_photo img,

    body .sidebar-instagram #sb_instagram .sbi_load_btn,

    body .sidebar-instagram #sb_instagram .sbi_follow_btn a {

        transition: none;

    }

}



/* the feed delivers 12 posts (3 columns x 4 rows): custom.js adds .sb-grid9 so only the first 9 show (3 x 3); "Load More" removes the

   class again and the rest (plus what the plugin loads) appear. Without the script the full 12 simply stay visible. */

body .sidebar-instagram #sb_instagram.sb-grid9 .sbi_item:nth-child(n+10) {

    display: none !important;

}





/* =========================================================================

   SCIENCE POLICY 101 PAGE - HERO  (page-id-3514, hero section #3cbe42d (photo = its background image Science-Policy-101-banner-3),

   copy column #241557f: eyebrow #21562b1, heading #ff29129 (h1.banner-inner-heading, .colorTxt accent), paragraph .banner-subheading,

   button row #fc88a2a ("Start Here", href #funding-section)). Same treatment as the Women's Health / Journal Club heroes: soft

   drifting colour blobs behind the copy, a staggered fade-up entrance, a shimmer on the italic accent, a glowing button with a light

   sweep, a row of four glass "jump to" chips (custom.js: the page's own sections - Funding 101, The Agencies, Show Up, Get Involved)

   and the dashed "Scroll down" cue under the button (custom.js, desktop). The existing text and its font sizes are unchanged.

   ========================================================================= */

.page-id-3514 .elementor-element-3cbe42d {

    position: relative;

    overflow: hidden;

}

.page-id-3514 .elementor-element-3cbe42d::after {

    content: "";

    position: absolute;

    inset: auto;

    top: -20%;

    left: -10%;

    width: 46%;

    height: 140%;

    opacity: 1;

    background:

        radial-gradient(circle at 20% 30%, rgba(152, 128, 244, 0.22) 0%, transparent 55%),

        radial-gradient(circle at 70% 75%, rgba(97, 82, 173, 0.16) 0%, transparent 50%);

    filter: blur(10px);

    pointer-events: none;

    z-index: 1;

    animation: spHeroBlob 12s ease-in-out infinite;

}

@keyframes spHeroBlob {

    0%, 100% { transform: translate(0, 0) scale(1); }

    50%      { transform: translate(3%, -4%) scale(1.06); }

}

.page-id-3514 .elementor-element-3cbe42d > .e-con-inner {

    position: relative;

    z-index: 2;

}



/* staggered entrance */

.page-id-3514 .elementor-element-21562b1,

.page-id-3514 .elementor-element-ff29129,

.page-id-3514 .elementor-element-241557f > .banner-subheading,

.page-id-3514 .elementor-element-241557f .sp-chips,

.page-id-3514 .elementor-element-fc88a2a {

    opacity: 0;

    animation: spHeroUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-3514 .elementor-element-21562b1 { animation-delay: 0.05s; }

.page-id-3514 .elementor-element-ff29129 { animation-delay: 0.18s; }

.page-id-3514 .elementor-element-241557f > .banner-subheading { animation-delay: 0.32s; }

.page-id-3514 .elementor-element-241557f .sp-chips { animation-delay: 0.44s; }

.page-id-3514 .elementor-element-fc88a2a { animation-delay: 0.56s; }

@keyframes spHeroUp {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: translateY(0); }

}



/* accent: shimmer on hover */

.page-id-3514 .elementor-element-ff29129 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-3514 .elementor-element-ff29129:hover .colorTxt {

    background-position: 100% 0%;

}



/* jump chips */

.page-id-3514 .sp-chips {

    display: flex;

    flex-wrap: wrap;

    gap: 8px;

    margin: 0 0 18px;

}

.page-id-3514 .sp-chip {

    position: relative;

    display: inline-flex;

    align-items: center;

    gap: 9px;

    padding: 9px 18px 9px 15px;

    overflow: hidden;

    border: 1px solid rgba(255, 255, 255, 0.75);

    border-radius: 999px;

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.52) 0%, rgba(255, 255, 255, 0.22) 100%);

    -webkit-backdrop-filter: blur(14px) saturate(1.2);

    backdrop-filter: blur(14px) saturate(1.2);

    box-shadow: 0 14px 28px -20px rgba(67, 54, 143, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.7);

    color: #2b2470 !important;

    font-size: 13.5px;

    font-weight: 600;

    letter-spacing: 0.01em;

    line-height: 1.2;

    text-decoration: none !important;

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease, color 0.3s ease, border-color 0.3s ease;

}

/* small gradient dot before the label */

.page-id-3514 .sp-chip::before {

    content: "";

    flex: none;

    width: 8px;

    height: 8px;

    opacity: 1;

    border-radius: 50%;

    background: linear-gradient(135deg, #8b78e6, #6152ad);

    box-shadow: 0 0 0 3px rgba(139, 120, 230, 0.2);

    transition: background 0.3s ease, box-shadow 0.3s ease;

}

/* arrow that slides in on hover */

.page-id-3514 .sp-chip::after {

    content: "\2193";

    width: 0;

    height: auto;

    opacity: 0;

    margin-left: -9px;

    overflow: hidden;

    font-size: 13px;

    line-height: 1;

    transform: translateY(-4px);

    transition: width 0.3s ease, opacity 0.3s ease, margin 0.3s ease, transform 0.3s ease;

}

.page-id-3514 .sp-chip:hover {

    transform: translateY(-3px);

    border-color: rgba(255, 255, 255, 0.2);

    background: linear-gradient(135deg, #6f5cc4 0%, #5a49a8 100%);

    box-shadow: 0 18px 30px -14px rgba(97, 82, 173, 0.85);

    color: #ffffff !important;

}

.page-id-3514 .sp-chip:hover::before {

    background: #ffffff;

    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.25);

}

.page-id-3514 .sp-chip:hover::after {

    width: 12px;

    opacity: 1;

    margin-left: 0;

    transform: none;

}



/* button: glowing lift + light sweep */

.page-id-3514 .elementor-element-fc88a2a a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-3514 .elementor-element-fc88a2a a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-3514 .elementor-element-fc88a2a a::before {

    content: "";

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    opacity: 1;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-3514 .elementor-element-fc88a2a a:hover::before {

    left: 130%;

}



/* the "Start Here" button is removed (the chips and the scroll cue take over); the cue now hangs under the copy column */

.page-id-3514 .elementor-element-fc88a2a {

    display: none !important;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3514 .elementor-element-3cbe42d::after {

        animation: none;

    }

    .page-id-3514 .elementor-element-21562b1,

    .page-id-3514 .elementor-element-ff29129,

    .page-id-3514 .elementor-element-241557f > .banner-subheading,

    .page-id-3514 .elementor-element-241557f .sp-chips,

    .page-id-3514 .elementor-element-fc88a2a {

        opacity: 1;

        animation: none;

    }

}





/* =========================================================================

   SCIENCE POLICY 101 PAGE - "FUNDING 101" SECTION  (page-id-3514, section #6475d56: heading block #532480c, row #ecd482e = photo column

   #357dc85 (.where-money-section, photo #c14cc11) + card column #dda4612 with five cards: card #9154acd ... each = outer container

   (transparent) > inner container (the visible card: text widget + round icon container)). Redesign: the photo column is STICKY (it stays

   in view while the cards scroll past), the cards are roomier white cards on a numbered timeline (custom.js adds 01-05 badges, a

   progress line that fills as you scroll, the card nearest the middle of the screen is highlighted, and a "Step 01 of 05" chip on the

   photo), the old quote-mark icon is replaced by the number badge, the right icon sits in a soft tinted circle, the section gets a

   light lavender wash and the photo a soft glow. Text and its font sizes are unchanged. Responsive: tablet / phone = photo on top (not

   sticky), cards stacked.

   ========================================================================= */

.page-id-3514 .elementor-element-6475d56 {

    position: relative;

    isolation: isolate;

}

.page-id-3514 .elementor-element-6475d56::before {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 1;

    z-index: -1;

    background:

        radial-gradient(36% 22% at 0% 18%, rgba(133, 112, 214, 0.13) 0%, rgba(133, 112, 214, 0) 70%),

        radial-gradient(34% 24% at 100% 80%, rgba(255, 193, 7, 0.08) 0%, rgba(255, 193, 7, 0) 70%),

        linear-gradient(180deg, #ffffff 0%, #f8f5fe 45%, #ffffff 100%);

    pointer-events: none;

}



/* row: top-aligned so the left column can stick */

.page-id-3514 .elementor-element.elementor-element-ecd482e {

    align-items: flex-start !important;

    gap: 40px;

}



/* left column: sticky photo */

.page-id-3514 .elementor-element.elementor-element-357dc85 {

    position: sticky;

    top: 92px;

    align-self: flex-start;

    justify-content: center;

}

.page-id-3514 .elementor-element-357dc85::before {

    content: "";

    position: absolute;

    inset: auto -4% 2% -4%;

    width: auto;

    height: 70%;

    opacity: 1;

    z-index: 0;

    border-radius: 50% 50% 0 0 / 60% 60% 0 0;

    background: radial-gradient(70% 90% at 50% 100%, rgba(154, 132, 224, 0.3) 0%, rgba(154, 132, 224, 0) 70%);

    pointer-events: none;

}

.page-id-3514 .elementor-element-c14cc11 {

    position: relative;

    z-index: 1;

}

.page-id-3514 .elementor-element-c14cc11 img {

    display: block;

    width: auto;

    max-width: 100%;

    max-height: calc(100vh - 150px);

    margin: 0 auto;

    object-fit: contain;

    object-position: center bottom;

}

.page-id-3514 .sp-step {

    position: absolute;

    left: 50%;

    bottom: 22px;

    z-index: 3;

    display: inline-flex;

    align-items: center;

    gap: 9px;

    box-sizing: border-box;

    max-width: calc(100% - 28px);

    padding: 10px 18px 10px 14px;

    border: 1px solid rgba(255, 255, 255, 0.55);

    border-radius: 999px;

    background: rgba(34, 24, 92, 0.72);

    -webkit-backdrop-filter: blur(8px);

    backdrop-filter: blur(8px);

    box-shadow: 0 16px 28px -16px rgba(20, 10, 70, 0.8);

    color: #ffffff;

    font-size: 13px;

    font-weight: 600;

    letter-spacing: 0.01em;

    line-height: 1.2;

    white-space: nowrap;

    transform: translateX(-50%);

}

/* live dot + the title of the card that is currently being read (custom.js updates .sp-step-title) */

.page-id-3514 .sp-step i {

    position: relative;

    flex: none;

    width: 8px;

    height: 8px;

    border-radius: 50%;

    background: #ffd76a;

    box-shadow: 0 0 0 3px rgba(255, 215, 106, 0.25);

}

.page-id-3514 .sp-step-title {

    display: block;

    overflow: hidden;

    text-overflow: ellipsis;

    white-space: nowrap;

}



/* right column: timeline + cards */

.page-id-3514 .elementor-element.elementor-element-dda4612 {

    position: relative;

    gap: 22px;

    padding-top: 4px;

    padding-bottom: 20px;

}

.page-id-3514 .elementor-element-dda4612 > .e-con {

    position: relative;

    z-index: 1;

    padding: 0 !important;

}

.page-id-3514 .elementor-element-dda4612 > .e-con > .e-con {

    position: relative;

    align-items: center;

    gap: 22px;

    min-height: 168px;

    padding: 26px 30px 26px 72px !important;

    border: 1px solid #ece8f8 !important;

    border-radius: 22px !important;

    background: #ffffff !important;

    box-shadow: 0 20px 38px -30px rgba(67, 54, 143, 0.55), 0 2px 8px rgba(34, 57, 115, 0.04) !important;

    transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease, opacity 0.4s ease;

}

.page-id-3514 .elementor-element-dda4612 > .e-con.is-active > .e-con {

    border-color: #b7a6ff !important;

    box-shadow: 0 30px 50px -28px rgba(97, 82, 173, 0.65), 0 0 0 4px rgba(97, 82, 173, 0.08) !important;

}

.page-id-3514 .elementor-element-dda4612 .elementor-image-box-img {

    display: none;

}

.page-id-3514 .elementor-element-dda4612 .elementor-widget-image-box {

    flex: 1 1 auto;

    min-width: 0;

    width: auto;

}

.page-id-3514 .elementor-element-dda4612 .elementor-image-box-title {

    margin-bottom: 8px;

    color: #223973;

    font-weight: 700;

}

.page-id-3514 .elementor-element-dda4612 .elementor-image-box-description {

    color: #4a4a62;

    line-height: 1.6;

}



/* round icon: the same soft tinted circle as before, moved to the LEFT onto the timeline line, sticking out of the card a little (it

   is the node of the line); it ticks up (darker, tilted) on the active card */

.page-id-3514 .elementor-element-dda4612 > .e-con > .e-con > .e-con {

    position: absolute;

    top: 50%;

    left: -24px;

    z-index: 2;

    align-items: center;

    justify-content: center;

    width: 68px;

    height: 68px;

    min-height: 0;

    margin-top: -34px;

    padding: 0 !important;

    border: 3px solid #ffffff;

    border-radius: 50%;

    background: linear-gradient(135deg, #f1ecfc 0%, #e0d6f9 100%);

    box-shadow: 0 14px 24px -14px rgba(67, 54, 143, 0.6), inset 0 0 0 1px rgba(97, 82, 173, 0.12);

    transition: transform 0.4s ease, background 0.4s ease, box-shadow 0.4s ease;

}

.page-id-3514 .elementor-element-dda4612 > .e-con > .e-con > .e-con img {

    width: 38px;

    height: 38px;

    object-fit: contain;

}

.page-id-3514 .elementor-element-dda4612 > .e-con.is-reached > .e-con > .e-con {

    background: linear-gradient(135deg, #e9e1fb 0%, #d3c6f5 100%);

}

.page-id-3514 .elementor-element-dda4612 > .e-con.is-active > .e-con > .e-con {

    transform: rotate(-6deg) scale(1.1);

    background: linear-gradient(135deg, #cdbff4 0%, #a894f0 100%);

    box-shadow: 0 18px 28px -12px rgba(97, 82, 173, 0.8), inset 0 0 0 1px rgba(97, 82, 173, 0.2);

}

.page-id-3514 .elementor-element-dda4612 .elementor-widget-image-box {

    position: relative;

    z-index: 1;

}



/* timeline line through the icons (--sp-top / --sp-bottom / --sp-fill are set by custom.js from the card positions) */

.page-id-3514 .elementor-element-dda4612::before {

    content: "";

    position: absolute;

    inset: var(--sp-top, 80px) auto auto var(--sp-x, 26px);

    width: 2px;

    height: calc(var(--sp-bottom, 900px) - var(--sp-top, 80px));

    opacity: 1;

    border-radius: 2px;

    background: #e4def5;

    pointer-events: none;

    z-index: 0;

}

.page-id-3514 .elementor-element-dda4612::after {

    content: "";

    position: absolute;

    inset: var(--sp-top, 80px) auto auto var(--sp-x, 26px);

    width: 2px;

    height: var(--sp-fill, 0px);

    opacity: 1;

    border-radius: 2px;

    background: linear-gradient(180deg, #6152ad, #b7a6ff);

    pointer-events: none;

    z-index: 0;

}



/* photo: rounded bottom corners */

.page-id-3514 .elementor-element-c14cc11 img {

    border-radius: 0 0 28px 28px;

}



/* scroll reveal (only when the script is running) */

.page-id-3514 .sp-js .sp-card:not(.is-in) {

    opacity: 0;

    transform: translateY(26px);

}

.page-id-3514 .sp-js .sp-card {

    transition: opacity 0.6s ease, transform 0.6s ease;

}



/* tablet / phone: photo on top, not sticky; cards stacked */





@media (prefers-reduced-motion: reduce) {

    .page-id-3514 .sp-js .sp-card:not(.is-in) {

        opacity: 1;

        transform: none;

    }

    .page-id-3514 .elementor-element-dda4612 > .e-con > .e-con,

    .page-id-3514 .elementor-element-dda4612 > .e-con > .e-con > .e-con,

    .page-id-3514 .sp-js .sp-card {

        transition: none;

    }

}





/* =========================================================================

   SCIENCE POLICY 101 PAGE - "THE AGENCIES" SECTION  (page-id-3514, dark section #8b0ec7f -> grid #7f414e3: heading cell #eb0e131 + five

   cards (#cf7715b, #8c736de, #46d8aa1, #7a84cf4, #ab3c719); each card = image box (logo, title, text) + "Learn More" button).

   Redesign + one fold: the cards were 372px tall (logo on top, title, text, link, lots of air). Now each card is a compact glass panel:

   the logo sits in a round white-ringed badge NEXT to the title, then the text, then a pill "Learn More" link at the bottom; violet

   hairline border, a light line + glow and a lift on hover, soft violet glows and faint rings in the section, a staggered entrance.

   Spacing is cut so the section is about one window tall; custom.js scales it down slightly (never below 0.7) on windows that are

   still too short. Text, logos, links and font sizes are unchanged. Responsive: 3 columns -> 2 -> 1.

   ========================================================================= */

.page-id-3514 .elementor-element-8b0ec7f {

    position: relative;

    isolation: isolate;

    overflow: hidden;

}

.page-id-3514 .elementor-element-8b0ec7f::before {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 1;

    z-index: -1;

    background:

        radial-gradient(44% 40% at 8% 0%, rgba(124, 92, 235, 0.30) 0%, rgba(124, 92, 235, 0) 70%),

        radial-gradient(38% 36% at 100% 100%, rgba(90, 70, 200, 0.26) 0%, rgba(90, 70, 200, 0) 70%);

    pointer-events: none;

    animation: spAgGlow 12s ease-in-out infinite alternate;

}

@keyframes spAgGlow {

    from { opacity: 0.75; }

    to   { opacity: 1; }

}

.page-id-3514 .elementor-element-8b0ec7f::after {

    content: "";

    position: absolute;

    inset: auto -160px -240px auto;

    width: 520px;

    height: 520px;

    opacity: 1;

    border-radius: 50%;

    border: 1px solid rgba(255, 255, 255, 0.07);

    box-shadow: 0 0 0 46px rgba(255, 255, 255, 0.022), 0 0 0 96px rgba(255, 255, 255, 0.016);

    pointer-events: none;

    z-index: -1;

}



/* grid: tighter */

.page-id-3514 .elementor-element-7f414e3 {

    gap: 16px !important;

    --e-con-grid-template-rows: repeat(2, auto);

    grid-template-rows: repeat(2, auto);

}

.page-id-3514 .elementor-element-eb0e131 {

    gap: 8px;

    justify-content: center;

}

.page-id-3514 .elementor-element-eb0e131 .elementor-widget {

    margin-bottom: 0 !important;

}

.page-id-3514 .elementor-element-eb0e131 .elementor-element-92bf750 {

    margin-bottom: 12px !important;   /* room for the label's underline */

}



/* cards */

.page-id-3514 .elementor-element-7f414e3 > .e-con:not(.elementor-element-eb0e131) {

    position: relative;

    overflow: hidden;

    justify-content: space-between;

    gap: 10px;

    padding: 18px 20px 16px !important;

    border: 1px solid rgba(139, 120, 230, 0.22) !important;

    border-radius: 18px !important;

    background: linear-gradient(160deg, rgba(23, 29, 46, 0.92) 0%, rgba(12, 18, 26, 0.96) 100%) !important;

    box-shadow: 0 24px 44px -30px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.05);

    transition: transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;

    animation: spAgIn 0.7s ease both;

}

.page-id-3514 .elementor-element-7f414e3 > .e-con:nth-child(3) { animation-delay: 0.08s; }

.page-id-3514 .elementor-element-7f414e3 > .e-con:nth-child(4) { animation-delay: 0.16s; }

.page-id-3514 .elementor-element-7f414e3 > .e-con:nth-child(5) { animation-delay: 0.24s; }

.page-id-3514 .elementor-element-7f414e3 > .e-con:nth-child(6) { animation-delay: 0.32s; }

@keyframes spAgIn {

    from { opacity: 0; transform: translateY(20px); }

    to   { opacity: 1; transform: none; }

}

.page-id-3514 .elementor-element-7f414e3 > .e-con:not(.elementor-element-eb0e131)::before {

    content: "";

    position: absolute;

    inset: 0 0 auto 0;

    width: auto;

    height: 2px;

    opacity: 0;

    background: linear-gradient(90deg, rgba(139, 120, 230, 0) 0%, #b7a6ff 50%, rgba(139, 120, 230, 0) 100%);

    transition: opacity 0.35s ease;

    pointer-events: none;

    z-index: 2;

}

.page-id-3514 .elementor-element-7f414e3 > .e-con:not(.elementor-element-eb0e131)::after {

    content: "";

    position: absolute;

    inset: -60px -60px auto auto;

    width: 190px;

    height: 190px;

    opacity: 0;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(139, 120, 230, 0.32) 0%, rgba(139, 120, 230, 0) 68%);

    transition: opacity 0.4s ease;

    pointer-events: none;

}

.page-id-3514 .elementor-element-7f414e3 > .e-con:not(.elementor-element-eb0e131):hover {

    transform: translateY(-5px);

    border-color: rgba(183, 166, 255, 0.55) !important;

    box-shadow: 0 34px 56px -30px rgba(0, 0, 0, 0.95), 0 0 0 1px rgba(139, 120, 230, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.08);

}

.page-id-3514 .elementor-element-7f414e3 > .e-con:not(.elementor-element-eb0e131):hover::before,

.page-id-3514 .elementor-element-7f414e3 > .e-con:not(.elementor-element-eb0e131):hover::after {

    opacity: 1;

}



/* logo next to the title, text below spanning the card */

.page-id-3514 .elementor-element-7f414e3 .elementor-image-box-wrapper {

    display: grid;

    grid-template-columns: 52px minmax(0, 1fr);

    grid-template-rows: auto auto;

    column-gap: 14px;

    row-gap: 10px;

    align-items: center;

    text-align: left;

}

.page-id-3514 .elementor-element-7f414e3 .elementor-image-box-content {

    display: contents;

}

.page-id-3514 .elementor-element-7f414e3 .elementor-image-box-img {

    grid-column: 1;

    grid-row: 1;

    width: 52px !important;

    height: 52px;

    margin: 0 !important;

    overflow: hidden;

    border-radius: 50%;

    background: #ffffff;

    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.16), 0 10px 18px -10px rgba(0, 0, 0, 0.8);

    transition: transform 0.4s ease;

}

.page-id-3514 .elementor-element-7f414e3 .elementor-image-box-img img {

    display: block;

    width: 100% !important;

    height: 100% !important;

    object-fit: cover;

}

.page-id-3514 .elementor-element-7f414e3 > .e-con:hover .elementor-image-box-img {

    transform: scale(1.08) rotate(-4deg);

}

.page-id-3514 .elementor-element-7f414e3 .elementor-image-box-title {

    grid-column: 2;

    grid-row: 1;

    margin: 0 !important;

    color: #ffffff;

    line-height: 1.3;

}

.page-id-3514 .elementor-element-7f414e3 .elementor-image-box-description {

    grid-column: 1 / -1;

    grid-row: 2;

    margin: 0 !important;

    color: rgba(255, 255, 255, 0.76);

    line-height: 1.55;

}



/* "Learn More": pill link */

.page-id-3514 .elementor-element-7f414e3 .alan-button {

    margin: 0 !important;

}

.page-id-3514 .elementor-element-7f414e3 .alan-button a {

    position: relative;

    display: inline-flex;

    align-items: center;

    gap: 12px;

    padding: 5px 5px 5px 18px;

    overflow: hidden;

    border: 1px solid rgba(168, 148, 240, 0.45);

    border-radius: 999px;

    background: linear-gradient(135deg, rgba(139, 120, 230, 0.16) 0%, rgba(97, 82, 173, 0.08) 100%);

    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);

    color: #d8ccff !important;

    font-weight: 600;

    letter-spacing: 0.01em;

    text-decoration: none;

    transition: background 0.35s ease, color 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease, padding 0.35s ease;

}

/* the old link icon is replaced by a round arrow chip on the right */

.page-id-3514 .elementor-element-7f414e3 .alan-button .elementor-button-icon {

    display: none;

}

/* smaller CTA text */

.page-id-3514 .elementor-element-7f414e3 .alan-button a,

.page-id-3514 .elementor-element-7f414e3 .alan-button .elementor-button-text {

    font-size: 14px !important;

    line-height: 1.2;

}

.page-id-3514 .elementor-element-7f414e3 .alan-button a::after {

    content: "\2197";

    flex: none;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    width: 28px;

    height: 28px;

    border-radius: 50%;

    background: linear-gradient(135deg, #8b78e6 0%, #6152ad 100%);

    box-shadow: 0 6px 12px -6px rgba(97, 82, 173, 0.9);

    color: #ffffff;

    font-size: 15px;

    line-height: 1;

    transition: transform 0.35s ease, background 0.35s ease, color 0.35s ease;

}

.page-id-3514 .elementor-element-7f414e3 .alan-button a:hover {

    border-color: transparent;

    background: linear-gradient(135deg, #8b78e6 0%, #6152ad 100%);

    box-shadow: 0 14px 26px -12px rgba(139, 120, 230, 0.9);

    color: #ffffff !important;

}

.page-id-3514 .elementor-element-7f414e3 .alan-button a:hover::after {

    background: #ffffff;

    color: #6152ad;

    transform: rotate(45deg) scale(1.05);

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3514 .elementor-element-8b0ec7f::before,

    .page-id-3514 .elementor-element-7f414e3 > .e-con:not(.elementor-element-eb0e131) {

        animation: none;

    }

}





/* =========================================================================

   SCIENCE POLICY 101 PAGE - "SHOW UP" SECTION  (page-id-3514, section #80cae69: heading block #baf3288, row #cb7f039 = list column

   #b2427ac (.more-influence-bx: intro line + five items #d057932 #8faa2bb #901373f #886ac7f #2472b5a, each icon + text) + collage

   column #1b9ec71 (photo collage #308fa48)). Redesign: a light lavender wash behind the section; the intro line becomes a lead

   callout; the five items become clean white cards (rounded, hairline border, soft shadow) that nudge right and light up on hover, with

   a staggered entrance; the collage gets a rounded frame, an offset gradient plate behind it, a deeper shadow and a gentle float, and

   stays in view (sticky) beside the list on desktop. Text, icons and font sizes are unchanged. Responsive: tablet / phone = collage

   under the heading, list full width.

   ========================================================================= */

.page-id-3514 .elementor-element-80cae69 {

    position: relative;

    isolation: isolate;

}

.page-id-3514 .elementor-element-80cae69::before {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 1;

    z-index: -1;

    background:

        radial-gradient(34% 24% at 100% 12%, rgba(133, 112, 214, 0.14) 0%, rgba(133, 112, 214, 0) 70%),

        radial-gradient(32% 26% at 0% 88%, rgba(255, 193, 7, 0.08) 0%, rgba(255, 193, 7, 0) 70%),

        linear-gradient(180deg, #ffffff 0%, #f8f5fe 50%, #ffffff 100%);

    pointer-events: none;

}

.page-id-3514 .elementor-element.elementor-element-cb7f039 {

    align-items: flex-start !important;

    gap: 44px;

}



/* intro line = lead callout */

.page-id-3514 .elementor-element-b2427ac > p {

    width: fit-content;

    max-width: 100%;

    margin: 0 0 18px;

    padding: 11px 20px 11px 18px;

    border-left: 4px solid #6152ad;

    border-radius: 0 14px 14px 0;

    background: linear-gradient(90deg, #f1ecfc 0%, #faf8ff 100%);

    color: #2a2a3d;

    font-weight: 500;

}



/* five items as cards */

.page-id-3514 .elementor-element-b2427ac > .e-con {

    position: relative;

    margin-bottom: 14px !important;

    padding: 6px 22px 6px 12px !important;

    border: 1px solid #ece8f8 !important;

    border-radius: 18px !important;

    background: #ffffff !important;

    box-shadow: 0 18px 34px -28px rgba(67, 54, 143, 0.5), 0 2px 8px rgba(34, 57, 115, 0.04) !important;

    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;

    animation: spShowIn 0.7s ease both;

}

.page-id-3514 .elementor-element-b2427ac > .e-con:nth-of-type(2) { animation-delay: 0.07s; }

.page-id-3514 .elementor-element-b2427ac > .e-con:nth-of-type(3) { animation-delay: 0.14s; }

.page-id-3514 .elementor-element-b2427ac > .e-con:nth-of-type(4) { animation-delay: 0.21s; }

.page-id-3514 .elementor-element-b2427ac > .e-con:nth-of-type(5) { animation-delay: 0.28s; }

@keyframes spShowIn {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: none; }

}

.page-id-3514 .elementor-element-b2427ac > .e-con::before {

    content: "";

    position: absolute;

    inset: 14px auto 14px 0;

    width: 4px;

    height: auto;

    opacity: 0;

    border-radius: 0 4px 4px 0;

    background: linear-gradient(180deg, #6152ad, #b7a6ff);

    transform: scaleY(0.4);

    transition: opacity 0.35s ease, transform 0.35s ease;

    pointer-events: none;

}

.page-id-3514 .elementor-element-b2427ac > .e-con:hover {

    transform: translateX(8px);

    border-color: #cfc2f3 !important;

    box-shadow: 0 26px 44px -28px rgba(67, 54, 143, 0.65), 0 2px 8px rgba(34, 57, 115, 0.05) !important;

}

.page-id-3514 .elementor-element-b2427ac > .e-con:hover::before {

    opacity: 1;

    transform: scaleY(1);

}

.page-id-3514 .elementor-element-b2427ac .elementor-image-box-img img {

    transition: transform 0.4s ease;

}

.page-id-3514 .elementor-element-b2427ac > .e-con:hover .elementor-image-box-img img {

    transform: scale(1.08) rotate(-4deg);

}

.page-id-3514 .elementor-element-b2427ac .elementor-image-box-description {

    color: #363650;

    line-height: 1.6;

}



/* collage: framed, plate behind, float, sticky */

.page-id-3514 .elementor-element.elementor-element-1b9ec71 {

    position: sticky;

    top: 100px;

    align-self: flex-start;

    justify-content: flex-start;

    z-index: 0;

}

.page-id-3514 .elementor-element-308fa48 {

    position: relative;

    z-index: 1;

}

.page-id-3514 .elementor-element-1b9ec71::before {

    content: "";

    position: absolute;

    inset: 36px -4px -4px 34px;

    width: auto;

    height: auto;

    opacity: 0.9;

    z-index: 0;

    border-radius: 28px;

    background: linear-gradient(135deg, rgba(168, 148, 240, 0.55), rgba(255, 215, 106, 0.5));

    pointer-events: none;

}

.page-id-3514 .elementor-element-308fa48 img {

    display: block;

    width: 100%;

    height: auto;

    border-radius: 24px;

    box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.95), 0 36px 56px -26px rgba(67, 54, 143, 0.7);

    animation: spShowFloat 8s ease-in-out infinite;

}

@keyframes spShowFloat {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-8px); }

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3514 .elementor-element-b2427ac > .e-con,

    .page-id-3514 .elementor-element-308fa48 img {

        animation: none;

    }

}





/* =========================================================================

   SCIENCE POLICY 101 PAGE - "GET INVOLVED" SECTION  (page-id-3514, section #f104cad: heading block #6826957, grid #42dc77f with six cards

   #a06fdb7 #8e969ac #13469d1 #5c7ce22 #65e25d6 ...; each card = image box (title + text) + outlined purple button (.purple-button)).

   Redesign: soft lavender wash with glows; the cards get a round topic icon in the top-right corner (custom.js, line icons: pin, people,

   pen, landmark, graduation cap, search), a gradient top bar and a lift on hover, a staggered entrance; the outlined buttons become

   tidy pills that fill with the brand gradient on hover while the arrow slides. Text, links and font sizes are unchanged. Responsive:

   3 columns -> 2 -> 1.

   ========================================================================= */

.page-id-3514 .elementor-element-f104cad {

    position: relative;

    isolation: isolate;

}

.page-id-3514 .elementor-element-f104cad::before {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 1;

    z-index: -1;

    background:

        radial-gradient(40% 30% at 0% 0%, rgba(124, 92, 235, 0.16) 0%, rgba(124, 92, 235, 0) 70%),

        radial-gradient(38% 30% at 100% 100%, rgba(255, 193, 7, 0.10) 0%, rgba(255, 193, 7, 0) 70%);

    pointer-events: none;

}

.page-id-3514 .elementor-element-42dc77f {

    gap: 20px !important;

}



/* cards */

.page-id-3514 .elementor-element-42dc77f > .e-con {

    position: relative;

    overflow: hidden;

    justify-content: space-between;

    border: 1px solid rgba(97, 82, 173, 0.12) !important;

    border-radius: 22px !important;

    background: #ffffff !important;

    box-shadow: 0 24px 44px -32px rgba(67, 54, 143, 0.55), 0 2px 8px rgba(34, 57, 115, 0.04) !important;

    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;

    animation: spGoIn 0.7s ease both;

}

.page-id-3514 .elementor-element-42dc77f > .e-con:nth-child(2) { animation-delay: 0.07s; }

.page-id-3514 .elementor-element-42dc77f > .e-con:nth-child(3) { animation-delay: 0.14s; }

.page-id-3514 .elementor-element-42dc77f > .e-con:nth-child(4) { animation-delay: 0.21s; }

.page-id-3514 .elementor-element-42dc77f > .e-con:nth-child(5) { animation-delay: 0.28s; }

.page-id-3514 .elementor-element-42dc77f > .e-con:nth-child(6) { animation-delay: 0.35s; }

@keyframes spGoIn {

    from { opacity: 0; transform: translateY(20px); }

    to   { opacity: 1; transform: none; }

}

.page-id-3514 .elementor-element-42dc77f > .e-con::before {

    content: "";

    position: absolute;

    inset: 0 0 auto 0;

    width: auto;

    height: 4px;

    opacity: 1;

    background: linear-gradient(90deg, #6152ad, #b7a6ff);

    transform: scaleX(0.16);

    transform-origin: 0 50%;

    transition: transform 0.5s ease;

    pointer-events: none;

    z-index: 2;

}

.page-id-3514 .elementor-element-42dc77f > .e-con:hover {

    transform: translateY(-6px);

    border-color: rgba(97, 82, 173, 0.3) !important;

    box-shadow: 0 34px 54px -30px rgba(67, 54, 143, 0.7), 0 2px 8px rgba(34, 57, 115, 0.05) !important;

}

.page-id-3514 .elementor-element-42dc77f > .e-con:hover::before {

    transform: scaleX(1);

}

.page-id-3514 .elementor-element-42dc77f .elementor-image-box-title {

    padding-right: 58px;

    color: #223973;

    font-weight: 700;

}

.page-id-3514 .elementor-element-42dc77f .elementor-image-box-description {

    color: #4a4a62;

    line-height: 1.6;

}



/* topic icon, top-right (custom.js) */

.page-id-3514 .go-ico {

    position: absolute;

    top: 18px;

    right: 18px;

    z-index: 1;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 46px;

    height: 46px;

    border-radius: 50%;

    background: linear-gradient(135deg, #f1ecfc 0%, #e0d6f9 100%);

    box-shadow: inset 0 0 0 1px rgba(97, 82, 173, 0.12);

    color: #6152ad;

    transition: transform 0.4s ease, background 0.4s ease, color 0.4s ease;

}

.page-id-3514 .go-ico svg {

    width: 24px;

    height: 24px;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.7;

    stroke-linecap: round;

    stroke-linejoin: round;

}

.page-id-3514 .elementor-element-42dc77f > .e-con:hover .go-ico {

    transform: rotate(-8deg) scale(1.1);

    background: linear-gradient(135deg, #6152ad, #8b78e6);

    color: #ffffff;

}



/* buttons: tidy pills, fill on hover, arrow slides */

.page-id-3514 .elementor-element-42dc77f .purple-button a {

    position: relative;

    overflow: hidden;

    border-width: 1.5px;

    border-radius: 14px;

    transition: background 0.35s ease, color 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;

}

.page-id-3514 .elementor-element-42dc77f .purple-button a:hover {

    border-color: transparent;

    background: linear-gradient(135deg, #6152ad 0%, #8b78e6 100%);

    box-shadow: 0 16px 26px -14px rgba(97, 82, 173, 0.8);

    color: #ffffff;

}

.page-id-3514 .elementor-element-42dc77f .purple-button a:hover .elementor-button-text,

.page-id-3514 .elementor-element-42dc77f .purple-button a:hover .elementor-button-icon {

    color: #ffffff;

}

.page-id-3514 .elementor-element-42dc77f .purple-button .elementor-button-icon {

    transition: transform 0.35s ease;

}

.page-id-3514 .elementor-element-42dc77f .purple-button a:hover .elementor-button-icon {

    transform: translateX(6px);

}

.page-id-3514 .elementor-element-42dc77f .purple-button a:hover svg,

.page-id-3514 .elementor-element-42dc77f .purple-button a:hover i {

    color: #ffffff;

    fill: #ffffff;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3514 .elementor-element-42dc77f > .e-con {

        animation: none;

    }

}





/* =========================================================================

   CLASSROOM SCIENCE PAGE - HERO  (page-id-3516, hero section #8ed6798 (photo = its background image Rectangle-15-1.jpg), copy column

   #f17cde1: eyebrow #7127f4c, heading #b6331bf (h1.banner-inner-heading, .colorTxt accent), paragraph .banner-subheading, button row

   #748c7f3 ("Start Here")). Same treatment as the Science Policy / Women's Health heroes: soft drifting colour blobs behind the copy,

   a staggered fade-up entrance, a shimmer on the italic accent, a row of glass "jump to" chips (custom.js: the page's own sections)

   and the dashed "Scroll down" cue (custom.js, desktop). The "Start Here" button is removed. Existing text and font sizes unchanged.

   ========================================================================= */

.page-id-3516 .elementor-element-748c7f3 {

    display: none !important;

}

.page-id-3516 .elementor-element-8ed6798 {

    position: relative;

    overflow: hidden;

}

.page-id-3516 .elementor-element-8ed6798::after {

    content: "";

    position: absolute;

    inset: auto;

    top: -20%;

    left: -10%;

    width: 46%;

    height: 140%;

    opacity: 1;

    background:

        radial-gradient(circle at 20% 30%, rgba(152, 128, 244, 0.22) 0%, transparent 55%),

        radial-gradient(circle at 70% 75%, rgba(97, 82, 173, 0.16) 0%, transparent 50%);

    filter: blur(10px);

    pointer-events: none;

    z-index: 1;

    animation: csHeroBlob 12s ease-in-out infinite;

}

@keyframes csHeroBlob {

    0%, 100% { transform: translate(0, 0) scale(1); }

    50%      { transform: translate(3%, -4%) scale(1.06); }

}

.page-id-3516 .elementor-element-8ed6798 > .e-con-inner {

    position: relative;

    z-index: 2;

}



/* staggered entrance */

.page-id-3516 .elementor-element-7127f4c,

.page-id-3516 .elementor-element-b6331bf,

.page-id-3516 .elementor-element-f17cde1 > .banner-subheading,

.page-id-3516 .elementor-element-f17cde1 .cs-chips {

    opacity: 0;

    animation: csHeroUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-3516 .elementor-element-7127f4c { animation-delay: 0.05s; }

.page-id-3516 .elementor-element-b6331bf { animation-delay: 0.18s; }

.page-id-3516 .elementor-element-f17cde1 > .banner-subheading { animation-delay: 0.32s; }

.page-id-3516 .elementor-element-f17cde1 .cs-chips { animation-delay: 0.46s; }

@keyframes csHeroUp {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: translateY(0); }

}



/* accent: shimmer on hover */

.page-id-3516 .elementor-element-b6331bf .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-3516 .elementor-element-b6331bf:hover .colorTxt {

    background-position: 100% 0%;

}



/* jump chips: transparent glass capsules */

.page-id-3516 .cs-chips {

    display: flex;

    flex-wrap: wrap;

    gap: 8px;

    margin: 4px 0 0;

}

.page-id-3516 .cs-chip {

    position: relative;

    display: inline-flex;

    align-items: center;

    gap: 9px;

    padding: 9px 18px 9px 15px;

    overflow: hidden;

    border: 1px solid rgba(255, 255, 255, 0.75);

    border-radius: 999px;

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.52) 0%, rgba(255, 255, 255, 0.22) 100%);

    -webkit-backdrop-filter: blur(14px) saturate(1.2);

    backdrop-filter: blur(14px) saturate(1.2);

    box-shadow: 0 14px 28px -20px rgba(67, 54, 143, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.7);

    color: #2b2470 !important;

    font-size: 13.5px;

    font-weight: 600;

    letter-spacing: 0.01em;

    line-height: 1.2;

    text-decoration: none !important;

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease, color 0.3s ease, border-color 0.3s ease;

}

.page-id-3516 .cs-chip::before {

    content: "";

    flex: none;

    width: 8px;

    height: 8px;

    opacity: 1;

    border-radius: 50%;

    background: linear-gradient(135deg, #8b78e6, #6152ad);

    box-shadow: 0 0 0 3px rgba(139, 120, 230, 0.2);

    transition: background 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3516 .cs-chip::after {

    content: "\2193";

    width: 0;

    height: auto;

    opacity: 0;

    margin-left: -9px;

    overflow: hidden;

    font-size: 13px;

    line-height: 1;

    transform: translateY(-4px);

    transition: width 0.3s ease, opacity 0.3s ease, margin 0.3s ease, transform 0.3s ease;

}

.page-id-3516 .cs-chip:hover {

    transform: translateY(-3px);

    border-color: rgba(255, 255, 255, 0.2);

    background: linear-gradient(135deg, #6f5cc4 0%, #5a49a8 100%);

    box-shadow: 0 18px 30px -14px rgba(97, 82, 173, 0.85);

    color: #ffffff !important;

}

.page-id-3516 .cs-chip:hover::before {

    background: #ffffff;

    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.25);

}

.page-id-3516 .cs-chip:hover::after {

    width: 12px;

    opacity: 1;

    margin-left: 0;

    transform: none;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3516 .elementor-element-8ed6798::after {

        animation: none;

    }

    .page-id-3516 .elementor-element-7127f4c,

    .page-id-3516 .elementor-element-b6331bf,

    .page-id-3516 .elementor-element-f17cde1 > .banner-subheading,

    .page-id-3516 .elementor-element-f17cde1 .cs-chips {

        opacity: 1;

        animation: none;

    }

}





/* =========================================================================

   CLASSROOM SCIENCE PAGE - "GET HANDS ON" SECTION  (page-id-3516, section #0190594 (id get-hands-section): heading block #f2f52ab (eyebrow

   #a21cf27, h1 #b9d799f, text #854127b) + grid #d54741d with six experiment cards (#f5c317e #8a76eb8 #84ff524 #9fcf08b #5569430 #038b154;

   each = text container (title, text, "Try It" link) + photo container). Rebuilt after the "Four Pillars" reference, in a LIGHT theme:

   two columns - on the left the heading block (left-aligned, sticky) plus a small "6 classroom experiments" card (custom.js); on the

   right the six cards stacked, each with a ROUND PHOTO sitting on the card's left edge and bleeding out of it, the title on the left and

   the "Try It" link at the top right, the text below. Hover lifts a card. Text, links, photos and font sizes are unchanged.

   Responsive: tablet / phone = heading on top, cards stacked, smaller photo.

   ========================================================================= */





/* cards stacked */

.page-id-3516 .elementor-element-d54741d {

    --e-con-grid-template-columns: minmax(0, 1fr);

    grid-template-columns: minmax(0, 1fr) !important;

    grid-template-rows: auto !important;

    gap: 22px !important;

    padding-left: 40px !important;

}

.page-id-3516 .elementor-element-d54741d > .e-con {

    position: relative;

    display: block !important;

    min-height: 0;

    padding: 0 !important;

    border: 1px solid #ece8f8 !important;

    border-radius: 22px !important;

    background: #ffffff !important;

    box-shadow: 0 22px 40px -32px rgba(67, 54, 143, 0.55), 0 2px 8px rgba(34, 57, 115, 0.04) !important;

    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;

    animation: csCardIn 0.7s ease both;

}

.page-id-3516 .elementor-element-d54741d > .e-con:nth-child(2) { animation-delay: 0.06s; }

.page-id-3516 .elementor-element-d54741d > .e-con:nth-child(3) { animation-delay: 0.12s; }

.page-id-3516 .elementor-element-d54741d > .e-con:nth-child(4) { animation-delay: 0.18s; }

.page-id-3516 .elementor-element-d54741d > .e-con:nth-child(5) { animation-delay: 0.24s; }

.page-id-3516 .elementor-element-d54741d > .e-con:nth-child(6) { animation-delay: 0.30s; }

@keyframes csCardIn {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: none; }

}

.page-id-3516 .elementor-element-d54741d > .e-con:hover {

    transform: translateX(6px);

    border-color: #cfc2f3 !important;

    box-shadow: 0 30px 50px -30px rgba(67, 54, 143, 0.7), 0 2px 8px rgba(34, 57, 115, 0.05) !important;

}

/* text container: room for the round photo on the left, the link at the top right */

.page-id-3516 .elementor-element-d54741d > .e-con > .e-con:first-child {

    position: relative;

    width: 100% !important;

    padding: 22px 26px 20px 84px !important;

    gap: 0;

}

.page-id-3516 .elementor-element-d54741d .elementor-widget-image-box {

    width: 100%;

}

.page-id-3516 .elementor-element-d54741d .elementor-image-box-title {

    margin: 0 0 8px !important;

    padding-right: 96px;

    color: #223973;

    font-weight: 700;

}

.page-id-3516 .elementor-element-d54741d .elementor-image-box-description {

    color: #4a4a62;

    line-height: 1.6;

}

/* "Try It" link: top right, small, arrow nudges on hover */

.page-id-3516 .elementor-element-d54741d .purple-button {

    position: absolute;

    top: 22px;

    right: 26px;

    margin: 0 !important;

    width: auto !important;

}

.page-id-3516 .elementor-element-d54741d .purple-button a {

    padding: 0 !important;

    background: none !important;

    box-shadow: none !important;

    border: 0 !important;

    color: #6152ad !important;

    font-size: 14px !important;

    font-weight: 700;

    letter-spacing: 0.01em;

}

.page-id-3516 .elementor-element-d54741d .purple-button .elementor-button-icon {

    display: none;

}

.page-id-3516 .elementor-element-d54741d .purple-button .elementor-button-text {

    color: #6152ad !important;

    font-size: 14px !important;

    transition: letter-spacing 0.3s ease, color 0.3s ease;

}

.page-id-3516 .elementor-element-d54741d > .e-con:hover .purple-button .elementor-button-text {

    letter-spacing: 0.05em;

    color: #43368f !important;

}

/* round photo, bleeding out of the card's left edge */

.page-id-3516 .elementor-element-d54741d > .e-con > .e-con:last-child {

    position: absolute !important;

    top: 50%;

    left: -34px;

    z-index: 2;

    width: 100px !important;

    height: 100px !important;

    min-height: 0 !important;

    margin-top: -50px;

    padding: 0 !important;

    border: 4px solid #ffffff;

    border-radius: 50% !important;

    background-size: cover !important;

    background-position: center !important;

    box-shadow: 0 0 0 1px rgba(97, 82, 173, 0.18), 0 16px 26px -12px rgba(67, 54, 143, 0.6);

    transition: transform 0.4s ease;

}

.page-id-3516 .elementor-element-d54741d > .e-con:hover > .e-con:last-child {

    transform: scale(1.08) rotate(-4deg);

}



/* left "count" card (custom.js) */

.page-id-3516 .cs-count {

    display: flex;

    align-items: center;

    gap: 14px;

    width: fit-content;

    margin-top: 18px;

    padding: 12px 22px 12px 14px;

    border: 1px solid rgba(97, 82, 173, 0.14);

    border-radius: 999px;

    background: rgba(255, 255, 255, 0.7);

    -webkit-backdrop-filter: blur(10px);

    backdrop-filter: blur(10px);

    box-shadow: 0 16px 30px -22px rgba(67, 54, 143, 0.55);

}

.page-id-3516 .cs-count i {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 44px;

    height: 44px;

    border-radius: 50%;

    background: linear-gradient(135deg, #8b78e6, #6152ad);

    color: #ffffff;

}

.page-id-3516 .cs-count svg {

    width: 24px;

    height: 24px;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.7;

    stroke-linecap: round;

    stroke-linejoin: round;

}

.page-id-3516 .cs-count b {

    display: block;

    color: #223973;

    font-size: 22px;

    font-weight: 700;

    line-height: 1.1;

}

.page-id-3516 .cs-count span {

    display: block;

    color: #5a5a70;

    font-size: 13px;

    line-height: 1.3;

}



/* section background wash */

.page-id-3516 .elementor-element-0190594 {

    position: relative;

    isolation: isolate;

}

.page-id-3516 .elementor-element-0190594::before {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 1;

    z-index: -1;

    background:

        radial-gradient(36% 24% at 0% 20%, rgba(133, 112, 214, 0.14) 0%, rgba(133, 112, 214, 0) 70%),

        radial-gradient(34% 26% at 100% 85%, rgba(255, 193, 7, 0.08) 0%, rgba(255, 193, 7, 0) 70%),

        linear-gradient(180deg, #ffffff 0%, #f8f5fe 55%, #ffffff 100%);

    pointer-events: none;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3516 .elementor-element-d54741d > .e-con {

        animation: none;

    }

}





/* =========================================================================

   CLASSROOM SCIENCE PAGE - "BOOKMARK THESE" SECTION  (page-id-3516, dark section #772b5a8 -> row #3c03aac: left column #10ebb99 (eyebrow,

   heading, text, photo #33c4a8a + glow #08f98a3) and card column #1b5a372 with grid #bac4ada: six cards (#3b79dab #e17fbe4 #e1f0e2c

   #7c78c8c #7b61c73 #667c7f7), each = image box (logo, title, text) + "Explore More" button). Compact + redesign, same language as the Science

   Policy "Agencies" section: glass cards with a violet hairline border, a smaller logo row, tighter text and padding, a light line + glow

   and lift on hover, the "Explore More" link as a pill with a round arrow chip, soft violet glows and faint rings in the section, a

   staggered entrance; the left photo is cropped to a fixed height so it never covers the heading when the section gets shorter.

   custom.js scales the section down a little (never below 0.75) on windows that are still too short. Text, logos, links and font sizes

   are unchanged. Responsive: 2 columns -> 1.

   ========================================================================= */

.page-id-3516 .elementor-element-772b5a8 {

    position: relative;

    isolation: isolate;

}

.page-id-3516 .elementor-element-772b5a8::before {

    content: "";

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 1;

    z-index: -1;

    background:

        radial-gradient(44% 40% at 8% 0%, rgba(124, 92, 235, 0.28) 0%, rgba(124, 92, 235, 0) 70%),

        radial-gradient(38% 36% at 100% 100%, rgba(90, 70, 200, 0.24) 0%, rgba(90, 70, 200, 0) 70%);

    pointer-events: none;

}

.page-id-3516 .elementor-element-772b5a8 > .e-con-inner {

    padding-top: 50px;       /* same air above the content as below it */

    padding-bottom: 50px;

}



/* left column: tighter, photo cropped to a fixed height */

.page-id-3516 .elementor-element-10ebb99 {

    gap: 10px;

}

.page-id-3516 .elementor-element-10ebb99 .elementor-widget {

    margin-bottom: 0 !important;

}

.page-id-3516 .elementor-element-10ebb99 .elementor-element-e5f0ee9 {

    margin-bottom: 12px !important;   /* room for the label's underline */

}

.page-id-3516 .elementor-element-33c4a8a {

    bottom: 0 !important;

    top: auto !important;

    height: 290px;

}

.page-id-3516 .elementor-element-33c4a8a img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: contain;          /* the whole picture, not a crop */

    object-position: center bottom;

}

.page-id-3516 .elementor-element-08f98a3 {

    bottom: 0 !important;

    top: auto !important;

    height: 300px;

    overflow: hidden;

}

.page-id-3516 .elementor-element-08f98a3 img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    object-position: center bottom;

}



/* grid + cards */

.page-id-3516 .elementor-element-1b5a372 {

    align-self: stretch;

}

.page-id-3516 .elementor-element-bac4ada {

    flex: 1 1 auto;

    align-self: stretch;

    gap: 16px !important;

    height: 100%;

    --e-con-grid-template-rows: repeat(3, minmax(0, 1fr));

    grid-template-rows: repeat(3, minmax(0, 1fr)) !important;

}

.page-id-3516 .elementor-element-bac4ada > .e-con {

    position: relative;

    overflow: hidden;

    justify-content: space-between;

    gap: 8px;

    padding: 16px 20px 14px !important;

    border: 1px solid rgba(139, 120, 230, 0.22) !important;

    border-radius: 18px !important;

    background: linear-gradient(160deg, rgba(23, 29, 46, 0.92) 0%, rgba(12, 18, 26, 0.96) 100%) !important;

    box-shadow: 0 24px 44px -30px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.05);

    transition: transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;

    animation: csBkIn 0.7s ease both;

}

.page-id-3516 .elementor-element-bac4ada > .e-con:nth-child(2) { animation-delay: 0.07s; }

.page-id-3516 .elementor-element-bac4ada > .e-con:nth-child(3) { animation-delay: 0.14s; }

.page-id-3516 .elementor-element-bac4ada > .e-con:nth-child(4) { animation-delay: 0.21s; }

.page-id-3516 .elementor-element-bac4ada > .e-con:nth-child(5) { animation-delay: 0.28s; }

.page-id-3516 .elementor-element-bac4ada > .e-con:nth-child(6) { animation-delay: 0.35s; }

@keyframes csBkIn {

    from { opacity: 0; transform: translateY(20px); }

    to   { opacity: 1; transform: none; }

}

.page-id-3516 .elementor-element-bac4ada > .e-con::before {

    content: "";

    position: absolute;

    inset: 0 0 auto 0;

    width: auto;

    height: 2px;

    opacity: 0;

    background: linear-gradient(90deg, rgba(139, 120, 230, 0) 0%, #b7a6ff 50%, rgba(139, 120, 230, 0) 100%);

    transition: opacity 0.35s ease;

    pointer-events: none;

    z-index: 2;

}

.page-id-3516 .elementor-element-bac4ada > .e-con::after {

    content: "";

    position: absolute;

    inset: -60px -60px auto auto;

    width: 190px;

    height: 190px;

    opacity: 0;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(139, 120, 230, 0.32) 0%, rgba(139, 120, 230, 0) 68%);

    transition: opacity 0.4s ease;

    pointer-events: none;

}

.page-id-3516 .elementor-element-bac4ada > .e-con:hover {

    transform: translateY(-5px);

    border-color: rgba(183, 166, 255, 0.55) !important;

    box-shadow: 0 34px 56px -30px rgba(0, 0, 0, 0.95), 0 0 0 1px rgba(139, 120, 230, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.08);

}

.page-id-3516 .elementor-element-bac4ada > .e-con:hover::before,

.page-id-3516 .elementor-element-bac4ada > .e-con:hover::after {

    opacity: 1;

}

.page-id-3516 .elementor-element-bac4ada .elementor-image-box-img {

    margin: 0 0 10px !important;

}

.page-id-3516 .elementor-element-bac4ada .elementor-image-box-img img {

    display: block;

    width: auto !important;

    max-width: 170px;

    height: 38px !important;

    object-fit: contain;

    object-position: left center;

}

.page-id-3516 .elementor-element-bac4ada .elementor-image-box-title {

    margin: 0 0 6px !important;

    color: #ffffff;

    line-height: 1.3;

}

.page-id-3516 .elementor-element-bac4ada .elementor-image-box-description {

    margin: 0 !important;

    color: rgba(255, 255, 255, 0.76);

    line-height: 1.5;

}



/* "Explore More": pill link with a round arrow chip (same as the Agencies CTA) */

.page-id-3516 .elementor-element-bac4ada .alan-button,

.page-id-3516 .elementor-element-bac4ada .purple-button {

    margin: 0 !important;

}

.page-id-3516 .elementor-element-bac4ada .purple-button a {

    position: relative;

    display: inline-flex;

    align-items: center;

    gap: 12px;

    padding: 4px 4px 4px 16px;

    overflow: hidden;

    border: 1px solid rgba(168, 148, 240, 0.45);

    border-radius: 999px;

    background: linear-gradient(135deg, rgba(139, 120, 230, 0.16) 0%, rgba(97, 82, 173, 0.08) 100%);

    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);

    color: #d8ccff !important;

    font-size: 14px !important;

    font-weight: 600;

    letter-spacing: 0.01em;

    text-decoration: none;

    transition: background 0.35s ease, color 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;

}

.page-id-3516 .elementor-element-bac4ada .purple-button .elementor-button-icon {

    display: none;

}

.page-id-3516 .elementor-element-bac4ada .purple-button .elementor-button-text {

    font-size: 14px !important;

    color: inherit !important;

}

.page-id-3516 .elementor-element-bac4ada .purple-button a::after {

    content: "\2197";

    flex: none;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    width: 26px;

    height: 26px;

    border-radius: 50%;

    background: linear-gradient(135deg, #8b78e6 0%, #6152ad 100%);

    box-shadow: 0 6px 12px -6px rgba(97, 82, 173, 0.9);

    color: #ffffff;

    font-size: 14px;

    line-height: 1;

    transition: transform 0.35s ease, background 0.35s ease, color 0.35s ease;

}

.page-id-3516 .elementor-element-bac4ada .purple-button a:hover {

    border-color: transparent;

    background: linear-gradient(135deg, #8b78e6 0%, #6152ad 100%);

    box-shadow: 0 14px 26px -12px rgba(139, 120, 230, 0.9);

    color: #ffffff !important;

}

.page-id-3516 .elementor-element-bac4ada .purple-button a:hover::after {

    background: #ffffff;

    color: #6152ad;

    transform: rotate(45deg) scale(1.05);

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3516 .elementor-element-bac4ada > .e-con {

        animation: none;

    }

}



/* ==========================================================================

   Single post footer: author box, prev/next nav, comment form

   (markup in template-parts/post-footer.php)

   ========================================================================== */

.post-footer {

    width: 100%;

    margin: 28px 0 0;

    padding: 0;

    display: flex;

    flex-direction: column;

    gap: 28px;

    box-sizing: border-box;

}

.post-footer .pf-card {

    background: #ffffff;

    border-radius: 26px;

    border: 1px solid #ece8f8;

    padding: 36px 40px;

    box-shadow: 0 30px 60px -36px rgba(67, 54, 143, 0.28), 0 4px 14px rgba(34, 57, 115, 0.05);

    box-sizing: border-box;

}

.post-footer a { text-decoration: none; }



/* author box */

.post-footer .pf-author {

    display: flex;

    align-items: flex-start;

    gap: 24px;

}

.post-footer .pf-author-avatar {

    flex: 0 0 72px;

    width: 72px;

    height: 72px;

    border-radius: 50%;

    background: #6152ad;

    color: #fff;

    font-size: 24px;

    font-weight: 700;

    letter-spacing: 1px;

    display: flex;

    align-items: center;

    justify-content: center;

}

.post-footer .pf-author-body { flex: 1; min-width: 0; }

.post-footer .pf-eyebrow {

    display: block;

    font-size: 13px;

    font-weight: 600;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    color: #6152ad;

    margin-bottom: 4px;

}

.post-footer .pf-author-name { margin: 0 0 10px; font-size: 26px; line-height: 1.2; }

.post-footer .pf-author-name a { color: #1a1a1a; }

.post-footer .pf-author-bio p { margin: 0 0 18px; font-size: 16px; line-height: 1.6; color: #444; }

.post-footer .pf-author-actions { display: flex; flex-wrap: wrap; gap: 12px; }



/* buttons */

.post-footer .pf-btn {

    display: inline-block;

    padding: 12px 26px;

    border-radius: 14px;

    border: 1.5px solid #6152ad;

    font-family: inherit;

    font-size: 15px;

    font-weight: 700;

    line-height: 1.2;

    text-transform: uppercase;

    letter-spacing: 0.5px;

    cursor: pointer;

    transition: background .2s ease, color .2s ease, transform .2s ease;

}

.post-footer .pf-btn--solid { background: #6152ad; color: #fff; }

.post-footer .pf-btn--ghost { background: transparent; color: #6152ad; }

.post-footer .pf-btn--solid:hover,

.post-footer .pf-btn--ghost:hover {

    border-color: transparent;

    background: linear-gradient(135deg, #6152ad 0%, #8b78e6 100%);

    box-shadow: 0 16px 26px -14px rgba(97, 82, 173, 0.8);

    color: #fff;

}



/* prev / next */

.post-footer .pf-nav { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }

.post-footer .pf-nav-link {

    display: flex;

    flex-direction: column;

    gap: 6px;

    padding: 22px 24px;

    background: #fff;

    border-radius: 16px;

    border: 1px solid #e3ddf6;

    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;

}

.post-footer .pf-nav-link:hover {

    border-color: #6152ad;

    box-shadow: 0 10px 24px rgba(97, 82, 173, 0.15);

    transform: translateY(-2px);

}

.post-footer .pf-nav-link--next { text-align: right; grid-column: 2; }

.post-footer .pf-nav-link--prev { grid-column: 1; }

.post-footer .pf-nav-dir {

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 1px;

    text-transform: uppercase;

    color: #6152ad;

}

.post-footer .pf-nav-title { font-size: 17px; font-weight: 600; line-height: 1.4; color: #1a1a1a; }



/* comment form */

.post-footer .pf-title { margin: 0 0 20px; font-size: 24px; line-height: 1.2; color: #1a1a1a; }

.post-footer .pf-title small { font-size: 14px; margin-left: 10px; }

.post-footer .pf-comment-form { display: flex; flex-direction: column; gap: 16px; }

.post-footer .pf-comment-form p { margin: 0; }

.post-footer .comment-form-comment { position: relative; display: flex; align-items: flex-start; gap: 14px; }

.post-footer .pf-comment-avatar {

    flex: 0 0 44px;

    width: 44px;

    height: 44px;

    border-radius: 50%;

    background: #efebfd;

    color: #6152ad;

    font-weight: 700;

    display: flex;

    align-items: center;

    justify-content: center;

}

.post-footer .pf-comment-form textarea,

.post-footer .pf-comment-form input[type="text"],

.post-footer .pf-comment-form input[type="email"] {

    width: 100%;

    box-sizing: border-box;

    padding: 14px 18px;

    background: #faf9fe;

    border: 1px solid #ddd6f3;

    border-radius: 12px;

    font-family: inherit;

    font-size: 16px;

    color: #1a1a1a;

    box-shadow: none;

    outline: none;

    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;

}

.post-footer .comment-form-comment textarea { flex: 1; min-height: 110px; resize: vertical; }

.post-footer .pf-comment-form textarea:focus,

.post-footer .pf-comment-form input[type="text"]:focus,

.post-footer .pf-comment-form input[type="email"]:focus {

    background: #fff;

    border-color: #6152ad;

    box-shadow: 0 0 0 3px rgba(97, 82, 173, 0.15);

}

.post-footer .pf-comment-form ::placeholder { color: #8a84a3; }

.post-footer .comment-form-author,

.post-footer .comment-form-email { width: 100%; }

.post-footer .comment-form-cookies-consent { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; color: #555; }

.post-footer .comment-form-cookies-consent input { margin-top: 3px; accent-color: #6152ad; }





/* ==========================================================================

   Single post: "Keep reading" related articles (.keep-reading)

   ========================================================================== */

.keep-reading {

    padding: 70px 0 80px;

    background: #ffffff;

}

.keep-reading .kr-head {

    display: grid;

    grid-template-columns: 1fr auto;

    column-gap: 24px;

    align-items: end;

    margin-bottom: 36px;

}

.keep-reading .pf-eyebrow {

    grid-column: 1 / -1;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    color: #6152ad;

    margin-bottom: 8px;

}

.keep-reading .kr-title {

    grid-column: 1;

    margin: 0 0 8px;

    font-size: 34px;

    line-height: 1.2;

    color: #1a1a1a;

}

.keep-reading .kr-text {

    grid-column: 1;

    margin: 0;

    max-width: 620px;

    font-size: 16px;

    line-height: 1.6;

    color: #555;

}

.keep-reading .kr-all {

    grid-column: 2;

    grid-row: 2 / span 2;

    align-self: end;

    display: inline-flex;

    align-items: center;

    gap: 8px;

    padding: 12px 24px;

    border: 1.5px solid #6152ad;

    border-radius: 14px;

    font-size: 15px;

    font-weight: 700;

    color: #6152ad;

    text-decoration: none;

    white-space: nowrap;

    transition: background .3s ease, color .3s ease, box-shadow .3s ease, border-color .3s ease;

}

.keep-reading .kr-all span { transition: transform .25s ease; }

.keep-reading .kr-all:hover {

    border-color: transparent;

    background: linear-gradient(135deg, #6152ad 0%, #8b78e6 100%);

    box-shadow: 0 16px 26px -14px rgba(97, 82, 173, 0.8);

    color: #fff;

}

.keep-reading .kr-all:hover span { transform: translateX(4px); }



.keep-reading .kr-grid {

    display: grid;

    grid-template-columns: repeat(4, minmax(0, 1fr));

    gap: 24px;

}

.keep-reading .kr-card {

    display: flex;

    flex-direction: column;

    background: #fff;

    border: 1px solid #ece8f8;

    border-radius: 20px;

    overflow: hidden;

    box-shadow: 0 20px 40px -30px rgba(67, 54, 143, 0.35);

    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;

}

.keep-reading .kr-card:hover {

    transform: translateY(-6px);

    border-color: #c9c0ee;

    box-shadow: 0 28px 44px -26px rgba(67, 54, 143, 0.45);

}

.keep-reading .kr-thumb { aspect-ratio: 16 / 11; overflow: hidden; background: #efebfd; }

.keep-reading .kr-thumb img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform .5s ease;

}

.keep-reading .kr-card:hover .kr-thumb img { transform: scale(1.06); }

.keep-reading .kr-body { display: flex; flex-direction: column; flex: 1; gap: 10px; padding: 18px 20px 20px; }

.keep-reading .kr-chip {

    align-self: flex-start;

    padding: 4px 12px;

    border-radius: 999px;

    background: #efebfd;

    color: #6152ad;

    font-size: 12px;

    font-weight: 700;

}

.keep-reading .kr-card-title { margin: 0; font-size: 18px; line-height: 1.35; font-weight: 700; }

.keep-reading .kr-card-title a { color: #1a1a1a; text-decoration: none; transition: color .2s ease; }

.keep-reading .kr-card-title a::after { content: ""; position: absolute; inset: 0; }

.keep-reading .kr-card { position: relative; }

.keep-reading .kr-card:hover .kr-card-title a { color: #6152ad; }

.keep-reading .kr-meta { margin-top: auto; font-size: 14px; color: #777; }





/* ==========================================================================

   Category pages: no sidebar, 4 cards per row (16 per page, set in functions.php)

   ========================================================================== */

body.archive .cat-layout {

    display: block;

    width: min(1320px, calc(100% - 48px));

    margin: 56px auto 0;

}

body.archive .cat-layout .posts-grid {

    grid-template-columns: repeat(4, minmax(0, 1fr));

    gap: 24px;

}

body.archive .cat-layout .post-title {

    font-size: 1.7rem;

}





/* ==========================================================================

   Author pages: no sidebar, 4 cards per row (16 per page, set in functions.php)

   ========================================================================== */

body.author .au-layout {

    display: block;

}

body.author .au-layout .au-grid {

    grid-template-columns: repeat(4, minmax(0, 1fr));

    gap: 24px;

    width: 100%;

}





/* ==========================================================================

   Category pages: round-number pagination like the author page

   (template-parts/pagination.php), centred, circles close together

   ========================================================================== */

body.category .pagination-wrapper {

    width: 100%;

    margin: 48px auto 0;

    padding: 0;

}

body.category .pagination-wrapper hr {

    display: none;

}

body.category .pagination-wrapper .nav-links {

    display: flex;

    flex-wrap: wrap;

    align-items: center;

    justify-content: center;

    gap: 6px;

    margin: 0;

    padding: 0;

}

body.category .pagination-wrapper .page-numbers {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    min-width: 44px;

    height: 44px;

    margin: 0;

    padding: 0 16px;

    border-radius: 999px;

    border: 1px solid #ddd3f7;

    background: #ffffff;

    color: #223973;

    font-size: 1.5rem;

    font-weight: 600;

    text-decoration: none;

    transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;

}

body.category .pagination-wrapper a.page-numbers:hover,

body.category .pagination-wrapper .page-numbers.current {

    background: #6152ad;

    border-color: #6152ad;

    color: #ffffff;

}

body.category .pagination-wrapper a.page-numbers:hover {

    transform: translateY(-2px);

}

body.category .pagination-wrapper .page-numbers.dots,

body.category .pagination-wrapper .page-numbers.placeholder {

    border-color: transparent;

    background: transparent;

    min-width: 24px;

    padding: 0 4px;

}

body.category .pagination-wrapper .page-numbers.placeholder {

    display: none;

}

body.category .pagination-wrapper .page-numbers .svg-icon {

    fill: currentColor;

}



/* Post footer / keep reading: type matches the post (Urbanist; bold headings like the post title, 500 body text like the article) */

.post-footer .pf-author-name,

.post-footer .pf-title,

.keep-reading .kr-title {

    font-weight: 700;

    letter-spacing: -0.01em;

}

.post-footer .pf-nav-title,

.keep-reading .kr-card-title {

    font-weight: 700;

}

.post-footer .pf-author-bio p,

.post-footer .comment-form-cookies-consent,

.post-footer .pf-comment-form textarea,

.post-footer .pf-comment-form input[type="text"],

.post-footer .pf-comment-form input[type="email"],

.keep-reading .kr-text,

.keep-reading .kr-meta {

    font-weight: 500;

}



/* Related Posts: footer.php has an inline rule (margin 15px + padding-bottom 15px !important) that stacked on top of the card padding and

   spread the rows apart; this keeps the rows evenly and tightly spaced. */

body .related-sidebar .related-post-item {

    margin-bottom: 4px;

    padding: 8px !important;

}

body .related-sidebar .related-post-item:last-child {

    margin-bottom: 0;

}



/* header: the "Collaborate" button never breaks onto two lines (it did on ~1200-1440px laptops where the right column is narrow) */

.header-right .book-btn {

    white-space: nowrap;

}





/* single post (>= 1200px): slimmer padding in the article card, a slightly wider sidebar, smaller Related Posts thumbnails.

   Article + sidebar still fill the container (72% + 28%). */





/* sidebar cards (Follow Me / Related Posts): tighter padding */

body .sidebar-instagram {

    padding: 20px 16px 18px;

}

body .related-sidebar {

    padding: 20px 12px 10px;

}

body .related-sidebar .related-post-item {

    padding: 6px !important;

}



/* single post, below 1200px the sidebar stacks under the article: space between the comment card and the Follow Me card */





/* Related Posts thumbnails below 1200px (tablet / mobile): smaller than the 92px default */





/* Instagram widget buttons: when the sidebar is too narrow for "Load More" + "Follow on Instagram" side by side (1280-1440px

   laptops), the Follow button drops to its own full-width row instead of being cut off by the card. */

body .sidebar-instagram #sb_instagram #sbi_load {

    flex-wrap: wrap;

}

body .sidebar-instagram #sb_instagram .sbi_load_btn {

    flex: 1 1 auto;

}

body .sidebar-instagram #sb_instagram .sbi_follow_btn {

    flex: 1 1 180px;

    min-width: 0;

}



/* ==========================================================================

   DIVERSITY & INCLUSION IN STEM - HERO  (page-id-3518, hero #baa9851: eyebrow #a0e9ff7, h2.banner-inner-heading, .banner-subheading,

   button #960f7b8). The text used to sit straight on the conference photo; now a soft lavender wash from the left keeps it readable,

   the text gets a staggered entrance, the button a gradient hover, and custom.js adds the "Scroll down" cue (generic .wic-scrollcue).

   ========================================================================== */

.page-id-3518 .elementor-element-baa9851 {

    position: relative;

    overflow: hidden;

}

.page-id-3518 .elementor-element-baa9851::before {

    content: "";

    position: absolute;

    inset: 0;

    z-index: 1;

    pointer-events: none;

    background:

        linear-gradient(90deg, rgba(246, 243, 253, 0.97) 0%, rgba(246, 243, 253, 0.92) 34%, rgba(246, 243, 253, 0.55) 52%, rgba(246, 243, 253, 0) 72%),

        linear-gradient(180deg, rgba(255, 255, 255, 0.55) 0%, rgba(255, 255, 255, 0) 22%);

}

.page-id-3518 .elementor-element-baa9851 > .e-con-inner {

    position: relative;

    z-index: 2;

}



/* eyebrow */

.page-id-3518 .elementor-element-a0e9ff7 .elementor-heading-title {

    display: inline-block;

    padding: 6px 16px;

    border-radius: 999px;

    background: rgba(97, 82, 173, 0.1);

    border: 1px solid rgba(97, 82, 173, 0.18);

    font-size: 1.4rem;

    font-weight: 700;

    letter-spacing: 0.08em;

    text-transform: uppercase;

    color: #6152ad;

}



/* heading + paragraph */

.page-id-3518 .elementor-element-baa9851 .banner-inner-heading {

    font-weight: 700;

    letter-spacing: -0.01em;

    line-height: 1.15;

    color: #14122b;

}

.page-id-3518 .elementor-element-baa9851 .banner-inner-heading .colorTxt {

    background: linear-gradient(90deg, #223973 0%, #6152ad 100%);

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    color: #223973;

}

.page-id-3518 .elementor-element-baa9851 .banner-subheading {

    max-width: 560px;

    color: #3b3758;

    font-weight: 500;

}



/* button */

.page-id-3518 .elementor-element-960f7b8 a {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    border-radius: 14px;

    border: 1.5px solid #6152ad;

    box-shadow: 0 16px 26px -16px rgba(97, 82, 173, 0.8);

    transition: background 0.35s ease, box-shadow 0.35s ease, transform 0.35s ease;

}

.page-id-3518 .elementor-element-960f7b8 a:hover {

    background: linear-gradient(135deg, #6152ad 0%, #8b78e6 100%);

    box-shadow: 0 20px 30px -14px rgba(97, 82, 173, 0.9);

    transform: translateY(-2px);

}

.page-id-3518 .elementor-element-960f7b8 .elementor-button-icon svg {

    transition: transform 0.3s ease;

}

.page-id-3518 .elementor-element-960f7b8 a:hover .elementor-button-icon svg {

    transform: translateX(5px);

}



/* staggered entrance */

.page-id-3518 .elementor-element-a0e9ff7,

.page-id-3518 .elementor-element-368cff9,

.page-id-3518 .elementor-element-baa9851 .banner-subheading,

.page-id-3518 .elementor-element-960f7b8 {

    opacity: 0;

    animation: dHeroUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-3518 .elementor-element-a0e9ff7 { animation-delay: 0.05s; }

.page-id-3518 .elementor-element-368cff9 { animation-delay: 0.18s; }

.page-id-3518 .elementor-element-baa9851 .banner-subheading { animation-delay: 0.32s; }

.page-id-3518 .elementor-element-960f7b8 { animation-delay: 0.46s; }

@keyframes dHeroUp {

    from { opacity: 0; transform: translateY(18px); }

    to   { opacity: 1; transform: translateY(0); }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3518 .elementor-element-a0e9ff7,

    .page-id-3518 .elementor-element-368cff9,

    .page-id-3518 .elementor-element-baa9851 .banner-subheading,

    .page-id-3518 .elementor-element-960f7b8 {

        opacity: 1;

        animation: none;

    }

}



/* phone / tablet: the photo is behind the text, so the wash covers more of it */





/* ==========================================================================

   DIVERSITY & INCLUSION IN STEM - "THE HARD NUMBERS"  (page-id-3518, section #5936529, row #ca30a3a = text #401f116 / photo #6aff07e /

   three stat cards #aa80515 with icons + "Apply" buttons #7897b81 #8b090ae #9b39925).

   Fresh look: soft lavender section with blurred glows; centred heading block on top; below it a big rounded photo with a floating

   gradient frame on the left and the three stat cards on the right (white, rounded, lift on hover, accent bar). Tablet / phone: one

   column - heading, photo, cards. Text and links are unchanged.

   ========================================================================== */

.page-id-3518 .elementor-element-5936529 {

    position: relative;

    overflow: hidden;

    background: #ffffff;

}

.page-id-3518 .elementor-element-5936529 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* layout: heading on top, photo + cards below */

.page-id-3518 .elementor-element-ca30a3a {

    display: grid !important;

    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);

    grid-template-areas: "txt txt" "img cards";

    gap: 48px 56px !important;

    align-items: stretch !important;

    padding: 0 !important;

}

.page-id-3518 .elementor-element-401f116 { grid-area: txt; }

.page-id-3518 .elementor-element-6aff07e { grid-area: img; }

.page-id-3518 .elementor-element-aa80515 { grid-area: cards; }

.page-id-3518 .elementor-element-401f116,

.page-id-3518 .elementor-element-6aff07e,

.page-id-3518 .elementor-element-aa80515 {

    width: auto !important;

    max-width: none !important;

    min-width: 0;

}



/* heading block */

.page-id-3518 .elementor-element-401f116 {

    align-items: center;

    text-align: center;

    padding: 0 !important;

}

.page-id-3518 .elementor-element-0d86644 {

    align-self: stretch;

    width: auto !important;

    margin-bottom: 14px;

}

.page-id-3518 .elementor-element-0d86644 .elementor-heading-title {

    text-align: center;

}

.page-id-3518 .elementor-element-0d86644::after {

    display: none;

}

.page-id-3518 .elementor-element-0d86644::before {

    left: 50%;

    bottom: -4px;

    width: 60px;

    background: #6152ad;

    transform: translate(-50%, 10px);

}

.page-id-3518 .elementor-element-67838c0 .section-heading {

    font-weight: 700;

    letter-spacing: -0.01em;

    color: #14122b;

}

.page-id-3518 .elementor-element-67838c0 .colorTxt {

    background: linear-gradient(90deg, #223973 0%, #6152ad 100%);

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

}

.page-id-3518 .elementor-element-b0345d3 {

    max-width: 640px;

    margin-top: 10px;

}

.page-id-3518 .elementor-element-b0345d3 .elementor-heading-title {

    font-weight: 500;

    color: #4a4668;

}



/* photo */

.page-id-3518 .elementor-element-6aff07e {

    position: relative;

    justify-content: center;

}

.page-id-3518 .elementor-element-6aff07e::before {

    content: "";

    position: absolute;

    inset: 18px -18px -18px 18px;

    border-radius: 30px;

    background: linear-gradient(135deg, #6152ad 0%, #b79cff 55%, #f09433 130%);

    opacity: 0.35;

    z-index: 0;

}

.page-id-3518 .elementor-element-e9992b6 {

    position: relative;

    z-index: 1;

    height: 100%;

}

.page-id-3518 .elementor-element-e9992b6 img {

    display: block;

    width: 100%;

    height: 100%;

    min-height: 360px;

    object-fit: cover;

    border-radius: 28px;

    box-shadow: 0 30px 50px -28px rgba(67, 54, 143, 0.55);

}



/* stat cards */

.page-id-3518 .elementor-element-aa80515 {

    padding: 0 !important;

    gap: 18px !important;

    justify-content: center;

}

.page-id-3518 .elementor-element-3d43c22,

.page-id-3518 .elementor-element-566d5d1,

.page-id-3518 .elementor-element-a1fd88b {

    position: relative;

    gap: 18px !important;

    padding: 18px 22px 18px 20px !important;

    border-radius: 22px !important;

    border: 1px solid #e6def9 !important;

    background: #ffffff !important;

    box-shadow: 0 18px 36px -26px rgba(67, 54, 143, 0.45) !important;

    overflow: hidden;

    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-3518 .elementor-element-3d43c22::before,

.page-id-3518 .elementor-element-566d5d1::before,

.page-id-3518 .elementor-element-a1fd88b::before {

    content: "";

    position: absolute;

    left: 0;

    top: 18%;

    bottom: 18%;

    width: 4px;

    border-radius: 0 4px 4px 0;

    background: linear-gradient(180deg, #6152ad, #b79cff);

    opacity: 0.55;

    transition: opacity 0.3s ease, top 0.3s ease, bottom 0.3s ease;

}

.page-id-3518 .elementor-element-3d43c22:hover,

.page-id-3518 .elementor-element-566d5d1:hover,

.page-id-3518 .elementor-element-a1fd88b:hover {

    transform: translateY(-4px);

    border-color: #c9c0ee !important;

    box-shadow: 0 26px 42px -24px rgba(67, 54, 143, 0.55) !important;

}

.page-id-3518 .elementor-element-3d43c22:hover::before,

.page-id-3518 .elementor-element-566d5d1:hover::before,

.page-id-3518 .elementor-element-a1fd88b:hover::before {

    opacity: 1;

    top: 8%;

    bottom: 8%;

}

.page-id-3518 .elementor-element-3d43c22 > img,

.page-id-3518 .elementor-element-566d5d1 > img,

.page-id-3518 .elementor-element-a1fd88b > img {

    flex: 0 0 auto;

    width: 68px !important;

    height: 68px !important;

    object-fit: contain;

}

.page-id-3518 .elementor-element-7a58969,

.page-id-3518 .elementor-element-2ec6802,

.page-id-3518 .elementor-element-115ea24 {

    padding: 0 !important;

    gap: 10px !important;

}

.page-id-3518 .elementor-element-aa80515 p {

    margin: 0;

    font-size: 1.8rem;

    line-height: 1.45;

    font-weight: 600;

    color: #1c1a3a;

}



/* "Apply" link -> small pill */

.page-id-3518 .elementor-element-aa80515 .alan-button a {

    display: inline-flex;

    align-items: center;

    padding: 6px 14px !important;

    border-radius: 999px;

    background: #efebfd;

    color: #6152ad;

    font-size: 1.4rem;

    font-weight: 700;

    line-height: 1.2;

    transition: background 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3518 .elementor-element-aa80515 .alan-button .elementor-button-content-wrapper {

    display: inline-flex;

    align-items: center;

    gap: 6px;

}

.page-id-3518 .elementor-element-aa80515 .alan-button .elementor-button-text {

    color: inherit;

    font-weight: 700;

}

.page-id-3518 .elementor-element-aa80515 .alan-button a:hover {

    background: linear-gradient(135deg, #6152ad 0%, #8b78e6 100%);

    color: #ffffff;

    box-shadow: 0 12px 20px -12px rgba(97, 82, 173, 0.8);

}

.page-id-3518 .elementor-element-aa80515 .alan-button a:hover svg path {

    stroke: #ffffff;

}



/* tablet / phone: one column */





/* Hard Numbers: fixes after the first pass - Elementor offsets the cards column by -63px, the old eyebrow underline is not needed

   next to the pill, and the sub-heading has to be centred like the rest of the heading block */

.page-id-3518 .elementor-element-aa80515,

.page-id-3518 .elementor-element-6aff07e {

    margin: 0 !important;

}

.page-id-3518 .elementor-element-b0345d3 {

    align-self: center;

    width: auto !important;

    text-align: center;

}



/* Hard Numbers, second pass: photo and cards column have the same height (the photo fills the column that the three cards define, the

   cards share that height evenly), and soft floating science icons (atom, DNA, flask, sparkle) drift around the white section. */

.page-id-3518 .elementor-element-6aff07e,

.page-id-3518 .elementor-element-aa80515 {

    min-height: 430px;

}

.page-id-3518 .elementor-element-e9992b6 {

    position: absolute;

    inset: 0;

    height: auto;

}

.page-id-3518 .elementor-element-e9992b6 img {

    height: 100%;

    min-height: 0;

}

.page-id-3518 .elementor-element-aa80515 {

    justify-content: space-between;

}

.page-id-3518 .elementor-element-3d43c22,

.page-id-3518 .elementor-element-566d5d1,

.page-id-3518 .elementor-element-a1fd88b {

    flex: 1 1 0;

    min-height: 0;

    align-items: center;

}



/* floating icons */

.page-id-3518 .elementor-element-5936529::before,

.page-id-3518 .elementor-element-5936529::after,

.page-id-3518 .elementor-element-5936529 > .e-con-inner::before,

.page-id-3518 .elementor-element-5936529 > .e-con-inner::after {

    content: "";

    position: absolute;

    z-index: 0;

    pointer-events: none;

    background-repeat: no-repeat;

    background-size: contain;

    background-position: center;

}

.page-id-3518 .elementor-element-5936529::before {

    top: 70px;

    left: 5%;

    width: 86px;

    height: 86px;

    opacity: 0.32;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%236152ad' stroke-width='1.8'%3E%3Cellipse cx='32' cy='32' rx='28' ry='11'/%3E%3Cellipse cx='32' cy='32' rx='28' ry='11' transform='rotate(60 32 32)'/%3E%3Cellipse cx='32' cy='32' rx='28' ry='11' transform='rotate(120 32 32)'/%3E%3C/g%3E%3Ccircle cx='32' cy='32' r='3.5' fill='%236152ad'/%3E%3C/svg%3E");

    animation: dFloatSpin 26s linear infinite;

}

.page-id-3518 .elementor-element-5936529::after {

    top: 50px;

    right: 6%;

    width: 46px;

    height: 115px;

    opacity: 0.3;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 100'%3E%3Cg fill='none' stroke='%236152ad' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M8 0C8 12 32 12 32 25S8 38 8 50S32 62 32 75S8 88 8 100'/%3E%3Cpath d='M32 0C32 12 8 12 8 25S32 38 32 50S8 62 8 75S32 88 32 100'/%3E%3Cpath stroke-width='1.6' d='M12 7H28M12 18H28M12 32H28M12 43H28M12 57H28M12 68H28M12 82H28M12 93H28'/%3E%3C/g%3E%3C/svg%3E");

    animation: dFloatY 7s ease-in-out infinite;

}

.page-id-3518 .elementor-element-5936529 > .e-con-inner::before {

    bottom: 26px;

    left: -2%;

    width: 60px;

    height: 80px;

    opacity: 0.3;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 64'%3E%3Cg fill='none' stroke='%236152ad' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 4h12M20 4v18L6 54a5 5 0 0 0 4.5 7.5h27A5 5 0 0 0 42 54L28 22V4'/%3E%3Cpath d='M11 42h26'/%3E%3C/g%3E%3C/svg%3E");

    animation: dFloatTilt 9s ease-in-out infinite;

}

.page-id-3518 .elementor-element-5936529 > .e-con-inner::after {

    bottom: 30px;

    right: -1%;

    width: 44px;

    height: 44px;

    opacity: 0.4;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M20 2C21 14 26 19 38 20C26 21 21 26 20 38C19 26 14 21 2 20C14 19 19 14 20 2Z' fill='%23b79cff'/%3E%3C/svg%3E");

    animation: dTwinkle 3.6s ease-in-out infinite;

}

@keyframes dFloatSpin {

    from { transform: translateY(0) rotate(0deg); }

    50%  { transform: translateY(-14px) rotate(180deg); }

    to   { transform: translateY(0) rotate(360deg); }

}

@keyframes dFloatY {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-16px); }

}

@keyframes dFloatTilt {

    0%, 100% { transform: translateY(0) rotate(-8deg); }

    50%      { transform: translateY(-12px) rotate(8deg); }

}

@keyframes dTwinkle {

    0%, 100% { transform: scale(0.8) rotate(0deg); opacity: 0.25; }

    50%      { transform: scale(1.15) rotate(45deg); opacity: 0.6; }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3518 .elementor-element-5936529::before,

    .page-id-3518 .elementor-element-5936529::after,

    .page-id-3518 .elementor-element-5936529 > .e-con-inner::before,

    .page-id-3518 .elementor-element-5936529 > .e-con-inner::after {

        animation: none;

    }

}





/* Diversity & Inclusion: "The Hard Numbers" (#5936529) and "Meet Scientists" (#890c613) were set to 93% content width in Elementor; every

   other section of the site uses the standard 87% container, so they get the same here. */

.page-id-3518 .elementor-3518 .elementor-element.elementor-element-5936529,

.page-id-3518 .elementor-3518 .elementor-element.elementor-element-890c613 {

    --content-width: 87%;

}



/* ==========================================================================

   DIVERSITY & INCLUSION IN STEM - "MEET SCIENTISTS WHO FOUND THEIR WAY"  (page-id-3518, section #890c613 / #meet-scientist-section).

   Dark section: deep indigo gradient with soft glows and a faint dot grid, light heading block, glass cards (photo with a fade,

   title, "Read More" cue that slides) and a gradient "Meet More Scientists" button. The cards come from a shortcode that prints

   its own light-theme <style>, so everything here is scoped to the section (higher specificity). Text and links are unchanged.

   ========================================================================== */

.page-id-3518 .elementor-element-890c613 {

    position: relative;

    overflow: hidden;

    background: linear-gradient(160deg, #0d0a26 0%, #17104a 55%, #1d1457 100%);

}

.page-id-3518 .elementor-element-890c613::before {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background:

        radial-gradient(circle at 12% 8%, rgba(139, 120, 230, 0.32) 0%, transparent 38%),

        radial-gradient(circle at 92% 92%, rgba(220, 39, 67, 0.20) 0%, transparent 40%),

        radial-gradient(circle at 80% 15%, rgba(240, 148, 51, 0.10) 0%, transparent 30%),

        linear-gradient(160deg, #0d0a26 0%, #17104a 55%, #1d1457 100%);

}

.page-id-3518 .elementor-element-890c613::after {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    opacity: 0.5;

    background-image: radial-gradient(rgba(255, 255, 255, 0.10) 1px, transparent 1.2px);

    background-size: 26px 26px;

    -webkit-mask-image: linear-gradient(180deg, #000 0%, transparent 70%);

    mask-image: linear-gradient(180deg, #000 0%, transparent 70%);

}

.page-id-3518 .elementor-element-890c613 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* heading block */

.page-id-3518 .elementor-element-890c613 .purple-heading-cen,

.page-id-3518 .elementor-element-890c613 .purple-heading-cen .elementor-heading-title {

    color: #c9bcff !important;

}

.page-id-3518 .elementor-element-890c613 .purple-heading-cen::before {

    background: #9a86ec;

}

.page-id-3518 .elementor-element-890c613 .section-heading {

    color: #ffffff;

    font-weight: 700;

    letter-spacing: -0.01em;

}

.page-id-3518 .elementor-element-890c613 .section-heading .colorTxt {

    color: #7473bb;

}

.page-id-3518 .elementor-element-890c613 .section-subheading .elementor-heading-title {

    color: rgba(255, 255, 255, 0.78);

    font-weight: 500;

}



/* cards */

.page-id-3518 .elementor-element-890c613 .paths-blog-grid {

    gap: 28px;

}

.page-id-3518 .elementor-element-890c613 .paths-blog-card {

    position: relative;

    display: flex;

    background: rgba(255, 255, 255, 0.06);

    border: 1px solid rgba(255, 255, 255, 0.14);

    border-radius: 24px;

    box-shadow: 0 24px 40px -28px rgba(0, 0, 0, 0.7);

    -webkit-backdrop-filter: blur(6px);

    backdrop-filter: blur(6px);

    transition: transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease, background 0.35s ease;

}

.page-id-3518 .elementor-element-890c613 .paths-blog-card:hover {

    transform: translateY(-8px);

    background: rgba(255, 255, 255, 0.10);

    border-color: rgba(183, 156, 255, 0.65);

    box-shadow: 0 30px 50px -26px rgba(139, 120, 230, 0.65);

}

.page-id-3518 .elementor-element-890c613 .paths-blog-card a {

    display: flex;

    flex-direction: column;

    width: 100%;

    color: #ffffff;

}

.page-id-3518 .elementor-element-890c613 .paths-blog-image {

    position: relative;

    height: 230px;

}

.page-id-3518 .elementor-element-890c613 .paths-blog-image::after {

    content: "";

    position: absolute;

    inset: auto 0 0 0;

    height: 55%;

    background: linear-gradient(180deg, transparent 0%, rgba(18, 12, 56, 0.85) 100%);

    pointer-events: none;

}

.page-id-3518 .elementor-element-890c613 .paths-blog-image img {

    transition: transform 0.6s ease;

}

.page-id-3518 .elementor-element-890c613 .paths-blog-card:hover .paths-blog-image img {

    transform: scale(1.07);

}

.page-id-3518 .elementor-element-890c613 .paths-blog-content {

    display: flex;

    flex: 1;

    flex-direction: column;

    gap: 16px;

    padding: 20px 24px 24px;

}

.page-id-3518 .elementor-element-890c613 .paths-blog-content h3 {

    margin: 0;

    font-size: 2rem;

    line-height: 1.35;

    font-weight: 700;

    color: #ffffff;

}

.page-id-3518 .elementor-element-890c613 .paths-read-more {

    margin-top: auto;

    align-self: flex-start;

    display: inline-flex;

    align-items: center;

    gap: 8px;

    padding: 7px 16px;

    border-radius: 999px;

    background: rgba(183, 156, 255, 0.16);

    border: 1px solid rgba(183, 156, 255, 0.35);

    color: #d8ccff;

    font-size: 1.4rem;

    font-weight: 700;

    transition: background 0.3s ease, color 0.3s ease, gap 0.3s ease, border-color 0.3s ease;

}

.page-id-3518 .elementor-element-890c613 .paths-blog-card:hover .paths-read-more {

    gap: 14px;

    background: linear-gradient(135deg, #6152ad 0%, #8b78e6 100%);

    border-color: transparent;

    color: #ffffff;

}



/* button */

.page-id-3518 .elementor-element-890c613 #pathsLoadMoreBtn {

    padding: 14px 30px;

    border-radius: 14px;

    border: 1.5px solid rgba(255, 255, 255, 0.25);

    background: linear-gradient(135deg, #6152ad 0%, #8b78e6 100%);

    box-shadow: 0 18px 30px -16px rgba(139, 120, 230, 0.9);

    font-size: 1.7rem;

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3518 .elementor-element-890c613 #pathsLoadMoreBtn:hover {

    transform: translateY(-3px);

    box-shadow: 0 22px 34px -14px rgba(139, 120, 230, 1);

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3518 .elementor-element-890c613 .paths-blog-card,

    .page-id-3518 .elementor-element-890c613 .paths-blog-image img {

        transition: none;

    }

}



/* Meet Scientists: Elementor prints its own (transparent) background rule for this container, so the dark base colour has to win over it (the gradient itself is painted by ::before) */

.page-id-3518 .elementor-3518 .elementor-element.elementor-element-890c613:not(.elementor-motion-effects-element-type-background) {

    background-color: #0d0a26;

}



.page-id-3518 .elementor-element-890c613 .purple-heading-cen {

    width: auto !important;

    align-self: center;

    white-space: nowrap;

}



.page-id-3518 .elementor-element-890c613 .section-heading {

    text-align: center;

}



/* ==========================================================================

   Diversity & Inclusion: every CTA back to the theme's button style (solid #6152ad, 11px radius, darker #5845bd on hover, no glow /

   gradient) - hero button, "Apply" links, "Read More" links and "Meet More Scientists". This block comes last so it wins over the

   earlier, fancier versions above.

   ========================================================================== */

/* hero + "Meet More Scientists": the solid theme button */

.page-id-3518 .elementor-element-960f7b8 a,

.page-id-3518 .elementor-element-890c613 #pathsLoadMoreBtn {

    border: 0;

    border-radius: 11px;

    background: #6152ad;

    box-shadow: none;

    color: #ffffff;

    transition: background 0.3s ease, transform 0.3s ease;

}

.page-id-3518 .elementor-element-960f7b8 a:hover,

.page-id-3518 .elementor-element-960f7b8 a:focus,

.page-id-3518 .elementor-element-890c613 #pathsLoadMoreBtn:hover,

.page-id-3518 .elementor-element-890c613 #pathsLoadMoreBtn:focus {

    background: #5845bd;

    box-shadow: none;

    transform: none;

}

.page-id-3518 .elementor-element-890c613 #pathsLoadMoreBtn {

    padding: 10px 22px;

    font-size: 18px;

    font-weight: 600;

}



/* "Apply" (stat cards) and "Read More" (scientist cards): plain purple text links with the arrow / icon, like the original */

.page-id-3518 .elementor-element-aa80515 .alan-button a,

.page-id-3518 .elementor-element-aa80515 .alan-button a:hover {

    padding: 0 !important;

    border-radius: 0;

    background: none;

    box-shadow: none;

    color: #6152ad;

}

.page-id-3518 .elementor-element-aa80515 .alan-button a:hover svg path {

    stroke: #6152ad;

}

.page-id-3518 .elementor-element-890c613 .paths-read-more,

.page-id-3518 .elementor-element-890c613 .paths-blog-card:hover .paths-read-more {

    padding: 0;

    border: 0;

    border-radius: 0;

    background: none;

    color: #c9bcff;

    font-size: 1.5rem;

}

.page-id-3518 .elementor-element-890c613 .paths-blog-card:hover .paths-read-more {

    color: #ffffff;

    gap: 14px;

}



/* Diversity & Inclusion: every section below the hero has the same top / bottom padding (50px) at every screen width. Elementor had

   50px on most of them, 0 at the bottom of the last one and different values on small screens. The hero keeps its own (it clears the

   fixed header and is 100vh tall). */

.page-id-3518 .elementor-3518 > .e-parent:not(.elementor-element-baa9851) > .e-con-inner {

    padding-top: 50px;

    padding-bottom: 50px;

}



/* Hard Numbers: the photo's offset frame sticks out 18px below the row and the eyebrow has ~15px of line-height above its text, so the

   section looked tighter at the bottom than at the top. Extra space under the row evens the visible gap out. */

.page-id-3518 .elementor-element-ca30a3a {

    margin-bottom: 22px;

}





/* Instagram widget in a narrow sidebar (about 1200-1500px screens, sidebar under ~360px wide): the avatar sits on top with the name and

   bio below it, and "Load More" / "Follow on Instagram" are two full-width buttons of exactly the same width. Uses a container query,

   so it follows the width of the card itself, not of the window. */

body .sidebar-instagram {

    container-type: inline-size;

    container-name: igcard;

}

@container igcard (max-width: 360px) {

    body .sidebar-instagram #sb_instagram .sbi_header_text {

        flex-direction: column;

        align-items: flex-start !important;

        gap: 12px !important;

    }

    body .sidebar-instagram #sb_instagram .sbi_feedtheme_header_text {

        flex: none;

        width: 100%;

    }

    body .sidebar-instagram #sb_instagram .sbi_feedtheme_header_text h3 {

        margin: 0 0 6px !important;

    }

    body .sidebar-instagram #sb_instagram #sbi_load {

        flex-direction: column;

        align-items: stretch;

    }

    body .sidebar-instagram #sb_instagram .sbi_load_btn,

    body .sidebar-instagram #sb_instagram .sbi_follow_btn,

    body .sidebar-instagram #sb_instagram .sbi_follow_btn a {

        flex: 0 0 auto;

        width: 100% !important;

        max-width: none;

        box-sizing: border-box;

    }

}





/* ##########################################################################

   TV & MEDIA HIGHLIGHTS PAGE (page-id-4908) - merged from custom-changes.css.

   Every rule below is scoped to .page-id-4908 (nothing here existed in this file before), so it cannot affect other pages. It reuses the

   existing @keyframes jcHeroBlob / jcHeroFadeUp and the generic .wic-scrollcue styles; tvMicGlow is new.

   ########################################################################## */

/* =========================================================================

   TV & MEDIA HIGHLIGHTS PAGE (page-id-4908) - HERO

   Same look as the No Dumb Questions Journal Club hero: soft drifting colour blob, staggered fade-up of the copy, shimmering

   accent, glowing CTA, and the dashed wavy "scroll down" line (built in customjs/custom.js). Here the CTA stays visible and

   the wavy line starts BELOW it, all within the first screen (the hero is 100vh tall).

   Elements: hero #37c04ef, eyebrow #ddbf23d, heading #61b8712, paragraph .banner-subheading, CTA #0e1b2e8.

   ========================================================================= */

.page-id-4908 .elementor-element-37c04ef {

    position: relative;

    overflow: hidden;

}

.page-id-4908 .elementor-element-37c04ef::after {

    content: '';

    position: absolute;

    top: -20%;

    left: -10%;

    right: auto;

    bottom: auto;

    width: 46%;

    height: 140%;

    background:

        radial-gradient(circle at 20% 30%, rgba(152, 128, 244, 0.22) 0%, transparent 55%),

        radial-gradient(circle at 70% 75%, rgba(97, 82, 173, 0.16) 0%, transparent 50%);

    filter: blur(10px);

    pointer-events: none;

    z-index: 1;

    animation: jcHeroBlob 12s ease-in-out infinite;

}

.page-id-4908 .elementor-element-37c04ef > .e-con-inner {

    position: relative;

    z-index: 2;

}



.page-id-4908 .elementor-element-ddbf23d,

.page-id-4908 .elementor-element-61b8712,

.page-id-4908 .elementor-element-94fc204 > .banner-subheading,

.page-id-4908 .elementor-element-0e1b2e8 {

    opacity: 0;

    animation: jcHeroFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-4908 .elementor-element-ddbf23d { animation-delay: 0.05s; }

.page-id-4908 .elementor-element-61b8712 { animation-delay: 0.18s; }

.page-id-4908 .elementor-element-94fc204 > .banner-subheading { animation-delay: 0.32s; }

.page-id-4908 .elementor-element-0e1b2e8 { animation-delay: 0.46s; }



.page-id-4908 .elementor-element-61b8712 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-4908 .elementor-element-61b8712:hover .colorTxt {

    background-position: 100% 0%;

}



.page-id-4908 .elementor-element-0e1b2e8 a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-4908 .elementor-element-0e1b2e8 a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-4908 .elementor-element-0e1b2e8 a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-4908 .elementor-element-0e1b2e8 a:hover::before {

    left: 130%;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-4908 .elementor-element-37c04ef::after {

        animation: none;

    }

    .page-id-4908 .elementor-element-ddbf23d,

    .page-id-4908 .elementor-element-61b8712,

    .page-id-4908 .elementor-element-94fc204 > .banner-subheading,

    .page-id-4908 .elementor-element-0e1b2e8 {

        opacity: 1;

        animation: none;

    }

}



/* =========================================================================

   MEDIA MENTIONS - logo carousel (#f1884b9 in section #cbc1d78): every logo sits on a glass card of the SAME height

   (the logos have different aspect ratios, so the card height is fixed and the logo is contained inside it).

   ========================================================================= */

.page-id-4908 .elementor-element-f1884b9 .swiper-slide {

    height: auto;

}

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-inner {

    box-sizing: border-box;

    height: 110px;

    margin: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 16px 22px;

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.55), rgba(255, 255, 255, 0.22));

    backdrop-filter: blur(14px) saturate(160%);

    -webkit-backdrop-filter: blur(14px) saturate(160%);

    border: 1px solid rgba(255, 255, 255, 0.7);

    border-radius: 16px;

    box-shadow: none;

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-inner:hover {

    transform: translateY(-3px);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.9);

}

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-image {

    width: auto;

    height: auto;

    max-width: 100%;

    max-height: 100%;

    object-fit: contain;

}



/* =========================================================================

   VIDEO FEATURES - cards (youtube highlights slider, container #fa63e55): all cards the same height. The slides stretch to

   the tallest one and each card fills its slide, with the title taking the leftover space (titles differ in length).

   ========================================================================= */

.page-id-4908 .elementor-element-fa63e55 .swiper-wrapper {

    align-items: stretch;

}

.page-id-4908 .elementor-element-fa63e55 .swiper-slide {

    height: auto;

    display: flex;

}

.page-id-4908 .elementor-element-fa63e55 .cvp-card {

    display: flex;

    flex-direction: column;

    width: 100%;

    height: auto;

}

.page-id-4908 .elementor-element-fa63e55 .cvp-title {

    flex: 1 1 auto;

    display: flex;

    align-items: center;

    justify-content: center;

}



/* white section; the cards are tinted (brand lavender), semi-transparent glass with a soft glow so they stand out on white */

.page-id-4908 .elementor-element-cbc1d78 {

    background-color: #fff;

    background-image: none;

}

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-inner {

    background: linear-gradient(135deg, rgba(152, 128, 244, 0.20) 0%, rgba(152, 128, 244, 0.07) 55%, rgba(188, 24, 136, 0.06) 100%);

    border: 1px solid rgba(152, 128, 244, 0.38);

    box-shadow:

        0 10px 28px rgba(97, 82, 173, 0.20),

        0 0 22px rgba(152, 128, 244, 0.22),

        inset 0 1px 0 rgba(255, 255, 255, 0.85),

        inset 0 -1px 0 rgba(152, 128, 244, 0.12);

}

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-inner:hover {

    background: linear-gradient(135deg, rgba(152, 128, 244, 0.28) 0%, rgba(152, 128, 244, 0.12) 55%, rgba(188, 24, 136, 0.09) 100%);

    box-shadow:

        0 16px 36px rgba(97, 82, 173, 0.28),

        0 0 30px rgba(152, 128, 244, 0.38),

        inset 0 1px 0 rgba(255, 255, 255, 0.9);

}



/* phones show one logo at a time: keep the glass card off the screen edges */





/* =========================================================================

   ON THE MIC - podcasts (section #a86f7b1: heading block #914062c, grid #aa30b7b = photo #8726d17 + list shortcode #be5446f)

   Desktop (1025px and up): sticky-scroll, one fold. The section is taller than the screen (height set by customjs/custom.js);

   its inner stage (.e-con-inner) sticks to the top for the whole scroll while the PAGE scroll drives the episode cards upward on the

   right (no inner scrollbar, no scroll trap). The photo stays on the left. The card nearest the middle of the column is

   .is-active: it glows and lifts, the others fade back. A glowing, slowly drifting colour wash sits behind the stage.

   Below 1025px it falls back to the normal stacked list (photo hidden, as before).

   ========================================================================= */





@keyframes tvMicGlow {

    0%   { transform: translate3d(0, 0, 0) scale(1); opacity: 0.85; }

    100% { transform: translate3d(2%, -3%, 0) scale(1.08); opacity: 1; }

}



@media (prefers-reduced-motion: reduce) {

    .page-id-4908 .elementor-element-a86f7b1 > .e-con-inner::before {

        animation: none;

    }

    .page-id-4908 .media-item {

        transition: none;

    }

}



/* below 1025px: plain stacked list, photo hidden (as before) */





/* =========================================================================

   VIDEO FEATURES - hover: the card lifts a little and its thumbnail zooms in slightly

   ========================================================================= */

.page-id-4908 .elementor-element-fa63e55 .cvp-card {

    transition: transform 0.35s ease, box-shadow 0.35s ease;

}

.page-id-4908 .elementor-element-fa63e55 .cvp-thumb {

    overflow: hidden;

}

.page-id-4908 .elementor-element-fa63e55 .cvp-thumb img {

    transition: transform 0.5s ease;

}

.page-id-4908 .elementor-element-fa63e55 .cvp-card:hover {

    transform: translateY(-8px);

    box-shadow: 0 16px 34px rgba(97, 82, 173, 0.28);

}

.page-id-4908 .elementor-element-fa63e55 .cvp-card:hover .cvp-thumb img {

    transform: scale(1.08);

}



/* =========================================================================

   ON THE MIC - "Load More" button: same hover as the banner CTA (glowing lift + light sweep)

   ========================================================================= */

.page-id-4908 .media-highlights-load-more-btn {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-4908 .media-highlights-load-more-btn:hover {

    opacity: 1;

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-4908 .media-highlights-load-more-btn::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-4908 .media-highlights-load-more-btn:hover::before {

    left: 130%;

}



/* 2nd section: logo cards carry no box-shadow (normal or hover) */

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-inner,

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-inner:hover {

    box-shadow: none;

}



/* =========================================================================

   RECOGNITION & REACH (section #7e238f6): three press sliders of .ck-press-card.

   Design language taken from the Non-Traditional Science Careers page (page-id-3499) - the house "beautify" style:

   - background: lavender gradient with a soft lavender glow (top-left) and a peach glow (bottom-right)

   - patches: a thin decorative ring top-right, a ring + glow behind the section heading

   - cards: white, 22px radius, hairline lavender border (rgba(97,82,173,.12)), soft drop shadow; on hover they lift 4px, the

     border turns purple, the photo zooms and a white arrow chip slides in on it; titles turn purple

   - brand-coloured pagination (active dot = pill)

   Cards stay equal height (two title lines / three excerpt lines reserved).

   ========================================================================= */

.page-id-4908 .elementor-element-7e238f6 {

    position: relative;

    overflow: hidden;

    background-image:

        radial-gradient(ellipse 40% 60% at 8% 12%, rgba(185, 168, 255, 0.55) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 35% 55% at 95% 92%, rgba(255, 214, 180, 0.45) 0%, rgba(255, 214, 180, 0) 70%),

        linear-gradient(135deg, #F4F0FF 0%, #EAE3FF 55%, #F8F4FF 100%);

    background-color: #F1ECFF;

}

/* decorative ring, top right */

.page-id-4908 .elementor-element-7e238f6::after {

    content: '';

    position: absolute;

    right: -70px;

    top: -70px;

    width: 240px;

    height: 240px;

    border-radius: 50%;

    border: 2px solid rgba(97, 82, 173, 0.16);

    pointer-events: none;

}

/* second, smaller ring + glow, bottom left */

.page-id-4908 .elementor-element-7e238f6::before {

    content: '';

    position: absolute;

    left: -60px;

    bottom: -60px;

    width: 190px;

    height: 190px;

    border-radius: 50%;

    border: 2px solid rgba(97, 82, 173, 0.14);

    background: radial-gradient(circle, rgba(185, 168, 255, 0.35) 0%, rgba(185, 168, 255, 0) 70%);

    pointer-events: none;

}

.page-id-4908 .elementor-element-7e238f6 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* sub-section titles ("Spotlight Features" ...) */

.page-id-4908 .elementor-element-7e238f6 .e-div-block-base .e-heading-base {

    color: #223973;

    letter-spacing: 0.02em;

}



/* slider: room above the cards so the hover lift is not clipped */

.page-id-4908 .elementor-element-7e238f6 .swiper {

    padding-top: 14px;

}



/* card */

.page-id-4908 .elementor-element-7e238f6 .ck-press-card {

    background: #ffffff;

    border: 1px solid rgba(97, 82, 173, 0.12);

    border-radius: 22px;

    box-shadow: 0 12px 22px -16px rgba(45, 36, 99, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover {

    transform: translateY(-4px);

    border-color: rgba(97, 82, 173, 0.4);

    box-shadow: 0 16px 26px -16px rgba(97, 82, 173, 0.7);

}



/* image + arrow chip */

.page-id-4908 .elementor-element-7e238f6 .ck-press-image {

    position: relative;

    overflow: hidden;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-image img {

    height: 210px;

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover .ck-press-image img {

    transform: scale(1.07);

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-image::after {

    content: '\2192';

    position: absolute;

    right: 14px;

    bottom: 14px;

    width: 38px;

    height: 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffffff;

    color: #6152AD;

    font-size: 2rem;

    font-weight: 700;

    line-height: 1;

    box-shadow: 0 10px 20px -8px rgba(6, 10, 17, 0.5);

    transform: translateY(6px) scale(0.9);

    opacity: 0;

    transition: transform 0.35s ease, opacity 0.35s ease;

    pointer-events: none;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover .ck-press-image::after {

    transform: translateY(0) scale(1);

    opacity: 1;

}



/* text */

.page-id-4908 .elementor-element-7e238f6 .ck-press-content {

    flex: 1 1 auto;

    padding: 18px 20px 22px;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-title {

    color: #1d1b2e;

    font-weight: 700;

    min-height: 2.8em;

    transition: color 0.3s ease;

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover .ck-press-title {

    color: #6152AD;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-excerpt {

    color: #4a4763;

    min-height: 4.8em;

    display: -webkit-box;

    -webkit-line-clamp: 3;

    -webkit-box-orient: vertical;

    overflow: hidden;

}



/* pagination dots */

.page-id-4908 .elementor-element-7e238f6 .swiper-pagination-bullet {

    width: 9px;

    height: 9px;

    background: #cdbff9;

    opacity: 1;

    transition: width 0.3s ease, background 0.3s ease;

}

.page-id-4908 .elementor-element-7e238f6 .swiper-pagination-bullet-active {

    width: 26px;

    border-radius: 6px;

    background: linear-gradient(90deg, #6152AD, #bc1888);

}

@media (prefers-reduced-motion: reduce) {

    .page-id-4908 .elementor-element-7e238f6 .ck-press-card,

    .page-id-4908 .elementor-element-7e238f6 .ck-press-image img,

    .page-id-4908 .elementor-element-7e238f6 .ck-press-image::after {

        transition: none;

    }

}





/* =========================================================================

   SCIENCE FOR EVERYONE (section #400e250: heading block #2004f23, slider #6d0b2aa of .ck-chloe-card, button #5bc4c55 "More Here").

   Same house style as the Non-Traditional Science Careers page (see "beautify" note): white base with a lavender glow (left) and a

   peach glow (right), decorative rings with a soft glow top-left / bottom-right, white cards with a hairline lavender border

   (22px radius, lift + purple border + image zoom + arrow chip on hover), equal-height cards, brand pagination, and the button

   gets the glowing lift + light sweep of the banner CTA.

   ========================================================================= */

.page-id-4908 .elementor-element-400e250 {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 40% 60% at 6% 70%, rgba(185, 168, 255, 0.30) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 60% at 96% 18%, rgba(255, 214, 180, 0.40) 0%, rgba(255, 214, 180, 0) 70%),

        #ffffff;

}

/* ring + glow, top left */

.page-id-4908 .elementor-element-400e250::before {

    content: '';

    position: absolute;

    left: -70px;

    top: -70px;

    width: 220px;

    height: 220px;

    border-radius: 50%;

    border: 2px solid rgba(97, 82, 173, 0.14);

    background: radial-gradient(circle, rgba(185, 168, 255, 0.35) 0%, rgba(185, 168, 255, 0) 70%);

    pointer-events: none;

}

/* ring, bottom right */

.page-id-4908 .elementor-element-400e250::after {

    content: '';

    position: absolute;

    right: -80px;

    bottom: -80px;

    width: 260px;

    height: 260px;

    border-radius: 50%;

    border: 2px solid rgba(97, 82, 173, 0.16);

    pointer-events: none;

}

.page-id-4908 .elementor-element-400e250 > .e-con-inner {

    position: relative;

    z-index: 1;

}



.page-id-4908 .elementor-element-400e250 .swiper {

    padding-top: 14px;

}



/* cards */

.page-id-4908 .elementor-element-400e250 .ck-chloe-card {

    background: #ffffff;

    border: 1px solid rgba(97, 82, 173, 0.12);

    border-radius: 22px;

    box-shadow: 0 12px 22px -16px rgba(45, 36, 99, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-card:hover {

    transform: translateY(-4px);

    border-color: rgba(97, 82, 173, 0.4);

    box-shadow: 0 16px 26px -16px rgba(97, 82, 173, 0.7);

}



/* image + arrow chip */

.page-id-4908 .elementor-element-400e250 .ck-chloe-image {

    position: relative;

    overflow: hidden;

    background: #F6F1FF;

    border-bottom: 1px solid rgba(97, 82, 173, 0.10);

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-image img {

    height: 210px;

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-card:hover .ck-chloe-image img {

    transform: scale(1.07);

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-image::after {

    content: '\2192';

    position: absolute;

    right: 14px;

    bottom: 14px;

    width: 38px;

    height: 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffffff;

    color: #6152AD;

    font-size: 2rem;

    font-weight: 700;

    line-height: 1;

    box-shadow: 0 10px 20px -8px rgba(6, 10, 17, 0.5);

    transform: translateY(6px) scale(0.9);

    opacity: 0;

    transition: transform 0.35s ease, opacity 0.35s ease;

    pointer-events: none;

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-card:hover .ck-chloe-image::after {

    transform: translateY(0) scale(1);

    opacity: 1;

}



/* text */

.page-id-4908 .elementor-element-400e250 .ck-chloe-content {

    padding: 18px 20px 22px;

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-title {

    color: #1d1b2e;

    font-weight: 700;

    min-height: 2.8em;

    transition: color 0.3s ease;

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-card:hover .ck-chloe-title {

    color: #6152AD;

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-excerpt {

    color: #4a4763;

    min-height: 4.8em;

    display: -webkit-box;

    -webkit-line-clamp: 3;

    -webkit-box-orient: vertical;

    overflow: hidden;

}



/* pagination dots */

.page-id-4908 .elementor-element-400e250 .swiper-pagination-bullet {

    width: 9px;

    height: 9px;

    background: #cdbff9;

    opacity: 1;

    transition: width 0.3s ease, background 0.3s ease;

}

.page-id-4908 .elementor-element-400e250 .swiper-pagination-bullet-active {

    width: 26px;

    border-radius: 6px;

    background: linear-gradient(90deg, #6152AD, #bc1888);

}



/* "More Here" button: same glowing lift + light sweep as the banner CTA */

.page-id-4908 .elementor-element-5bc4c55 a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-4908 .elementor-element-5bc4c55 a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-4908 .elementor-element-5bc4c55 a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-4908 .elementor-element-5bc4c55 a:hover::before {

    left: 130%;

}

@media (prefers-reduced-motion: reduce) {

    .page-id-4908 .elementor-element-400e250 .ck-chloe-card,

    .page-id-4908 .elementor-element-400e250 .ck-chloe-image img,

    .page-id-4908 .elementor-element-400e250 .ck-chloe-image::after,

    .page-id-4908 .elementor-element-5bc4c55 a {

        transition: none;

    }

}





/* =========================================================================

   COLLABORATE WITH CHLOE (last section #afc49c4 > #53e01d2): outline icons scattered over the background (science / media

   theme: mic, flask, atom, TV, headphones, bulb, camera, news, chat, DNA, book, sparkles) in the brand purple at 20% opacity.

   They are background-image layers (inline SVG), so they sit behind the content and never block clicks. Mostly at the sides and

   the top / bottom edges so they don't compete with the form and photo.

   ========================================================================= */

.page-id-4908 .elementor-element-afc49c4 {

    position: relative;

    overflow: hidden;

    background:

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(-12%2012%2012)%22%3E%3Crect%20x%3D%229%22%20y%3D%223%22%20width%3D%226%22%20height%3D%2211%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M5%2011a7%207%200%200%200%2014%200M12%2018v3M8%2021h8%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 4% 5% / 66px 66px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(14%2012%2012)%22%3E%3Cpath%20d%3D%22M9%203h6M10%203v6l-5%209a2%202%200%200%200%202%203h10a2%202%200%200%200%202-3l-5-9V3M7.5%2015h9%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 94% 4% / 58px 58px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(0%2012%2012)%22%3E%3Cpath%20d%3D%22M12%203l2%206%206%203-6%203-2%206-2-6-6-3%206-3z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 22% 9% / 34px 34px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(-8%2012%2012)%22%3E%3Cpath%20d%3D%22M21%2012a8%208%200%200%201-11.5%207.2L4%2020l1-4.5A8%208%200%201%201%2021%2012z%22%2F%3E%3Cpath%20d%3D%22M8.5%2011.5h.01M12%2011.5h.01M15.5%2011.5h.01%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 77% 11% / 48px 48px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(10%2012%2012)%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%221.6%22%2F%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%2210%22%20ry%3D%224%22%2F%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%2210%22%20ry%3D%224%22%20transform%3D%22rotate(60%2012%2012)%22%2F%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%2210%22%20ry%3D%224%22%20transform%3D%22rotate(120%2012%2012)%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 8% 30% / 56px 56px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(-6%2012%2012)%22%3E%3Crect%20x%3D%223%22%20y%3D%226%22%20width%3D%2218%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%2021h8M12%2018v3M9%202.5l3%203.5%203-3.5%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 92% 27% / 62px 62px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(18%2012%2012)%22%3E%3Cpath%20d%3D%22M7%203c0%206%2010%206%2010%2012s-10%206-10%206M17%203c0%206-10%206-10%2012s10%206%2010%206M8.5%207.5h7M8.5%2016.5h7%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 18% 47% / 50px 50px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(8%2012%2012)%22%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M7%208h6M7%2012h10M7%2016h10%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 85% 47% / 48px 48px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(-10%2012%2012)%22%3E%3Cpath%20d%3D%22M4%2015v-3a8%208%200%200%201%2016%200v3%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2214%22%20width%3D%224%22%20height%3D%227%22%20rx%3D%221.5%22%2F%3E%3Crect%20x%3D%2217%22%20y%3D%2214%22%20width%3D%224%22%20height%3D%227%22%20rx%3D%221.5%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 3% 64% / 60px 60px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(12%2012%2012)%22%3E%3Cpath%20d%3D%22M9%2018h6M10%2021h4M12%203a6%206%200%200%200-4%2010.5c.7.7%201%201.5%201%202.5h6c0-1%20.3-1.8%201-2.5A6%206%200%200%200%2012%203z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 96% 63% / 54px 54px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(-14%2012%2012)%22%3E%3Cpath%20d%3D%22M4%204.5A1.5%201.5%200%200%201%205.5%203H20v15H5.5A1.5%201.5%200%200%200%204%2019.5zM4%2019.5A1.5%201.5%200%200%200%205.5%2021H20v-3%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 14% 82% / 52px 52px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(7%2012%2012)%22%3E%3Crect%20x%3D%223%22%20y%3D%226%22%20width%3D%2213%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M16%2010l5-3v10l-5-3%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 88% 80% / 58px 58px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(0%2012%2012)%22%3E%3Cpath%20d%3D%22M12%203l2%206%206%203-6%203-2%206-2-6-6-3%206-3z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 70% 93% / 40px 40px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(-20%2012%2012)%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%221.6%22%2F%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%2210%22%20ry%3D%224%22%2F%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%2210%22%20ry%3D%224%22%20transform%3D%22rotate(60%2012%2012)%22%2F%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%2210%22%20ry%3D%224%22%20transform%3D%22rotate(120%2012%2012)%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 30% 95% / 40px 40px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(16%2012%2012)%22%3E%3Crect%20x%3D%229%22%20y%3D%223%22%20width%3D%226%22%20height%3D%2211%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M5%2011a7%207%200%200%200%2014%200M12%2018v3M8%2021h8%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 52% 97% / 38px 38px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(0%2012%2012)%22%3E%3Cpath%20d%3D%22M12%203l2%206%206%203-6%203-2%206-2-6-6-3%206-3z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 5% 92% / 30px 30px no-repeat,

        rgba(248, 229, 215, 0.71);

}

.page-id-4908 .elementor-element-afc49c4 > .e-con-inner {

    position: relative;

    z-index: 1;

}





/* SCIENCE FOR EVERYONE - card text area: just a soft purple gradient coming in from the right (no rings, accent bar or yellow glow) */

.page-id-4908 .elementor-element-400e250 .ck-chloe-content {

    background: linear-gradient(270deg, rgba(185, 168, 255, 0.30) 0%, rgba(185, 168, 255, 0) 65%), #ffffff;

}



/* On the Mic heading block: centre the title / heading / sub-line on tablet and phone (the heading widgets were shrink-wrapped to the left) */





/* On the Mic on short / small laptop screens: tighter stage so the card column keeps a usable height */





/* SCIENCE FOR EVERYONE - purple accent bar down the left edge of the card text area */

.page-id-4908 .elementor-element-400e250 .ck-chloe-content {

    position: relative;

    padding-left: 24px;

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-content::before {

    content: '';

    position: absolute;

    left: 0;

    top: 0;

    bottom: 0;

    width: 4px;

    background: linear-gradient(180deg, #6152AD 0%, #B9A8FF 100%);

    pointer-events: none;

}



/* ==========================================================================

   DIVERSITY & INCLUSION IN STEM - "BE THE CHANGE"  (page-id-3518, section #8e0bad6; row #843798e = left column #968daba (heading block

   #1847ca2 + photo #4764b95) and right column #f60b71b > #43b4644 = five step boxes. Each box = number badge column + white card

   (#b30bc83: image-box text + icon container .cringe-bx-icon).

   Desktop (1025px and up): white section; the left column stays pinned while the page scrolls; the cards rise into place one after

   another (fade + slide up); the dotted line down the badges fills with colour as you scroll and each number badge lights up when the

   line reaches it. Number badges and icons are now drawn in CSS (numbers from a counter, line icons as gradient SVG) instead of the old

   PNG pictures. customjs/custom.js measures the line and sets --dl-x / --dl-top / --dl-h / --dl-p, adds .d-in (card visible) and

   .is-active (badge reached). Without JavaScript everything simply stays visible. Text and links are unchanged.

   ========================================================================== */

.page-id-3518 .elementor-3518 .elementor-element.elementor-element-8e0bad6:not(.elementor-motion-effects-element-type-background) {

    background-color: #ffffff !important;

    background-image: none !important;

}



/* row + pinned left column */

.page-id-3518 .elementor-element-843798e {

    align-items: flex-start;

}





/* steps */

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 {

    position: relative;

    gap: 26px;

    counter-reset: dstep;

}



.page-id-3518 .elementor-element-8e0bad6 .cringe-box::before {

    display: none;

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con {

    position: relative;

    z-index: 1;

    counter-increment: dstep;

    align-items: center;

    gap: 22px;

    padding: 0;

}



/* dotted line (track + the part that fills while scrolling) */

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644::before,

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644::after {

    content: "";

    position: absolute;

    left: calc(var(--dl-x, 46px) - 1.5px);

    top: var(--dl-top, 60px);

    width: 0;

    z-index: 0;

    pointer-events: none;

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644::before {

    height: var(--dl-h, 0px);

    border-left: 3px dotted #d9d1f3;

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644::after {

    height: calc(var(--dl-h, 0px) * var(--dl-p, 0));

    border-left: 3px dotted #6152ad;

}



/* number badge (the old picture is hidden, the number comes from the counter) */

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con > .e-con:first-child {

    flex: 0 0 44px;

    width: 44px;

    height: 44px;

    padding: 0;

    display: grid;

    place-items: center;

    border-radius: 50%;

    background: #ffffff;

    box-shadow: 0 0 0 5px #ffffff;

    position: relative;

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con > .e-con:first-child .elementor-widget {

    display: none;

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con > .e-con:first-child::before {

    content: counter(dstep, decimal-leading-zero);

    display: grid;

    place-items: center;

    width: 40px;

    height: 40px;

    border-radius: 50%;

    background: #efebfd;

    border: 2px solid #ddd5f7;

    color: #6152ad;

    font-size: 1.3rem;

    font-weight: 800;

    letter-spacing: 0.02em;

    transition: background 0.4s ease, color 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease, transform 0.4s ease;

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con.is-active > .e-con:first-child::before {

    background: linear-gradient(135deg, #6152ad 0%, #8b78e6 100%);

    border-color: transparent;

    color: #ffffff;

    transform: scale(1.08);

    box-shadow: 0 10px 20px -8px rgba(97, 82, 173, 0.8);

}



/* card */

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con > .e-con:nth-child(2) {

    flex: 1 1 auto;

    min-width: 0;

    gap: 16px;

    padding: 14px 20px;

    background: #ffffff;

    border: 1px solid #ece8f8;

    border-radius: 18px;

    box-shadow: 0 14px 28px -24px rgba(67, 54, 143, 0.5);

    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease, opacity 0.6s ease;

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con:hover > .e-con:nth-child(2) {

    transform: translateY(-4px);

    border-color: #cfc5f2;

    box-shadow: 0 26px 42px -26px rgba(67, 54, 143, 0.6);

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-image-box-title {

    margin-bottom: 4px;

    font-size: 1.8rem;

    font-weight: 700;

    color: #14122b;

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-image-box-description {

    margin: 0;

    color: #4a4668;

    font-size: 1.5rem;

    line-height: 1.5;

}



/* modern icon tile (the old picture is hidden, the line icon is a gradient SVG) */

.page-id-3518 .elementor-element-8e0bad6 .cringe-bx-icon {

    position: relative;

    flex: 0 0 52px;

    width: 52px;

    height: 52px;

    padding: 0;

    border-radius: 50%;

    background: #efebfd;

    border: 1px solid #e3dcf8;

    transition: transform 0.4s ease, background 0.3s ease;

}

.page-id-3518 .elementor-element-8e0bad6 .cringe-bx-icon .elementor-widget {

    display: none;

}

.page-id-3518 .elementor-element-8e0bad6 .cringe-bx-icon::before {

    content: "";

    position: absolute;

    inset: 0;

    background-repeat: no-repeat;

    background-position: center;

    background-size: 26px 26px;

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con:hover .cringe-bx-icon {

    transform: scale(1.08);

    background: #e6dffb;

}



/* cards rise into place (only when custom.js is running) */

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644.d-reveal-on > .e-con:not(.d-in) > .e-con:nth-child(2) {

    opacity: 0;

    transform: translateY(54px);

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644.d-reveal-on > .e-con:not(.d-in) > .e-con:first-child {

    opacity: 0;

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con > .e-con:first-child {

    transition: opacity 0.6s ease;

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644.d-reveal-on > .e-con:not(.d-in) > .e-con {

        opacity: 1 !important;

        transform: none !important;

    }

    .page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con > .e-con:nth-child(2),

    .page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con > .e-con:first-child::before {

        transition: none;

    }

}



/* tablet / phone: no pinned column, smaller badge */





/* the five icons */

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con:nth-child(1) .cringe-bx-icon::before {

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%236152ad'/%3E%3Cstop offset='1' stop-color='%23bc1888'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M3 11v2a1 1 0 0 0 1 1h2l5 4V6L6 10H4a1 1 0 0 0-1 1z'/%3E%3Cpath d='M15.5 8.5a5 5 0 0 1 0 7'/%3E%3Cpath d='M18.5 6a9 9 0 0 1 0 12'/%3E%3C/svg%3E");

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con:nth-child(2) .cringe-bx-icon::before {

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%236152ad'/%3E%3Cstop offset='1' stop-color='%23bc1888'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M11 14h2a2 2 0 1 0 0-4h-3c-.6 0-1.1.2-1.4.6L3 16'/%3E%3Cpath d='m7 20 1.6 1.4c.3.4.8.6 1.4.6h4c1.1 0 2.1-.4 2.8-1.2l4.6-4.6a2 2 0 0 0-2.8-2.8l-3.9 3.7'/%3E%3Cpath d='m2 15 6 6'/%3E%3Cpath d='M19.5 8.5c.7-.7 1.5-1.6 1.5-2.7A2.73 2.73 0 0 0 16 4a2.78 2.78 0 0 0-5 1.8c0 1.2.8 2 1.5 2.8L16 12Z'/%3E%3C/svg%3E");

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con:nth-child(3) .cringe-bx-icon::before {

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%236152ad'/%3E%3Cstop offset='1' stop-color='%23bc1888'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M2 4h6a4 4 0 0 1 4 4v13a3 3 0 0 0-3-3H2z'/%3E%3Cpath d='M22 4h-6a4 4 0 0 0-4 4v13a3 3 0 0 1 3-3h7z'/%3E%3C/svg%3E");

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con:nth-child(4) .cringe-bx-icon::before {

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%236152ad'/%3E%3Cstop offset='1' stop-color='%23bc1888'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M21 12a8 8 0 0 1-11.7 7L4 20l1-4.3A8 8 0 1 1 21 12z'/%3E%3Cpath d='M9 12h.01M12.5 12h.01M16 12h.01'/%3E%3C/svg%3E");

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-43b4644 > .e-con:nth-child(5) .cringe-bx-icon::before {

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%236152ad'/%3E%3Cstop offset='1' stop-color='%23bc1888'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.9'/%3E%3Cpath d='M16 3.1a4 4 0 0 1 0 7.8'/%3E%3C/svg%3E");

}



/* "Be the Change" photo: wider, soft feathered edges + rounded corners, and decorative patches behind it (pastel panel, dot grid, ring,

   peach dot). The picture is a cut-out PNG with an arched, transparent top and hard straight sides / bottom - a mask fades those

   edges out and the corners are rounded. Patches sit behind the photo and never take clicks. */



.page-id-3518 .elementor-element-4764b95 {

    position: relative;

    z-index: 1;

    isolation: isolate;

    padding: 14px 18px 22px 10px;

}

.page-id-3518 .elementor-element-4764b95 img {

    position: relative;

    z-index: 2;

    display: block;

    width: 100%;

    height: clamp(260px, calc(100vh - 500px), 440px);

    max-height: none;

    object-fit: cover;

    object-position: center top;

    border-radius: 36px;

    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%), linear-gradient(180deg, #000 0, #000 86%, transparent 100%);

    mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%), linear-gradient(180deg, #000 0, #000 86%, transparent 100%);

    -webkit-mask-composite: source-in;

    mask-composite: intersect;

    filter: drop-shadow(0 18px 24px rgba(97, 82, 173, 0.22));

}

/* round halo behind the photo's arched top (stays inside the photo box, nothing reaches the dotted line) */

.page-id-3518 .elementor-element-4764b95::before {

    content: "";

    position: absolute;

    z-index: 0;

    top: 0;

    left: 50%;

    width: 92%;

    aspect-ratio: 1;

    transform: translateX(-50%);

    border-radius: 50%;

    background: linear-gradient(150deg, #efe9ff 0%, #f4ecff 50%, #ffe6d6 100%);

    pointer-events: none;

}

/* dot grid, top right (inside the photo box) */

.page-id-3518 .elementor-element-4764b95::after {

    content: "";

    position: absolute;

    z-index: 1;

    right: 22px;

    top: 4px;

    width: 96px;

    height: 80px;

    background: radial-gradient(circle, #8b78e6 2.2px, transparent 2.8px) 0 0 / 16px 16px;

    opacity: 0.5;

    pointer-events: none;

}

/* ring and peach dot, both on the left of the column behind the photo */

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-968daba::before,

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-968daba::after {

    content: "";

    position: absolute;

    z-index: 0;

    border-radius: 50%;

    pointer-events: none;

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-968daba::before {

    top: auto;

    right: auto;

    left: 2px;

    bottom: 120px;

    width: 58px;

    height: 58px;

    border: 3px solid rgba(97, 82, 173, 0.28);

    animation: dPatchFloat 7s ease-in-out infinite;

}

.page-id-3518 .elementor-element-8e0bad6 .elementor-element-968daba::after {

    top: auto;

    right: auto;

    left: 46px;

    bottom: 18px;

    width: 46px;

    height: 46px;

    background: linear-gradient(135deg, #ffc9a8, #ff9ac4);

    opacity: 0.75;

    animation: dPatchFloat 9s ease-in-out infinite reverse;

}

@keyframes dPatchFloat {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-12px); }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3518 .elementor-element-8e0bad6 .elementor-element-968daba::before,

    .page-id-3518 .elementor-element-8e0bad6 .elementor-element-968daba::after {

        animation: none;

    }

}





/* ==========================================================================

   DIVERSITY & INCLUSION - "QUICK CUTS"  (page-id-3518, section #fc24fde: heading block #7991525, reels shortcode #14ce84b).

   Light lavender background and a compact layout: tighter spacing and frame, and the reel pictures take the height that is left in the

   window (150 - 420px). Font sizes are NOT changed here: the heading, sub-line and card text keep the theme sizes used on every other

   section (an earlier version shrank them, which broke the consistency).

   ========================================================================== */

.page-id-3518 .elementor-3518 .elementor-element.elementor-element-fc24fde:not(.elementor-motion-effects-element-type-background) {

    background-color: #f6f3fd !important;

}

.page-id-3518 .elementor-element-fc24fde {

    position: relative;

    overflow: hidden;

}

.page-id-3518 .elementor-element-fc24fde::before {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background:

        radial-gradient(ellipse 40% 55% at 8% 0%, rgba(185, 168, 255, 0.35) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 35% 50% at 96% 100%, rgba(255, 214, 180, 0.40) 0%, rgba(255, 214, 180, 0) 70%);

}

.page-id-3518 .elementor-element-fc24fde > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* heading block */

.page-id-3518 .elementor-element-fc24fde .elementor-element-7991525 {

    gap: 6px;

}

.page-id-3518 .elementor-element-fc24fde .elementor-element-6c67d75 {

    line-height: 1;

}

.page-id-3518 .elementor-element-fc24fde .section-heading {

    margin: 0;

}

.page-id-3518 .elementor-element-fc24fde .section-subheading {

    max-width: 1000px;

    margin: 0 auto 18px;

}



/* the Instagram-style block */

.page-id-3518 .ck-diversity-reels-section {

    padding: 12px 14px 0;

    margin-top: 6px;

}

.page-id-3518 .ck-diversity-swiper {

    padding-top: 0;

    padding-bottom: 26px;

}

.page-id-3518 .ck-diversity-reels-section .ig-profile {

    padding-bottom: 10px;

}

.page-id-3518 .ck-diversity-reels-section .ig-avatar-lg {

    width: 44px;

    height: 44px;

}

.page-id-3518 .ck-diversity-reels-section .ig-head {

    padding-top: 8px;

    padding-bottom: 8px;

}

.page-id-3518 .ck-diversity-reels-section .ck-reel-thumbnail {

    height: clamp(150px, calc(100vh - 700px), 420px);

}

.page-id-3518 .ck-diversity-reels-section .ck-reel-thumbnail img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    object-position: center 22%;

}

.page-id-3518 .ck-diversity-reels-section .ig-actions {

    padding-top: 8px;

    padding-bottom: 2px;

}

.page-id-3518 .ck-diversity-reels-section .ck-reel-content {

    padding-top: 4px;

    padding-bottom: 10px;

}

.page-id-3518 .ck-diversity-reels-section .ck-reel-content h3 {

    margin-bottom: 4px;

}

.page-id-3518 .ck-diversity-reels-section .ck-reel-content p {

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

}

.page-id-3518 .ck-diversity-reels-section .ig-view {

    margin-top: 4px;

}

.page-id-3518 .ck-diversity-swiper .swiper-pagination {

    bottom: 6px !important;

    top: auto !important;

}





/* ==========================================================================

   DIVERSITY & INCLUSION IN STEM - "YOUR TURN"  (page-id-3518, last section #0e9533d: row #4ef2ce9 = text column #0af0676 > #2709b06

   (eyebrow, heading, paragraph, "Stay Connected" button) + photo column #a3a5f8d).

   Open layout (no box): the photo sits on the section's bottom edge with a

   round gradient halo and a dot grid behind it, and two white icon chips (chat, sparkle) float beside it; the text side gets a bigger

   heading with a gradient accent word and a soft ring. Tablet / phone: text above, photo below, chips hidden. Text and link unchanged.

   ========================================================================== */

.page-id-3518 .elementor-element-0e9533d .elementor-element-4ef2ce9 {

    position: relative;

    width: 100% !important;

    max-width: 1140px;

    margin-left: auto;

    margin-right: auto;

    box-sizing: border-box;

    padding: 0;

    gap: 24px;

    align-items: flex-end;

}

/* open section (no box): the photo stands on the section's bottom edge, the halo is cut off there */

.page-id-3518 .elementor-element-0e9533d {

    position: relative;

    overflow: hidden;

}

.page-id-3518 .elementor-3518 > .e-parent.elementor-element-0e9533d > .e-con-inner {

    padding-bottom: 0;

}

.page-id-3518 .elementor-element-0e9533d .elementor-element-0af0676 {

    position: relative;

    z-index: 2;

    flex: 1 1 52%;

    min-width: 0;

    align-self: center;

    padding: 0 0 44px;

}

.page-id-3518 .elementor-element-0e9533d .elementor-element-0af0676::after {

    content: "";

    position: absolute;

    left: -70px;

    bottom: -20px;

    width: 150px;

    height: 150px;

    border-radius: 50%;

    border: 2px solid rgba(97, 82, 173, 0.16);

    pointer-events: none;

}

.page-id-3518 .elementor-element-0e9533d .section-heading {

    font-size: clamp(3rem, 2rem + 1.8vw, 4.8rem);

    font-weight: 700;

    letter-spacing: -0.01em;

    line-height: 1.15;

    color: #14122b;

}

.page-id-3518 .elementor-element-0e9533d .section-heading .colorTxt {

    background: linear-gradient(90deg, #223973 0%, #6152ad 60%, #8b78e6 100%);

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

}

.page-id-3518 .elementor-element-0e9533d .section-subheading {

    max-width: 520px;

}

.page-id-3518 .elementor-element-0e9533d .section-subheading .elementor-heading-title {

    font-size: 1.7rem;

    font-weight: 500;

    line-height: 1.65;

    color: #4a4668;

}



/* photo column: halo + dot grid behind, the photo stands on the card's bottom edge */

.page-id-3518 .elementor-element-0e9533d .elementor-element-a3a5f8d {

    position: relative;

    flex: 0 0 46%;

    align-self: flex-end;

    isolation: isolate;

}

.page-id-3518 .elementor-element-0e9533d .elementor-element-a3a5f8d::before {

    content: "";

    position: absolute;

    z-index: 0;

    left: 6%;

    bottom: -22%;

    width: 88%;

    aspect-ratio: 1;

    border-radius: 50%;

    background: linear-gradient(150deg, #e2d9ff 0%, #f1e6ff 50%, #ffd9c2 100%);

    opacity: 0.85;

    pointer-events: none;

}

.page-id-3518 .elementor-element-0e9533d .elementor-element-a3a5f8d::after {

    content: "";

    position: absolute;

    z-index: 0;

    right: 0;

    top: -18px;

    width: 104px;

    height: 84px;

    background: radial-gradient(circle, #8b78e6 2.2px, transparent 2.8px) 0 0 / 16px 16px;

    opacity: 0.45;

    pointer-events: none;

}

.page-id-3518 .elementor-element-0e9533d .elementor-element-983ee9d {

    position: relative;

    z-index: 2;

}

.page-id-3518 .elementor-element-0e9533d .elementor-element-983ee9d img {

    display: block;

    width: 100%;

    height: auto;

    filter: drop-shadow(0 18px 24px rgba(97, 82, 173, 0.25));

}



/* floating icon chips (on the card, beside the photo) */

.page-id-3518 .elementor-element-0e9533d .elementor-element-4ef2ce9::before,

.page-id-3518 .elementor-element-0e9533d .elementor-element-4ef2ce9::after {

    content: "";

    position: absolute;

    z-index: 3;

    width: 54px;

    height: 54px;

    border-radius: 50%;

    background-color: #ffffff;

    background-repeat: no-repeat;

    background-position: center;

    background-size: 26px 26px;

    border: 1px solid #e6def9;

    box-shadow: 0 16px 26px -14px rgba(67, 54, 143, 0.55);

    pointer-events: none;

}

.page-id-3518 .elementor-element-0e9533d .elementor-element-4ef2ce9::before {

    top: 15%;

    left: 51%;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.7 7L4 20l1-4.3A8 8 0 1 1 21 12z'/%3E%3Cpath d='M9 12h.01M12.5 12h.01M16 12h.01'/%3E%3C/svg%3E");

    animation: dChipFloat 6s ease-in-out infinite;

}

.page-id-3518 .elementor-element-0e9533d .elementor-element-4ef2ce9::after {

    top: 44%;

    right: 3.5%;

    width: 48px;

    height: 48px;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l1.9 5.1L19 10l-5.1 1.9L12 17l-1.9-5.1L5 10l5.1-1.9z'/%3E%3Cpath d='M19 16l.7 1.8L21.5 18.5l-1.8.7L19 21l-.7-1.8-1.8-.7 1.8-.7z'/%3E%3C/svg%3E");

    animation: dChipFloat 7.5s ease-in-out infinite reverse;

}

@keyframes dChipFloat {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-12px); }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3518 .elementor-element-0e9533d .elementor-element-4ef2ce9::before,

    .page-id-3518 .elementor-element-0e9533d .elementor-element-4ef2ce9::after {

        animation: none;

    }

}



/* tablet / phone */





/* ==========================================================================

   REFORMING ACADEMIA PODCAST - HERO  (page-id-3508, hero #b104b00: text block #09ef8cb = eyebrow #b0e1c26, heading #c4d5f5c, intro

   paragraph, divider, hosts paragraph; platform buttons grid #17147c3 = Apple #18c3ed1, Spotify #7915611, YouTube #f12ce02).

   Same hero language as the other pages: a soft drifting colour blob, staggered fade-up of the copy, a light wash from the left so the

   text never sits on the photo, a gradient accent word, a small animated sound-wave beside the eyebrow, the hosts line as a frosted

   card with an accent bar, platform buttons that lift with an arrow chip, two floating mic / headphone chips and the dashed

   "scroll down" cue (custom.js). Font sizes are unchanged; text and links untouched.

   ========================================================================== */

.page-id-3508 .elementor-element-b104b00 {

    position: relative;

    overflow: hidden;

}

.page-id-3508 .elementor-element-b104b00::before {

    content: "";

    position: absolute;

    inset: 0;

    z-index: 1;

    pointer-events: none;

    background: linear-gradient(90deg, rgba(245, 242, 252, 0.88) 0%, rgba(245, 242, 252, 0.6) 40%, rgba(245, 242, 252, 0) 62%);

}

.page-id-3508 .elementor-element-b104b00::after {

    content: "";

    position: absolute;

    z-index: 1;

    top: -20%;

    left: -10%;

    right: auto;

    bottom: auto;

    width: 46%;

    height: 140%;

    background:

        radial-gradient(circle at 20% 30%, rgba(152, 128, 244, 0.22) 0%, transparent 55%),

        radial-gradient(circle at 70% 75%, rgba(97, 82, 173, 0.16) 0%, transparent 50%);

    filter: blur(10px);

    pointer-events: none;

    animation: jcHeroBlob 12s ease-in-out infinite;

}

.page-id-3508 .elementor-element-b104b00 > .e-con-inner {

    position: relative;

    z-index: 2;

}



/* gradient accent word */

.page-id-3508 .elementor-element-b104b00 .banner-inner-heading .colorTxt {

    background: linear-gradient(90deg, #223973 0%, #6152ad 60%, #8b78e6 100%);

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

}



/* sound-wave beside the eyebrow */

@property --eq1 { syntax: "<length>"; inherits: false; initial-value: 6px; }

@property --eq2 { syntax: "<length>"; inherits: false; initial-value: 16px; }

@property --eq3 { syntax: "<length>"; inherits: false; initial-value: 10px; }

@property --eq4 { syntax: "<length>"; inherits: false; initial-value: 20px; }

.page-id-3508 .elementor-element-b104b00 .elementor-element-09ef8cb::before {

    content: "";

    position: absolute;

    top: 14px;

    left: 262px;

    width: 30px;

    height: 22px;

    background:

        linear-gradient(#6152ad, #6152ad) 0 50% / 4px var(--eq1) no-repeat,

        linear-gradient(#8b78e6, #8b78e6) 9px 50% / 4px var(--eq2) no-repeat,

        linear-gradient(#6152ad, #6152ad) 18px 50% / 4px var(--eq3) no-repeat,

        linear-gradient(#b9a8ff, #b9a8ff) 27px 50% / 3px var(--eq4) no-repeat;

    border-radius: 2px;

    animation: pdEq1 1.1s ease-in-out infinite, pdEq2 0.9s ease-in-out infinite, pdEq3 1.3s ease-in-out infinite, pdEq4 1s ease-in-out infinite;

    pointer-events: none;

}

@keyframes pdEq1 { 0%, 100% { --eq1: 6px; } 50% { --eq1: 20px; } }

@keyframes pdEq2 { 0%, 100% { --eq2: 18px; } 50% { --eq2: 6px; } }

@keyframes pdEq3 { 0%, 100% { --eq3: 8px; } 50% { --eq3: 22px; } }

@keyframes pdEq4 { 0%, 100% { --eq4: 20px; } 50% { --eq4: 8px; } }



/* divider + hosts card */

.page-id-3508 .elementor-element-b104b00 .e-947f60c-c93b1d2 {

    height: 3px;

    border: 0;

    background: linear-gradient(90deg, #6152ad 0%, #b9a8ff 55%, rgba(185, 168, 255, 0) 100%);

}

.page-id-3508 .elementor-element-b104b00 .e-6d93a8b-e9d0bd5 {

    padding: 14px 20px;

    border-left: 4px solid #6152ad;

    border-radius: 0 14px 14px 0;

    background: rgba(255, 255, 255, 0.68);

    -webkit-backdrop-filter: blur(6px);

    backdrop-filter: blur(6px);

    box-shadow: 0 16px 30px -24px rgba(67, 54, 143, 0.45);

}

.page-id-3508 .elementor-element-b104b00 .e-6d93a8b-e9d0bd5 strong {

    color: #3b2f86;

}



/* platform buttons */

.page-id-3508 .elementor-element-b104b00 .elementor-element-17147c3 > a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 14px 26px -16px rgba(34, 24, 92, 0.55);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;

}

.page-id-3508 .elementor-element-b104b00 .elementor-element-17147c3 > a:hover {

    transform: translateY(-5px);

    box-shadow: 0 22px 34px -16px rgba(34, 24, 92, 0.7);

}

.page-id-3508 .elementor-element-b104b00 .elementor-element-17147c3 > a::after {

    content: "92";

    position: absolute;

    right: 12px;

    top: 50%;

    width: 28px;

    height: 28px;

    margin-top: -14px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.22);

    color: #ffffff;

    font-size: 1.6rem;

    line-height: 1;

    opacity: 0;

    transform: translateX(-8px);

    transition: opacity 0.3s ease, transform 0.3s ease;

}

.page-id-3508 .elementor-element-b104b00 .elementor-element-f12ce02::after {

    background: #efebfd;

    color: #6152ad;

}

.page-id-3508 .elementor-element-b104b00 .elementor-element-17147c3 > a:hover::after {

    opacity: 1;

    transform: translateX(0);

}

.page-id-3508 .elementor-element-b104b00 .elementor-element-17147c3 > a img {

    transition: transform 0.35s ease;

}

.page-id-3508 .elementor-element-b104b00 .elementor-element-17147c3 > a:hover img {

    transform: scale(1.1);

}



/* floating mic / headphone chips (right of the text, over the photo's soft edge) */

.page-id-3508 .elementor-element-b104b00 .elementor-element-6dd3824::before,

.page-id-3508 .elementor-element-b104b00 .elementor-element-6dd3824::after {

    content: "";

    position: absolute;

    z-index: 3;

    width: 52px;

    height: 52px;

    border-radius: 50%;

    background-color: #ffffff;

    background-repeat: no-repeat;

    background-position: center;

    background-size: 26px 26px;

    border: 1px solid #e6def9;

    box-shadow: 0 16px 26px -14px rgba(67, 54, 143, 0.55);

    pointer-events: none;

}

.page-id-3508 .elementor-element-b104b00 .elementor-element-6dd3824::before {

    top: 8%;

    left: 58%;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='3' width='6' height='11' rx='3'/%3E%3Cpath d='M5 11a7 7 0 0 0 14 0M12 18v3M8 21h8'/%3E%3C/svg%3E");

    animation: pdChip 6s ease-in-out infinite;

}

.page-id-3508 .elementor-element-b104b00 .elementor-element-6dd3824::after {

    bottom: 6%;

    left: 66%;

    width: 46px;

    height: 46px;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 15v-3a8 8 0 0 1 16 0v3'/%3E%3Crect x='3' y='14' width='4' height='7' rx='1.5'/%3E%3Crect x='17' y='14' width='4' height='7' rx='1.5'/%3E%3C/svg%3E");

    animation: pdChip 7.5s ease-in-out infinite reverse;

}

@keyframes pdChip {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-12px); }

}



/* staggered entrance */

.page-id-3508 .elementor-element-b104b00 .elementor-element-b0e1c26,

.page-id-3508 .elementor-element-b104b00 .elementor-element-c4d5f5c,

.page-id-3508 .elementor-element-b104b00 .e-f533294-0e4c3d5,

.page-id-3508 .elementor-element-b104b00 .e-947f60c-c93b1d2,

.page-id-3508 .elementor-element-b104b00 .e-6d93a8b-e9d0bd5,

.page-id-3508 .elementor-element-b104b00 .elementor-element-17147c3 {

    opacity: 0;

    animation: jcHeroFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-3508 .elementor-element-b104b00 .elementor-element-b0e1c26 { animation-delay: 0.05s; }

.page-id-3508 .elementor-element-b104b00 .elementor-element-c4d5f5c { animation-delay: 0.18s; }

.page-id-3508 .elementor-element-b104b00 .e-f533294-0e4c3d5 { animation-delay: 0.3s; }

.page-id-3508 .elementor-element-b104b00 .e-947f60c-c93b1d2 { animation-delay: 0.38s; }

.page-id-3508 .elementor-element-b104b00 .e-6d93a8b-e9d0bd5 { animation-delay: 0.46s; }

.page-id-3508 .elementor-element-b104b00 .elementor-element-17147c3 { animation-delay: 0.58s; }





@media (prefers-reduced-motion: reduce) {

    .page-id-3508 .elementor-element-b104b00::after,

    .page-id-3508 .elementor-element-b104b00 .elementor-element-09ef8cb::before,

    .page-id-3508 .elementor-element-b104b00 .elementor-element-6dd3824::before,

    .page-id-3508 .elementor-element-b104b00 .elementor-element-6dd3824::after {

        animation: none;

    }

    .page-id-3508 .elementor-element-b104b00 .elementor-element-b0e1c26,

    .page-id-3508 .elementor-element-b104b00 .elementor-element-c4d5f5c,

    .page-id-3508 .elementor-element-b104b00 .e-f533294-0e4c3d5,

    .page-id-3508 .elementor-element-b104b00 .e-947f60c-c93b1d2,

    .page-id-3508 .elementor-element-b104b00 .e-6d93a8b-e9d0bd5,

    .page-id-3508 .elementor-element-b104b00 .elementor-element-17147c3 {

        opacity: 1;

        animation: none;

    }

}



/* ==========================================================================

   REFORMING ACADEMIA PODCAST - "FRESH DROP / LATEST EPISODE"  (page-id-3508, section #35b6d98 > column #c0e03b5: heading block #c5aa212,

   latest-episode shortcode #f08868e (.latest-podcast-wrapper = .latest-podcast-video + .latest-podcast-content), platform buttons #62276b9).

   New layout (desktop): heading on top; the video big on the left inside a gradient frame; on the right ONE panel with the episode

   badge, title, description and - moved up from the bottom of the section - the two listen buttons. The wrappers are made

   "display: contents" so the video, the text and the buttons become cells of one grid on the column (no markup change).

   Look: white section, gradient video frame with a halo, white text panel with a live audio waveform under the text, pulsing "episode" pill,

   floating chips.

   Font sizes stay as the shortcode sets them. Tablet / phone: video, text, buttons stacked.

   ========================================================================== */

.page-id-3508 .elementor-element-35b6d98 {

    position: relative;

    overflow: hidden;

    background-color: #ffffff;

}

.page-id-3508 .elementor-3508 .elementor-element.elementor-element-35b6d98:not(.elementor-motion-effects-element-type-background) {

    background-color: #ffffff !important;

}

.page-id-3508 .elementor-element-35b6d98 > .e-con-inner {

    position: relative;

    z-index: 1;

}





/* video: gradient frame + halo + floating chips */

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-video {

    position: relative;

    padding: 10px;

    border-radius: 32px;

    background: linear-gradient(135deg, #6152ad 0%, #b9a8ff 55%, #ffc9a8 120%);

    box-shadow: 0 34px 60px -34px rgba(67, 54, 143, 0.7);

}

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-video iframe {

    display: block;

    border-radius: 24px;

    box-shadow: none;

    background: #0d0a26;

}

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-video::before,

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-video::after {

    content: "";

    position: absolute;

    z-index: 2;

    width: 52px;

    height: 52px;

    border-radius: 50%;

    background-color: #ffffff;

    background-repeat: no-repeat;

    background-position: center;

    background-size: 26px 26px;

    border: 1px solid #e6def9;

    box-shadow: 0 16px 26px -14px rgba(67, 54, 143, 0.55);

    pointer-events: none;

}

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-video::before {

    top: -22px;

    right: 26px;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='3' width='6' height='11' rx='3'/%3E%3Cpath d='M5 11a7 7 0 0 0 14 0M12 18v3M8 21h8'/%3E%3C/svg%3E");

    animation: pdChip 6s ease-in-out infinite;

}

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-video::after {

    bottom: -20px;

    left: 30px;

    width: 46px;

    height: 46px;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 15v-3a8 8 0 0 1 16 0v3'/%3E%3Crect x='3' y='14' width='4' height='7' rx='1.5'/%3E%3Crect x='17' y='14' width='4' height='7' rx='1.5'/%3E%3C/svg%3E");

    animation: pdChip 7.5s ease-in-out infinite reverse;

}



/* text panel */

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-content {

    padding: 28px 30px;

    border: 1px solid #ece8f8;

    border-radius: 26px;

    background: rgba(255, 255, 255, 0.78);

    -webkit-backdrop-filter: blur(8px);

    backdrop-filter: blur(8px);

    box-shadow: 0 26px 46px -34px rgba(67, 54, 143, 0.5);

}

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-episode {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    padding: 7px 16px;

    border-radius: 999px;

    background: #efebfd;

    color: #6152ad;

}

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-episode::before {

    content: "";

    width: 9px;

    height: 9px;

    border-radius: 50%;

    background: #6152ad;

    box-shadow: 0 0 0 0 rgba(97, 82, 173, 0.55);

    animation: pdPulse 1.8s ease-out infinite;

}

@keyframes pdPulse {

    0%   { box-shadow: 0 0 0 0 rgba(97, 82, 173, 0.55); }

    70%  { box-shadow: 0 0 0 10px rgba(97, 82, 173, 0); }

    100% { box-shadow: 0 0 0 0 rgba(97, 82, 173, 0); }

}

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-line {

    display: none;

}

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-title {

    margin: 18px 0 14px;

    color: #14122b;

}

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-description {

    color: #4a4668;

}



/* the two listen buttons, now under the text panel */

.page-id-3508 .elementor-element-35b6d98 .elementor-element-62276b9 {

    padding: 0;

}

.page-id-3508 .elementor-element-35b6d98 .elementor-element-65a86b7 {

    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 16px;

    width: 100%;

}

.page-id-3508 .elementor-element-35b6d98 .elementor-element-65a86b7 > a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 14px 26px -16px rgba(34, 24, 92, 0.55);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;

}

.page-id-3508 .elementor-element-35b6d98 .elementor-element-65a86b7 > a:hover {

    transform: translateY(-5px);

    box-shadow: 0 22px 34px -16px rgba(34, 24, 92, 0.7);

}

.page-id-3508 .elementor-element-35b6d98 .elementor-element-65a86b7 > a::after {

    content: "92";

    position: absolute;

    right: 12px;

    top: 50%;

    width: 28px;

    height: 28px;

    margin-top: -14px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.22);

    color: #ffffff;

    font-size: 1.6rem;

    line-height: 1;

    opacity: 0;

    transform: translateX(-8px);

    transition: opacity 0.3s ease, transform 0.3s ease;

}

.page-id-3508 .elementor-element-35b6d98 .elementor-element-65a86b7 > a:hover::after {

    opacity: 1;

    transform: translateX(0);

}

.page-id-3508 .elementor-element-35b6d98 .elementor-element-65a86b7 > a img {

    transition: transform 0.35s ease;

}

.page-id-3508 .elementor-element-35b6d98 .elementor-element-65a86b7 > a:hover img {

    transform: scale(1.1);

}



/* tablet / phone: stacked */





@media (prefers-reduced-motion: reduce) {

    .page-id-3508 .elementor-element-35b6d98 .latest-podcast-video::before,

    .page-id-3508 .elementor-element-35b6d98 .latest-podcast-video::after,

    .page-id-3508 .elementor-element-35b6d98 .latest-podcast-episode::before {

        animation: none;

    }

}



/* ==========================================================================

   REFORMING ACADEMIA PODCAST - PLATFORM CTAs (Apple Podcast / Spotify / YouTube) in every place on the page: hero #17147c3, latest

   episode #65a86b7, #7065532 (section #cbb748d) and #eaa29fb (section #34b152b). Design taken from the reference: dark glass

   button, 1px brand-coloured border (Apple purple-blue, Spotify green, YouTube red), small uppercase spaced label ("LISTEN ON")

   over a bold white platform name, white / brand icon on the left. Hover: lifts and the border + glow take the brand colour. This

   block comes last so it wins over the earlier button looks (solid purple / black / white, arrow chip).

   ========================================================================== */

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a {

    border: 1px solid #8f7fe6;

    border-radius: 14px;

    background: linear-gradient(135deg, #23262e 0%, #14161c 100%) !important;

    box-shadow: 0 14px 26px -18px rgba(8, 10, 20, 0.8);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.3s ease, box-shadow 0.35s ease;

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a[href*="spotify"] {

    border-color: #1ed760;

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a[href*="youtube"] {

    border-color: #ff4e45;

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a:hover {

    transform: translateY(-4px);

    border-color: #b9a8ff;

    box-shadow: 0 20px 32px -16px rgba(97, 82, 173, 0.75);

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a[href*="spotify"]:hover {

    border-color: #4af08a;

    box-shadow: 0 20px 32px -16px rgba(30, 215, 96, 0.55);

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a[href*="youtube"]:hover {

    border-color: #ff7a72;

    box-shadow: 0 20px 32px -16px rgba(255, 78, 69, 0.55);

}

/* the arrow chip added earlier is not part of this design */

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a::after {

    display: none;

}

/* label over name */

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a .e-paragraph-base:first-child {

    text-transform: uppercase;

    letter-spacing: 0.09em;

    font-size: 1.25rem;

    line-height: 1.2;

    font-weight: 500;

    color: rgba(255, 255, 255, 0.78);

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a .e-paragraph-base:last-child {

    font-size: 1.7rem;

    line-height: 1.25;

    font-weight: 700;

    color: #ffffff;

}



/* keep "Apple Podcast" on one line in the narrow three-button row, smaller icons like the reference */

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a {

    padding-left: 16px;

    padding-right: 16px;

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a img {

    max-width: 34px;

    height: auto;

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a .e-paragraph-base {

    white-space: nowrap;

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a .e-paragraph-base:last-child {

    font-size: 1.6rem;

}



/* Latest episode panel: a live audio waveform under the text fills the empty space of the white box (animated SVG bars, repeated across

   the panel width; static for reduced motion). The panel's content stays centred, so text + waveform sit in the middle. */

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-content::after {

    content: "";

    display: block;

    width: 100%;

    height: 64px;

    margin-top: 26px;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='196' height='64' viewBox='0 0 196 64'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%238b78e6'/%3E%3Cstop offset='1' stop-color='%236152ad'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect x='1' y='17.0' width='3' height='30' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='30;17;33;49;30' dur='0.94s' begin='-1.23s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='17.0;23.5;15.5;7.5;17.0' dur='0.94s' begin='-1.23s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='8' y='24.0' width='3' height='16' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='16;31;45;11;16' dur='1.72s' begin='-0.32s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='24.0;16.5;9.5;26.5;24.0' dur='1.72s' begin='-0.32s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='15' y='24.5' width='3' height='15' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='15;35;34;12;15' dur='1.12s' begin='-0.83s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='24.5;14.5;15.0;26.0;24.5' dur='1.12s' begin='-0.83s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='22' y='25.5' width='3' height='13' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='13;44;15;22;13' dur='1.47s' begin='-0.87s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='25.5;10.0;24.5;21.0;25.5' dur='1.47s' begin='-0.87s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='29' y='25.5' width='3' height='13' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='13;44;45;33;13' dur='0.94s' begin='-0.33s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='25.5;10.0;9.5;15.5;25.5' dur='0.94s' begin='-0.33s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='36' y='9.5' width='3' height='45' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='45;16;26;34;45' dur='1.03s' begin='-0.18s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='9.5;24.0;19.0;15.0;9.5' dur='1.03s' begin='-0.18s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='43' y='17.5' width='3' height='29' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='29;43;51;19;29' dur='0.99s' begin='-0.86s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='17.5;10.5;6.5;22.5;17.5' dur='0.99s' begin='-0.86s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='50' y='21.0' width='3' height='22' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='22;31;14;43;22' dur='1.54s' begin='-0.85s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='21.0;16.5;25.0;10.5;21.0' dur='1.54s' begin='-0.85s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='57' y='7.5' width='3' height='49' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='49;21;39;51;49' dur='1.38s' begin='-1.17s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='7.5;21.5;12.5;6.5;7.5' dur='1.38s' begin='-1.17s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='64' y='12.5' width='3' height='39' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='39;45;37;31;39' dur='1.17s' begin='-1.19s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='12.5;9.5;13.5;16.5;12.5' dur='1.17s' begin='-1.19s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='71' y='19.5' width='3' height='25' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='25;13;44;27;25' dur='1.37s' begin='-1.31s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='19.5;25.5;10.0;18.5;19.5' dur='1.37s' begin='-1.31s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='78' y='13.0' width='3' height='38' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='38;26;46;12;38' dur='1.01s' begin='-0.63s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='13.0;19.0;9.0;26.0;13.0' dur='1.01s' begin='-0.63s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='85' y='16.5' width='3' height='31' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='31;17;39;34;31' dur='0.94s' begin='-1.0s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='16.5;23.5;12.5;15.0;16.5' dur='0.94s' begin='-1.0s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='92' y='9.5' width='3' height='45' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='45;44;58;28;45' dur='1.21s' begin='-0.53s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='9.5;10.0;3.0;18.0;9.5' dur='1.21s' begin='-0.53s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='99' y='11.5' width='3' height='41' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='41;45;37;12;41' dur='1.66s' begin='-1.42s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='11.5;9.5;13.5;26.0;11.5' dur='1.66s' begin='-1.42s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='106' y='12.0' width='3' height='40' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='40;52;50;12;40' dur='0.95s' begin='-1.05s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='12.0;6.0;7.0;26.0;12.0' dur='0.95s' begin='-1.05s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='113' y='6.5' width='3' height='51' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='51;44;51;36;51' dur='1.16s' begin='-0.58s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='6.5;10.0;6.5;14.0;6.5' dur='1.16s' begin='-0.58s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='120' y='6.0' width='3' height='52' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='52;30;9;37;52' dur='1.22s' begin='-0.92s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='6.0;17.0;27.5;13.5;6.0' dur='1.22s' begin='-0.92s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='127' y='11.5' width='3' height='41' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='41;11;21;57;41' dur='1.16s' begin='-1.11s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='11.5;26.5;21.5;3.5;11.5' dur='1.16s' begin='-1.11s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='134' y='14.5' width='3' height='35' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='35;33;39;13;35' dur='1.05s' begin='-0.6s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='14.5;15.5;12.5;25.5;14.5' dur='1.05s' begin='-0.6s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='141' y='18.5' width='3' height='27' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='27;16;35;43;27' dur='1.15s' begin='-0.62s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='18.5;24.0;14.5;10.5;18.5' dur='1.15s' begin='-0.62s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='148' y='16.0' width='3' height='32' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='32;51;32;22;32' dur='1.04s' begin='-0.26s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='16.0;6.5;16.0;21.0;16.0' dur='1.04s' begin='-0.26s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='155' y='20.0' width='3' height='24' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='24;50;22;8;24' dur='1.34s' begin='-0.88s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='20.0;7.0;21.0;28.0;20.0' dur='1.34s' begin='-0.88s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='162' y='19.0' width='3' height='26' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='26;26;8;17;26' dur='1.28s' begin='-0.55s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='19.0;19.0;28.0;23.5;19.0' dur='1.28s' begin='-0.55s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='169' y='9.0' width='3' height='46' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='46;28;16;52;46' dur='1.67s' begin='-1.43s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='9.0;18.0;24.0;6.0;9.0' dur='1.67s' begin='-1.43s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='176' y='6.5' width='3' height='51' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='51;51;55;11;51' dur='1.31s' begin='-1.31s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='6.5;6.5;4.5;26.5;6.5' dur='1.31s' begin='-1.31s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='183' y='9.5' width='3' height='45' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='45;33;33;33;45' dur='1.25s' begin='-0.72s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='9.5;15.5;15.5;15.5;9.5' dur='1.25s' begin='-0.72s' repeatCount='indefinite'/%3E%3C/rect%3E%3Crect x='190' y='14.5' width='3' height='35' rx='1.5' fill='url(%23g)'%3E%3Canimate attributeName='height' values='35;11;20;12;35' dur='1.79s' begin='-0.66s' repeatCount='indefinite'/%3E%3Canimate attributeName='y' values='14.5;26.5;22.0;26.0;14.5' dur='1.79s' begin='-0.66s' repeatCount='indefinite'/%3E%3C/rect%3E%3C/svg%3E");

    background-repeat: repeat-x;

    background-position: left center;

    background-size: 196px 64px;

    opacity: 0.8;

    -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 70%, transparent 100%);

    mask-image: linear-gradient(90deg, #000 0%, #000 70%, transparent 100%);

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3508 .elementor-element-35b6d98 .latest-podcast-content::after {

        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='196' height='64' viewBox='0 0 196 64'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%238b78e6'/%3E%3Cstop offset='1' stop-color='%236152ad'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect x='1' y='17.0' width='3' height='30' rx='1.5' fill='url(%23g)'/%3E%3Crect x='8' y='25.5' width='3' height='13' rx='1.5' fill='url(%23g)'/%3E%3Crect x='15' y='15.5' width='3' height='33' rx='1.5' fill='url(%23g)'/%3E%3Crect x='22' y='20.5' width='3' height='23' rx='1.5' fill='url(%23g)'/%3E%3Crect x='29' y='14.0' width='3' height='36' rx='1.5' fill='url(%23g)'/%3E%3Crect x='36' y='9.5' width='3' height='45' rx='1.5' fill='url(%23g)'/%3E%3Crect x='43' y='23.5' width='3' height='17' rx='1.5' fill='url(%23g)'/%3E%3Crect x='50' y='8.5' width='3' height='47' rx='1.5' fill='url(%23g)'/%3E%3Crect x='57' y='14.5' width='3' height='35' rx='1.5' fill='url(%23g)'/%3E%3Crect x='64' y='9.5' width='3' height='45' rx='1.5' fill='url(%23g)'/%3E%3Crect x='71' y='22.5' width='3' height='19' rx='1.5' fill='url(%23g)'/%3E%3Crect x='78' y='17.5' width='3' height='29' rx='1.5' fill='url(%23g)'/%3E%3Crect x='85' y='24.0' width='3' height='16' rx='1.5' fill='url(%23g)'/%3E%3Crect x='92' y='21.0' width='3' height='22' rx='1.5' fill='url(%23g)'/%3E%3Crect x='99' y='25.0' width='3' height='14' rx='1.5' fill='url(%23g)'/%3E%3Crect x='106' y='20.5' width='3' height='23' rx='1.5' fill='url(%23g)'/%3E%3Crect x='113' y='13.5' width='3' height='37' rx='1.5' fill='url(%23g)'/%3E%3Crect x='120' y='8.5' width='3' height='47' rx='1.5' fill='url(%23g)'/%3E%3Crect x='127' y='19.5' width='3' height='25' rx='1.5' fill='url(%23g)'/%3E%3Crect x='134' y='19.5' width='3' height='25' rx='1.5' fill='url(%23g)'/%3E%3Crect x='141' y='10.5' width='3' height='43' rx='1.5' fill='url(%23g)'/%3E%3Crect x='148' y='13.0' width='3' height='38' rx='1.5' fill='url(%23g)'/%3E%3Crect x='155' y='23.5' width='3' height='17' rx='1.5' fill='url(%23g)'/%3E%3Crect x='162' y='16.5' width='3' height='31' rx='1.5' fill='url(%23g)'/%3E%3Crect x='169' y='26.0' width='3' height='12' rx='1.5' fill='url(%23g)'/%3E%3Crect x='176' y='9.5' width='3' height='45' rx='1.5' fill='url(%23g)'/%3E%3Crect x='183' y='16.5' width='3' height='31' rx='1.5' fill='url(%23g)'/%3E%3Crect x='190' y='11.5' width='3' height='41' rx='1.5' fill='url(%23g)'/%3E%3C/svg%3E");

    }

}





/* platform CTAs: a little taller */

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a {

    min-height: 68px;

}



/* ==========================================================================

   REFORMING ACADEMIA PODCAST - "WHY THIS EXISTS / WHAT IS REFORMING ACADEMIA?"  (page-id-3508, section #31b491a > row #59fd84b = left column

   #c7a5e4a (logo #50a68eb, eyebrow, heading, paragraph) + right column #8dd59ce with four cards #c4bf314 #c5c3e78 #e83eb29 #5d44667;

   each card = icon #...(first child), big number (second child), text block (third child)).

   Redesign: fresh lavender - white - sky - peach gradient section; the four reasons become a 2 x 2 grid of vertical cards (icon on top, big faded number in the corner, title,

   text) with a coloured top accent per card (coral / purple / amber / green - the same colours as the icons) that lifts and brightens on

   hover; the logo floats gently (no halo behind it); both columns have the same height. Text, icons and numbers are unchanged. Tablet: 2 columns under the

   text; phone: one column.

   ========================================================================== */

.page-id-3508 .elementor-element-31b491a {

    position: relative;

    overflow: hidden;

    background-color: #ffffff;

}

.page-id-3508 .elementor-3508 .elementor-element.elementor-element-31b491a:not(.elementor-motion-effects-element-type-background) {

    background-color: #ffffff !important;

    background-image: none !important;

}

.page-id-3508 .elementor-element-31b491a::before {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background: linear-gradient(125deg, #f1ecff 0%, #faf8ff 30%, #ffffff 52%, #eaf4ff 76%, #fff1e6 100%);

}

.page-id-3508 .elementor-element-31b491a > .e-con-inner {

    position: relative;

    z-index: 1;

}





/* logo (smaller so the left column is not taller than the cards) */

.page-id-3508 .elementor-element-31b491a .elementor-element-50a68eb {

    position: relative;

    max-width: 230px;

}

.page-id-3508 .elementor-element-31b491a .elementor-element-50a68eb img {

    display: block;

    width: 100%;

    max-width: 230px;

    height: auto;

    filter: drop-shadow(0 16px 22px rgba(67, 54, 143, 0.25));

    animation: pdChip 7s ease-in-out infinite;

}



/* the 2 x 2 grid of reasons */

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce {

    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    grid-auto-rows: 1fr;

    align-content: stretch;

    gap: 22px;

}

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con {

    --acc: #6152ad;

    position: relative;

    overflow: hidden;

    display: flex;

    flex-direction: column;

    align-items: flex-start;

    gap: 14px;

    width: auto;

    padding: 26px 26px 24px;

    border: 1px solid #ece8f8;

    border-radius: 24px;

    background: #ffffff;

    box-shadow: 0 20px 38px -30px rgba(67, 54, 143, 0.5);

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con:nth-child(1) { --acc: #f26b4a; }

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con:nth-child(2) { --acc: #6152ad; }

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con:nth-child(3) { --acc: #e0922b; }

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con:nth-child(4) { --acc: #2f7d62; }

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con::before {

    content: "";

    position: absolute;

    left: 0;

    top: 0;

    width: 42%;

    height: 4px;

    border-radius: 0 0 4px 0;

    background: var(--acc);

    transition: width 0.45s ease;

}

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con:hover {

    transform: translateY(-6px);

    border-color: color-mix(in srgb, var(--acc) 40%, #ffffff);

    box-shadow: 0 28px 44px -28px color-mix(in srgb, var(--acc) 55%, transparent);

}

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con:hover::before {

    width: 100%;

}



/* icon (the existing round icon picture, a little smaller, tilts on hover) */

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con > :nth-child(1),

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con > :nth-child(1) .elementor-widget {

    width: auto;

    padding: 0;

    margin: 0;

}

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con > :nth-child(1) img {

    display: block;

    width: 66px;

    height: 66px;

    transition: transform 0.4s ease;

}

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con:hover > :nth-child(1) img {

    transform: rotate(-8deg) scale(1.1);

}



/* big faded number in the corner */

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con > :nth-child(2) {

    position: absolute;

    top: 14px;

    right: 22px;

    width: auto;

    padding: 0;

    margin: 0;

}

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con > :nth-child(2) h2 {

    margin: 0;

    font-size: 5rem;

    line-height: 1;

    font-weight: 800;

    letter-spacing: -0.02em;

    color: color-mix(in srgb, var(--acc) 16%, #ffffff);

    transition: color 0.35s ease;

}

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con:hover > :nth-child(2) h2 {

    color: color-mix(in srgb, var(--acc) 34%, #ffffff);

}



/* text */

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con > :nth-child(3) {

    width: 100%;

    padding: 0;

}

.page-id-3508 .elementor-element-31b491a .elementor-image-box-title {

    margin-bottom: 8px;

    color: #14122b;

    font-weight: 700;

}

.page-id-3508 .elementor-element-31b491a .elementor-image-box-description {

    margin: 0;

    color: #4a4668;

    line-height: 1.55;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3508 .elementor-element-31b491a .elementor-element-50a68eb img {

        animation: none;

    }

}



/* ==========================================================================

   REFORMING ACADEMIA PODCAST - "BEHIND THE MIC / MEET THE HOST"  (page-id-3508, dark section #dbd10b1: heading block #f5c5c02, grid #bfc3d48

   with two host cards; each card = photo (background image) + text column (name, credentials line, bio) + a row of social links).

   Dark glass cards with a gradient top line and a soft border that glows on hover, a rounded photo with a ring, the credentials line as

   an accent-bar label, a readable bio, and the social links as dark glass pills with a brand-coloured border (Instagram pink, YouTube

   red, LinkedIn blue) - the same language as the platform buttons above. Equal-height cards. Text and links are unchanged.

   ========================================================================== */

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 {

    align-items: stretch;

    gap: 28px;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con {

    position: relative;

    overflow: hidden;

    flex: 1 1 0;

    width: auto;

    min-width: 0;

    flex-wrap: wrap;

    align-content: space-between;

    gap: 22px 24px;

    padding: 26px;

    border: 1px solid rgba(185, 168, 255, 0.28);

    border-radius: 26px;

    background: linear-gradient(150deg, rgba(255, 255, 255, 0.09) 0%, rgba(255, 255, 255, 0.03) 100%) !important;

    -webkit-backdrop-filter: blur(10px);

    backdrop-filter: blur(10px);

    box-shadow: 0 30px 50px -34px rgba(0, 0, 0, 0.8);

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.35s ease, box-shadow 0.35s ease;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con::before {

    content: "";

    position: absolute;

    left: 0;

    right: 0;

    top: 0;

    height: 4px;

    background: linear-gradient(90deg, #6152ad 0%, #b9a8ff 50%, #ff9ac4 100%);

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con:hover {

    transform: translateY(-6px);

    border-color: rgba(185, 168, 255, 0.6);

    box-shadow: 0 36px 56px -30px rgba(139, 120, 230, 0.55);

}



/* photo */

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(1) {

    flex: 0 0 190px;

    width: 190px;

    min-height: 300px;

    align-self: stretch;

    border-radius: 20px;

    background-size: cover;

    background-position: center top;

    box-shadow: 0 0 0 3px rgba(185, 168, 255, 0.35), 0 22px 34px -18px rgba(0, 0, 0, 0.7);

}



/* text column */

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(2) {

    flex: 1 1 240px;

    min-width: 0;

    padding-left: 0;

    gap: 12px;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(2) > h2 {

    margin: 0;

    color: #ffffff;

    font-weight: 700;

    letter-spacing: -0.01em;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-image-box-title {

    margin-bottom: 12px;

    padding-left: 12px;

    border-left: 3px solid #8b78e6;

    color: #c9bcff;

    font-weight: 600;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-image-box-description {

    margin: 0;

    color: rgba(255, 255, 255, 0.8);

    line-height: 1.65;

}



/* social links */

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) {

    flex: 0 0 100%;

    width: 100%;

    flex-wrap: wrap;

    justify-content: flex-start;

    gap: 12px;

    padding: 18px 0 0;

    border-top: 1px solid rgba(255, 255, 255, 0.12);

    background: transparent !important;

    border-radius: 0;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > * {

    width: auto;

    min-width: 0;

    padding: 0;

    border: 1px solid #8f7fe6;

    border-radius: 12px;

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.04)) !important;

    transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *:has(a[href*="instagram"]) {

    border-color: #d62976;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *:has(a[href*="youtube"]) {

    border-color: #ff4e45;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *:has(a[href*="linkedin"]) {

    border-color: #3d8bd9;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *:hover {

    transform: translateY(-3px);

    box-shadow: 0 14px 24px -14px rgba(139, 120, 230, 0.8);

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) a {

    display: flex;

    align-items: center;

    gap: 10px;

    padding: 9px 16px 9px 12px;

    background: none !important;

}





@media (prefers-reduced-motion: reduce) {

    .page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con,

    .page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > * {

        transition: none;

    }

}



/* ==========================================================================

   REFORMING ACADEMIA PODCAST - "FAVORITES / FEATURED EPISODES"  (page-id-3508, section #cbb748d: heading block #9fc29d6 > #1ad2b39, slider

   shortcode #72dd5f7 = .custom-podcast-slider (.swiper-slide > a.podcast-card-link > .custom-slide-item = .post-thumb img + .post-content

   with .post-category and .post-title), platform buttons #7065532).

   The shortcode's own CSS gave the card a fixed 300px minimum height that clipped the text and let the dots run over it. Now: soft

   lavender-to-white section, white cards of equal height with a hairline border, a 16:9 picture that zooms on hover with an arrow chip,

   a lavender "PODCAST" pill, a 2-line bold title, and the dots in their own space below with an active pill. Font sizes are the

   shortcode's own. Text and links unchanged.

   ========================================================================== */

.page-id-3508 .elementor-element-cbb748d {

    position: relative;

    overflow: hidden;

}

.page-id-3508 .elementor-element-cbb748d::before {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background: linear-gradient(180deg, #ffffff 0%, #f7f4fe 55%, #f1ecff 100%);

}

.page-id-3508 .elementor-element-cbb748d > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* slider: dots get their own space, slides stretch to the same height */

.page-id-3508 .elementor-element-cbb748d .custom-podcast-slider {

    padding: 14px 4px 54px;

}

.page-id-3508 .elementor-element-cbb748d .custom-podcast-slider .swiper-wrapper {

    align-items: stretch;

}

.page-id-3508 .elementor-element-cbb748d .custom-podcast-slider .swiper-slide {

    height: auto;

}

.page-id-3508 .elementor-element-cbb748d .podcast-card-link {

    display: block;

    height: 100%;

}

.page-id-3508 .elementor-element-cbb748d .custom-slide-item {

    display: flex;

    flex-direction: column;

    min-height: 0;

    height: 100%;

    border: 1px solid #ece8f8;

    border-radius: 22px;

    background: #ffffff;

    box-shadow: 0 20px 38px -30px rgba(67, 54, 143, 0.5);

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-3508 .elementor-element-cbb748d .custom-slide-item:hover {

    transform: translateY(-8px);

    border-color: #cfc5f2;

    box-shadow: 0 30px 46px -28px rgba(97, 82, 173, 0.6);

}



/* picture + arrow chip */

.page-id-3508 .elementor-element-cbb748d .post-thumb {

    position: relative;

    overflow: hidden;

    border-radius: 21px 21px 0 0;

}

.page-id-3508 .elementor-element-cbb748d .post-thumb img {

    width: 100%;

    height: auto;

    aspect-ratio: 16 / 9;

    object-fit: cover;

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3508 .elementor-element-cbb748d .custom-slide-item:hover .post-thumb img {

    transform: scale(1.07);

}

.page-id-3508 .elementor-element-cbb748d .post-thumb::after {

    content: "92";

    position: absolute;

    right: 14px;

    bottom: 14px;

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffffff;

    color: #6152ad;

    font-size: 2rem;

    font-weight: 700;

    line-height: 1;

    box-shadow: 0 10px 20px -8px rgba(6, 10, 17, 0.5);

    opacity: 0;

    transform: translateY(8px) scale(0.9);

    transition: opacity 0.35s ease, transform 0.35s ease;

    pointer-events: none;

}

.page-id-3508 .elementor-element-cbb748d .custom-slide-item:hover .post-thumb::after {

    opacity: 1;

    transform: translateY(0) scale(1);

}



/* text */

.page-id-3508 .elementor-element-cbb748d .post-content {

    flex: 1;

    padding: 18px 20px 22px;

}

.page-id-3508 .elementor-element-cbb748d .post-category {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    margin-bottom: 12px;

    padding: 5px 13px;

    border-radius: 999px;

    background: #efebfd;

    color: #6152ad;

    letter-spacing: 0.08em;

}

.page-id-3508 .elementor-element-cbb748d .post-category::before {

    content: "";

    width: 7px;

    height: 7px;

    border-radius: 50%;

    background: #6152ad;

}

.page-id-3508 .elementor-element-cbb748d .post-title {

    display: -webkit-box;

    -webkit-box-orient: vertical;

    -webkit-line-clamp: 2;

    overflow: hidden;

    min-height: 2.8em;

    color: #14122b;

    font-weight: 700;

    transition: color 0.3s ease;

}

.page-id-3508 .elementor-element-cbb748d .custom-slide-item:hover .post-title {

    color: #6152ad;

}



/* dots */

.page-id-3508 .elementor-element-cbb748d .custom-podcast-slider .swiper-pagination {

    bottom: 10px !important;

}

.page-id-3508 .elementor-element-cbb748d .custom-podcast-slider .swiper-pagination-bullet {

    width: 9px;

    height: 9px;

    background: #cdbff9 !important;

    opacity: 1;

    transition: width 0.3s ease, background 0.3s ease;

}

.page-id-3508 .elementor-element-cbb748d .custom-podcast-slider .swiper-pagination-bullet-active {

    width: 26px;

    border-radius: 6px;

    background: linear-gradient(90deg, #6152ad, #bc1888) !important;

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3508 .elementor-element-cbb748d .custom-slide-item,

    .page-id-3508 .elementor-element-cbb748d .post-thumb img,

    .page-id-3508 .elementor-element-cbb748d .post-thumb::after {

        transition: none;

    }

}



/* ==========================================================================

   REFORMING ACADEMIA PODCAST PAGE - "DON'T MISS THE NEXT ONE"  (page-id-3508, section #34b152b = the 6th section). Same design as the

   home page's "Reforming Academia Podcast" section (copied from "HOME PAGE - REFORMING ACADEMIA PODCAST" with this page's element ids):

   heading block #3cda461 / sub-line #2450e79, row #d0de160, list column #2ea97c6 (AJAX .podcast-item cards: glass cards, animated

   equalizer button that turns into a play icon on hover), photo column #1bd151f kept clear for the microphone background, and

   the desktop grid (episodes top right, platform buttons under them on the right). The platform buttons keep the dark glass style

   written for this page; only their layout is set here.

   ========================================================================== */

/* ---------- Section: tighter vertical spacing ---------- */

.elementor-3508 .elementor-element.elementor-element-34b152b {

    --padding-top: 26px;

    --padding-bottom: 82px;             /* the Instagram card below overlaps the last ~50px of this section */

}

.page-id-3508 .elementor-element-34b152b .elementor-element-3cda461 {

    gap: 14px;                          /* keeps the eyebrow's underline clear of the heading */

}

.page-id-3508 .elementor-element-34b152b .elementor-element-3cda461 .section-heading {

    font-size: clamp(2.4rem, 1.9rem + 0.9vw, 3.6rem);

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2450e79 {

    max-width: 760px;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2450e79 .elementor-heading-title {

    font-size: clamp(1.5rem, 1.2rem + 0.45vw, 1.9rem);

    line-height: 1.45;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-d0de160 {

    --padding-top: 0px;

    --padding-bottom: 0px;

    align-items: flex-end;

}

/* ---------- Equalizer icon (replaces the play triangle on every episode) ---------- */

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-play-btn {

    position: relative;

    width: 42px;

    height: 42px;

    color: #5a4cc4;

    background: #e9e5ff;

    border: 1px solid #ffffff;

    transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-play-btn .play-icon {

    display: none;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-play-btn::before {

    content: '';

    width: 19px;

    height: 16px;

    background:

        linear-gradient(currentColor, currentColor) 0 100% / 3px 30% no-repeat,

        linear-gradient(currentColor, currentColor) 5px 100% / 3px 85% no-repeat,

        linear-gradient(currentColor, currentColor) 10px 100% / 3px 55% no-repeat,

        linear-gradient(currentColor, currentColor) 16px 100% / 3px 100% no-repeat;

    animation: wicEq 1.15s ease-in-out infinite;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-play-btn::before {

    transition: opacity 0.25s ease, transform 0.3s ease;

}

/* play triangle: hidden until the card is hovered, then it replaces the equalizer */

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-play-btn::after {

    content: '';

    position: absolute;

    left: 50%;

    top: 50%;

    width: 16px;

    height: 16px;

    margin: -8px 0 0 -7px;

    background: currentColor;

    -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M7 4.6v14.8a1 1 0 0 0 1.5.86l12-7.4a1 1 0 0 0 0-1.72l-12-7.4A1 1 0 0 0 7 4.6z'/></svg>") center / contain no-repeat;

    mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M7 4.6v14.8a1 1 0 0 0 1.5.86l12-7.4a1 1 0 0 0 0-1.72l-12-7.4A1 1 0 0 0 7 4.6z'/></svg>") center / contain no-repeat;

    opacity: 0;

    transform: scale(0.5);

    transition: opacity 0.25s ease, transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);

}

/* every episode's bars keep moving; on hover the button turns white and the bars turn into a dark play icon */

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-item:hover .podcast-play-btn {

    color: #1d1a3a;

    background: #ffffff;

    border-color: #ffffff;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-item:hover .podcast-play-btn::before {

    opacity: 0;

    transform: scale(0.4);

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-item:hover .podcast-play-btn::after {

    opacity: 1;

    transform: scale(1);

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-play-btn::before {

            animation: none !important;

            background-size: 3px 55%, 3px 85%, 3px 45%, 3px 100%;

        }

}

/* ---------- Episodes: one glass card each ---------- */

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .custom-podcast-wrapper {

    padding: 0;

    background: none;

    border: 0;

    border-radius: 0;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-list {

    gap: 10px;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-item {

    gap: 14px;

    padding: 11px 16px 11px 11px;

    border: 1px solid rgba(255, 255, 255, 0.16);

    border-bottom: 1px solid rgba(255, 255, 255, 0.16);

    border-radius: 14px;

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.03));

    -webkit-backdrop-filter: blur(12px);

    backdrop-filter: blur(12px);

    box-shadow: 0 10px 24px -16px rgba(0, 0, 0, 0.8), inset 0 1px 0 rgba(255, 255, 255, 0.10);

    transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease, background 0.4s ease;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-item:hover {

    transform: translate(6px, -4px);

    border-color: rgba(169, 156, 245, 0.7);

    background: linear-gradient(135deg, rgba(150, 130, 235, 0.22), rgba(255, 255, 255, 0.05));

    box-shadow: 0 20px 34px -16px rgba(97, 82, 173, 0.85), inset 0 1px 0 rgba(255, 255, 255, 0.16);

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-left {

    gap: 14px;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-image {

    width: 124px;

    min-width: 124px;

    aspect-ratio: 16 / 9;

    border-radius: 9px;

    border: 1px solid rgba(255, 255, 255, 0.16);

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.5s ease;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-item:hover .podcast-image img {

    transform: scale(1.08);

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-title {

    margin: 0 0 4px;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-title a {

    font-size: clamp(1.5rem, 1.3rem + 0.3vw, 1.75rem);

    line-height: 1.3;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-description {

    font-size: clamp(1.25rem, 1.15rem + 0.2vw, 1.4rem);

    line-height: 1.5;

    -webkit-line-clamp: 2;

}

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-play-wrap {

    min-width: 42px;

}

/* ---------- Platform CTAs: glass buttons with a brand-coloured hover ---------- */

/* ---------- Explore More ---------- */

/* ---------- Desktop: keep the left half clear for the microphone photo ----------

   The platform buttons and "Explore More" move to one row under the episode list. */



/* ---------- Tablet / mobile ---------- */





/* platform buttons: one row under the episodes on desktop (the buttons themselves are the dark glass ones above) */





/* the eyebrow stays on one line (it wrapped to two) */

.page-id-3508 .elementor-element-34b152b .purple-heading-cen {

    width: auto !important;

    white-space: nowrap;

}



/* "Load More" takes the place of the home page's "Explore More": on desktop it sits on the right of the platform buttons (same row), styled

   like that button. The shortcode wrappers are made transparent to the grid so the list and the button become cells of the row grid. */



.page-id-3508 .elementor-element-34b152b .podcast-load-more-btn {

    display: inline-flex;

    align-items: center;

    height: 52px;

    padding: 0 22px;

    border: 1px solid rgba(255, 255, 255, 0.22);

    border-radius: 11px;

    background: #6152ad;

    color: #ffffff;

    font-size: 1.6rem;

    white-space: nowrap;

    cursor: pointer;

    transition: transform 0.3s ease, border-color 0.3s ease, background 0.3s ease;

}

.page-id-3508 .elementor-element-34b152b .podcast-load-more-btn:hover {

    transform: translateY(-2px);

    border-color: rgba(169, 156, 245, 0.8);

    background: #5845bd;

}



/* ==========================================================================

   REFORMING ACADEMIA PODCAST - "BEFORE YOU GO"  (page-id-3508, last section #bfaac8e: row #c6398d9 = text column #172268d (eyebrow,

   heading "Got a Story Worth Sharing?", "or", heading "Want to Be Part of the Conversation?", paragraph, "Share Your Story" button

   #10fc1de) + photo column #acc13cc (the two hosts, cut-out)).

   Open layout (no box), same family as the Diversity page's last section: soft lavender - white - peach wash, the hosts stand on the

   section's bottom edge with a dot grid, a ring and two floating chips (mic, chat) around them; "or" becomes a centred divider with

   a line on each side; accent words get a purple gradient; the button lifts, glows and its arrow slides. Font sizes are unchanged,

   text and link untouched. Tablet / phone: text above, photo below, chips hidden.

   ========================================================================== */

.page-id-3508 .elementor-element-bfaac8e {

    position: relative;

    overflow: hidden;

}

.page-id-3508 .elementor-element-bfaac8e::before {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    background: linear-gradient(115deg, #f2edff 0%, #faf8ff 40%, #ffffff 58%, #fff2e8 100%);

}

.page-id-3508 .elementor-element-bfaac8e > .e-con-inner {

    position: relative;

    z-index: 1;

    padding-top: 50px;

    padding-bottom: 0;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-c6398d9 {

    position: relative;

    align-items: flex-end;

    gap: 24px;

    width: 100%;

    max-width: 1150px;

    margin-left: auto;

    margin-right: auto;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-172268d {

    position: relative;

    z-index: 2;

    flex: 1 1 54%;

    min-width: 0;

    align-self: center;

    padding-bottom: 50px;

}



/* headings */

.page-id-3508 .elementor-element-bfaac8e .section-heading .colorTxt {

    background: linear-gradient(90deg, #223973 0%, #6152ad 60%, #8b78e6 100%);

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

}

.page-id-3508 .elementor-element-bfaac8e .section-subheading {

    max-width: 540px;

}

.page-id-3508 .elementor-element-bfaac8e .section-subheading .elementor-heading-title {

    color: #4a4668;

}



/* "or" as a divider */

.page-id-3508 .elementor-element-bfaac8e .elementor-element-d682138 .box-heading {

    display: flex;

    align-items: center;

    gap: 14px;

    max-width: 420px;

    margin: 0;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-d682138 .box-heading::before,

.page-id-3508 .elementor-element-bfaac8e .elementor-element-d682138 .box-heading::after {

    content: "";

    flex: 1 1 0;

    height: 2px;

    border-radius: 2px;

    background: linear-gradient(90deg, rgba(97, 82, 173, 0) 0%, rgba(97, 82, 173, 0.45) 100%);

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-d682138 .box-heading::after {

    background: linear-gradient(90deg, rgba(97, 82, 173, 0.45) 0%, rgba(97, 82, 173, 0) 100%);

}



/* button */

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de {

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, background 0.3s ease;

    box-shadow: 0 16px 26px -16px rgba(97, 82, 173, 0.8);

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de:hover {

    transform: translateY(-4px);

    box-shadow: 0 22px 32px -14px rgba(97, 82, 173, 0.9);

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de .subs-arrow img {

    transition: transform 0.35s ease;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de:hover .subs-arrow img {

    transform: translateX(8px);

}



/* photo column: the hosts stand on the bottom edge, patches behind */

.page-id-3508 .elementor-element-bfaac8e .elementor-element-acc13cc {

    position: relative;

    flex: 0 0 46%;

    align-self: flex-end;

    isolation: isolate;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-acc13cc::before {

    content: "";

    position: absolute;

    z-index: 0;

    right: 4%;

    top: 4%;

    width: 104px;

    height: 84px;

    background: radial-gradient(circle, #8b78e6 2.2px, transparent 2.8px) 0 0 / 16px 16px;

    opacity: 0.45;

    pointer-events: none;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-acc13cc::after {

    content: "";

    position: absolute;

    z-index: 0;

    left: 2%;

    bottom: 22%;

    width: 70px;

    height: 70px;

    border-radius: 50%;

    border: 3px solid rgba(97, 82, 173, 0.22);

    pointer-events: none;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-dbf246a {

    position: relative;

    z-index: 2;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-dbf246a img {

    display: block;

    width: 100%;

    height: auto;

    filter: drop-shadow(0 18px 24px rgba(97, 82, 173, 0.22));

}



/* floating chips */

.page-id-3508 .elementor-element-bfaac8e .elementor-element-c6398d9::before,

.page-id-3508 .elementor-element-bfaac8e .elementor-element-c6398d9::after {

    content: "";

    position: absolute;

    z-index: 3;

    width: 52px;

    height: 52px;

    border-radius: 50%;

    background-color: #ffffff;

    background-repeat: no-repeat;

    background-position: center;

    background-size: 26px 26px;

    border: 1px solid #e6def9;

    box-shadow: 0 16px 26px -14px rgba(67, 54, 143, 0.55);

    pointer-events: none;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-c6398d9::before {

    top: 14%;

    left: 53%;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='3' width='6' height='11' rx='3'/%3E%3Cpath d='M5 11a7 7 0 0 0 14 0M12 18v3M8 21h8'/%3E%3C/svg%3E");

    animation: pdChip 6s ease-in-out infinite;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-c6398d9::after {

    top: 38%;

    right: 2%;

    width: 48px;

    height: 48px;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.7 7L4 20l1-4.3A8 8 0 1 1 21 12z'/%3E%3Cpath d='M9 12h.01M12.5 12h.01M16 12h.01'/%3E%3C/svg%3E");

    animation: pdChip 7.5s ease-in-out infinite reverse;

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3508 .elementor-element-bfaac8e .elementor-element-c6398d9::before,

    .page-id-3508 .elementor-element-bfaac8e .elementor-element-c6398d9::after {

        animation: none;

    }

    .page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de,

    .page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de .subs-arrow img {

        transition: none;

    }

}



/* tablet / phone */





/* ==========================================================================

   REFORMING ACADEMIA PODCAST - HERO feedback round 2 (page-id-3508, hero #b104b00)

   1) sound-wave beside the eyebrow removed  2) hosts line is open text again (no white box)  3) hero platform CTAs

   (#17147c3 = Apple #18c3ed1, Spotify #7915611, YouTube #f12ce02) made richer: brand-tinted glow, icon in a glass ring,

   always-visible arrow chip, light sweep + lift on hover. Other CTA groups on the page are untouched.

   ========================================================================== */

.page-id-3508 .elementor-element-b104b00 .elementor-element-09ef8cb::before {

    content: none;

    display: none;

    animation: none;

}



.page-id-3508 .elementor-element-b104b00 .e-6d93a8b-e9d0bd5 {

    padding: 0;

    border: 0;

    border-radius: 0;

    background: none;

    -webkit-backdrop-filter: none;

    backdrop-filter: none;

    box-shadow: none;

}



/* CTAs */

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a {

    --cta: #8f7fe6;

    --cta-glow: rgba(143, 127, 230, 0.55);

    min-height: 80px;

    padding: 12px 64px 12px 14px;

    gap: 14px;

    border: 1.5px solid var(--cta);

    border-radius: 18px;

    background:

        radial-gradient(120% 140% at 0% 0%, var(--cta-glow) 0%, rgba(20, 22, 28, 0) 55%),

        linear-gradient(135deg, #2a2d38 0%, #121419 100%) !important;

    box-shadow: 0 18px 34px -18px var(--cta-glow), inset 0 1px 0 rgba(255, 255, 255, 0.12);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.3s ease, box-shadow 0.35s ease;

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a[href*="spotify"] {

    --cta: #1ed760;

    --cta-glow: rgba(30, 215, 96, 0.42);

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a[href*="youtube"] {

    --cta: #ff4e45;

    --cta-glow: rgba(255, 78, 69, 0.45);

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a:hover {

    transform: translateY(-6px) scale(1.02);

    border-color: var(--cta);

    box-shadow: 0 26px 40px -16px var(--cta-glow), 0 0 0 4px rgba(255, 255, 255, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.18);

}

/* light sweep */

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a::before {

    content: "";

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(100deg, transparent 0%, rgba(255, 255, 255, 0.22) 50%, transparent 100%);

    transform: skewX(-20deg);

    pointer-events: none;

    transition: left 0.7s ease;

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a:hover::before {

    left: 130%;

}

/* icon in a glass ring */

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a > .e-con:first-child {

    width: 52px;

    height: 52px;

    flex: 0 0 52px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.1);

    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.18), 0 0 18px -4px var(--cta-glow);

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a img {

    max-width: 28px;

    max-height: 28px;

    width: auto;

    height: auto;

}

/* arrow chip, always visible */

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a::after {

    content: "92";

    display: flex;

    right: 14px;

    width: 34px;

    height: 34px;

    margin-top: -17px;

    background: var(--cta);

    color: #101218;

    font-size: 1.8rem;

    font-weight: 700;

    opacity: 1;

    transform: translateX(0);

    box-shadow: 0 8px 16px -6px var(--cta-glow);

    transition: transform 0.3s ease;

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a:hover::after {

    transform: translateX(4px);

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a .e-paragraph-base:first-child {

    color: var(--cta);

    font-weight: 600;

}

.page-id-3508 .elementor-3508 :is(.elementor-element-17147c3, .elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a .e-paragraph-base:last-child {

    font-size: 1.75rem;

}





/* hero CTAs on narrower desktops / laptops: the buttons are ~200px wide, so drop the arrow chip (it returns on hover) and tighten the icon ring */





/* hero: floating mic / headphone chips removed (feedback round 3) */

.page-id-3508 .elementor-element-b104b00 .elementor-element-6dd3824::before,

.page-id-3508 .elementor-element-b104b00 .elementor-element-6dd3824::after {

    content: none;

    display: none;

    animation: none;

}



/* Latest episode: floating mic / headphone chips over the video removed; its CTAs (#65a86b7) share the hero CTA design above,

   (the arrow chip shows only on hover below 1700px, like the hero) */

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-video::before,

.page-id-3508 .elementor-element-35b6d98 .latest-podcast-video::after {

    content: none;

    display: none;

    animation: none;

}



/* ==========================================================================

   REFORMING ACADEMIA PODCAST - "WHY THIS EXISTS" feedback round 4 (page-id-3508, section #31b491a, cards in #8dd59ce)

   Section background is now a lavender tint with a soft dot pattern so it reads as its own band between the white "Latest Episode"

   section above and the dark "Behind the Mic" section below. Big corner numbers removed. Cards use the site's purple / navy palette

   (one accent for all four, icons tinted to match), with a glass-white face, gradient top bar, corner glow and a lift on hover.

   ========================================================================== */

.page-id-3508 .elementor-3508 .elementor-element.elementor-element-31b491a:not(.elementor-motion-effects-element-type-background) {

    background-color: #e6dffa !important;

}

.page-id-3508 .elementor-element-31b491a::before {

    background:

        radial-gradient(circle at 12% 18%, rgba(139, 120, 230, 0.35) 0%, transparent 42%),

        radial-gradient(circle at 92% 88%, rgba(34, 57, 115, 0.18) 0%, transparent 46%),

        radial-gradient(rgba(97, 82, 173, 0.16) 1.3px, transparent 1.6px) 0 0 / 22px 22px,

        linear-gradient(135deg, #ece6fc 0%, #ddd3f6 100%);

}



/* numbers removed */

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con > :nth-child(2) {

    display: none;

}



/* cards */

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con,

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con:nth-child(n) {

    --acc: #6152ad;

    gap: 16px;

    padding: 30px 28px 28px;

    border: 1px solid rgba(255, 255, 255, 0.9);

    border-radius: 26px;

    background: linear-gradient(160deg, #ffffff 0%, #f7f4ff 100%);

    box-shadow: 0 22px 40px -26px rgba(34, 24, 92, 0.55), 0 0 0 1px rgba(97, 82, 173, 0.1);

}

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con::before {

    width: 100%;

    height: 5px;

    border-radius: 0;

    background: linear-gradient(90deg, #223973 0%, #6152ad 55%, #8b78e6 100%);

    transform: scaleX(0.38);

    transform-origin: left;

    transition: transform 0.5s ease;

}

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con:hover::before {

    width: 100%;

    transform: scaleX(1);

}

/* corner glow in place of the number */

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con::after {

    content: "";

    position: absolute;

    top: -50px;

    right: -50px;

    width: 160px;

    height: 160px;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(139, 120, 230, 0.28) 0%, rgba(139, 120, 230, 0) 70%);

    pointer-events: none;

    transition: transform 0.5s ease;

}

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con:hover::after {

    transform: scale(1.5);

}

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con:hover {

    transform: translateY(-8px);

    border-color: #ffffff;

    box-shadow: 0 32px 50px -26px rgba(97, 82, 173, 0.75), 0 0 0 1px rgba(97, 82, 173, 0.3);

}

/* icons: one purple tone for all four, in a soft ring */

.page-id-3508 .elementor-element-31b491a .elementor-element-8dd59ce > .e-con > :nth-child(1) img {

    padding: 0;

    border-radius: 50%;

    filter: grayscale(1) sepia(1) hue-rotate(205deg) saturate(2.6) brightness(0.95);

    box-shadow: 0 0 0 5px rgba(97, 82, 173, 0.1);

}

.page-id-3508 .elementor-element-31b491a .elementor-image-box-title {

    color: #223973;

    font-weight: 700;

}

.page-id-3508 .elementor-element-31b491a .elementor-image-box-description {

    color: #4a4668;

}



/* ==========================================================================

   REFORMING ACADEMIA PODCAST - "BEHIND THE MIC" feedback round 5 (page-id-3508, section #dbd10b1, cards in #bfc3d48)

   Compact + balanced: tighter section / heading / card spacing; each card is a 2-row grid (photo | text on top, social pills across the

   bottom) so both cards share the same height and the photo fills the row beside the text; the social pills are all the same height with

   a brand-coloured icon chip, glass face and a brand-colour fill on hover.

   ========================================================================== */

.page-id-3508 .elementor-element-dbd10b1 {

    --pad: clamp(36px, 4vw, 56px);

    padding-top: var(--pad);

    padding-bottom: var(--pad);

}

.page-id-3508 .elementor-element-dbd10b1 > .e-con-inner {

    gap: 24px;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-f5c5c02 {

    gap: 10px;

    padding-top: 0;

    padding-bottom: 0;

    margin-bottom: 0;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-f5c5c02 > * {

    margin-top: 0;

    margin-bottom: 0;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 {

    gap: 22px;

    padding-top: 0;

    padding-bottom: 0;

}



.page-id-3508 .elementor-element-dbd10b1 .elementor-image-box-title {

    margin-bottom: 8px;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-image-box-description {

    line-height: 1.5;

}



/* social pills: same height, brand chip */

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) {

    gap: 10px;

    padding-top: 14px;

    align-items: stretch;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > * {

    --b: #8f7fe6;

    height: 46px;

    display: flex;

    overflow: hidden;

    border: 1px solid color-mix(in srgb, var(--b) 60%, transparent);

    border-radius: 999px;

    background: linear-gradient(135deg, color-mix(in srgb, var(--b) 22%, transparent), rgba(255, 255, 255, 0.04)) !important;

    transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *:has(a[href*="instagram"]) { --b: #e1306c; }

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *:has(a[href*="youtube"]) { --b: #ff4e45; }

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *:has(a[href*="linkedin"]) { --b: #3d8bd9; }

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *:hover {

    transform: translateY(-3px);

    border-color: var(--b);

    background: linear-gradient(135deg, color-mix(in srgb, var(--b) 55%, transparent), color-mix(in srgb, var(--b) 18%, transparent)) !important;

    box-shadow: 0 14px 24px -12px var(--b);

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) a {

    flex: 1 1 auto;

    height: 100%;

    padding: 0 20px 0 7px;

    gap: 10px;

    white-space: nowrap;

}

/* icon chip */

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) a > :first-child {

    width: 32px;

    height: 32px;

    flex: 0 0 32px;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 0;

    border-radius: 50%;

    background: color-mix(in srgb, var(--b) 45%, rgba(255, 255, 255, 0.08));

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) a img {

    width: 18px;

    height: 18px;

    object-fit: contain;

    filter: brightness(0) invert(1);

}





/* round 5b: card header = photo beside name + credentials, the bio runs the full card width below, pills at the bottom

   (the text wrappers become display: contents so name / credentials / bio are cells of the card grid) */



.page-id-3508 .elementor-element-dbd10b1 .elementor-element-4418607 {

    width: auto;

    max-width: 100%;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-4418607 .elementor-heading-title {

    white-space: nowrap;

}



/* round 6: a little air under the sub-heading; social pills in one soft theme-purple tone (less contrast, no brand colours) */

.page-id-3508 .elementor-element-dbd10b1 > .e-con-inner {

    gap: 40px;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *,

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *:has(a[href*="instagram"]),

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *:has(a[href*="youtube"]),

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *:has(a[href*="linkedin"]) {

    --b: #8b78e6;

    border: 1px solid rgba(185, 168, 255, 0.26);

    background: rgba(255, 255, 255, 0.06) !important;

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) > *:hover {

    border-color: rgba(185, 168, 255, 0.55);

    background: rgba(139, 120, 230, 0.2) !important;

    box-shadow: 0 12px 22px -14px rgba(139, 120, 230, 0.7);

}

.page-id-3508 .elementor-element-dbd10b1 .elementor-element-bfc3d48 > .e-con > :nth-child(3) a > :first-child {

    background: rgba(139, 120, 230, 0.28);

}



/* ==========================================================================

   REFORMING ACADEMIA PODCAST - "FEATURED EPISODES" feedback round 7 (page-id-3508, section #cbb748d, slider #72dd5f7, CTAs #7065532)

   Tighter spacing so heading + cards + buttons fit one screen; cards: shorter picture with a soft fade, "PODCAST" pill sitting on the

   picture edge, navy title, gradient top-line and purple glow on hover; CTAs take the hero CTA design (rules above, selector extended).

   ========================================================================== */

.page-id-3508 .elementor-element-cbb748d {

    padding-top: 0;

    padding-bottom: 0;

}

.page-id-3508 .elementor-element-cbb748d > .e-con-inner {

    padding-top: clamp(28px, 3.2vw, 44px);

    padding-bottom: clamp(28px, 3.2vw, 44px);

}

.page-id-3508 .elementor-element-cbb748d .elementor-element-9fc29d6 {

    gap: 14px;

}

.page-id-3508 .elementor-element-cbb748d .elementor-element-1ad2b39 {

    gap: 6px;

}

.page-id-3508 .elementor-element-cbb748d .elementor-element-7a25b94 {

    margin-top: 0;

    padding-top: 0;

    padding-bottom: 0;

}

.page-id-3508 .elementor-element-cbb748d .custom-podcast-slider {

    padding: 6px 4px 34px;

}

.page-id-3508 .elementor-element-cbb748d .custom-slide-item {

    position: relative;

    border: 1px solid rgba(97, 82, 173, 0.14);

    border-radius: 24px;

    background: linear-gradient(180deg, #ffffff 0%, #faf8ff 100%);

    box-shadow: 0 22px 40px -28px rgba(34, 24, 92, 0.55);

}

.page-id-3508 .elementor-element-cbb748d .custom-slide-item::before {

    content: "";

    position: absolute;

    left: 0;

    right: 0;

    bottom: 0;

    height: 4px;

    border-radius: 0 0 24px 24px;

    background: linear-gradient(90deg, #223973 0%, #6152ad 55%, #8b78e6 100%);

    transform: scaleX(0);

    transform-origin: left;

    transition: transform 0.5s ease;

}

.page-id-3508 .elementor-element-cbb748d .custom-slide-item:hover::before {

    transform: scaleX(1);

}

.page-id-3508 .elementor-element-cbb748d .custom-slide-item:hover {

    border-color: rgba(139, 120, 230, 0.55);

    box-shadow: 0 30px 46px -26px rgba(97, 82, 173, 0.7);

}

.page-id-3508 .elementor-element-cbb748d .post-thumb {

    border-radius: 23px 23px 0 0;

}

.page-id-3508 .elementor-element-cbb748d .post-thumb img {

    aspect-ratio: 16 / 8;

}

.page-id-3508 .elementor-element-cbb748d .post-thumb::before {

    content: "";

    position: absolute;

    left: 0;

    right: 0;

    bottom: 0;

    height: 45%;

    background: linear-gradient(180deg, rgba(34, 24, 92, 0) 0%, rgba(34, 24, 92, 0.38) 100%);

    pointer-events: none;

    z-index: 1;

}

.page-id-3508 .elementor-element-cbb748d .post-content {

    padding: 0 20px 18px;

}

.page-id-3508 .elementor-element-cbb748d .post-category {

    position: relative;

    z-index: 2;

    margin: -14px 0 10px;

    background: #ffffff;

    box-shadow: 0 8px 16px -8px rgba(34, 24, 92, 0.45), inset 0 0 0 1px rgba(97, 82, 173, 0.18);

}

.page-id-3508 .elementor-element-cbb748d .post-title {

    min-height: 0;

    color: #223973;

}

.page-id-3508 .elementor-element-cbb748d .custom-slide-item:hover .post-title {

    color: #6152ad;

}



/* round 8: the hero button's base rules (position / clipping / round arrow chip) were scoped to #17147c3 only, so in the Latest Episode and

   Featured Episodes groups the sweep and the arrow chip rendered as loose boxes. Same base rules for those groups: */

.page-id-3508 .elementor-3508 :is(.elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a {

    position: relative;

    overflow: hidden;

    align-items: center;

}

.page-id-3508 .elementor-3508 :is(.elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a::before {

    border: 0;

    border-radius: 0;

    z-index: 1;

}

.page-id-3508 .elementor-3508 :is(.elementor-element-65a86b7, .elementor-element-7065532, .elementor-element-eaa29fb) > a::after {

    content: "92";

    position: absolute;

    right: 14px;

    top: 50%;

    bottom: auto;

    left: auto;

    width: 34px;

    height: 34px;

    margin-top: -17px;

    padding: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 0;

    border-radius: 50%;

    line-height: 1;

    z-index: 2;

}





/* round 9: "Don't Miss the Next One" - more air between the episode cards; its CTAs (#eaa29fb) take the hero CTA design (selectors extended above) */

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-list {

    gap: 20px;

}



/* ==========================================================================

   round 10 - "BEFORE YOU GO" balance (page-id-3508, section #bfaac8e): the text column was ~560px tall against a ~440px photo. Text column

   tightened (less gap / bottom padding), photo column widened so the hosts grow to about the same height, both columns share one row height

   and the photo still stands on the section's bottom edge.

   ========================================================================== */





/* round 11 - "BEFORE YOU GO": wider row (1150 -> 1320px), text and photo columns share it 50 / 50 and the text block is centred in its half */





/* "Load More" button: no underline on hover / focus */

.page-id-3508 .podcast-load-more-btn,

.page-id-3508 .podcast-load-more-btn:hover,

.page-id-3508 .podcast-load-more-btn:focus,

.page-id-3508 .podcast-load-more-btn:active {

    text-decoration: none;

}



/* ==========================================================================

   round 12 - "BEFORE YOU GO" (page-id-3508, section #bfaac8e): richer section + a better "Share Your Story" button (#10fc1de)

   Section: lavender wash with two soft colour orbs and a faint dot grid, a gradient accent bar before the second heading block.

   Button: purple-navy gradient pill, icon in a glass ring, arrow in a white round chip, light sweep + glow + lift on hover.

   ========================================================================== */

.page-id-3508 .elementor-element-bfaac8e::before {

    background:

        radial-gradient(circle at 8% 12%, rgba(139, 120, 230, 0.30) 0%, transparent 38%),

        radial-gradient(circle at 96% 92%, rgba(255, 190, 150, 0.32) 0%, transparent 40%),

        radial-gradient(rgba(97, 82, 173, 0.13) 1.3px, transparent 1.7px) 0 0 / 24px 24px,

        linear-gradient(115deg, #efe9ff 0%, #f8f5ff 42%, #ffffff 62%, #fff3ea 100%);

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de {

    position: relative;

    overflow: hidden;

    display: inline-flex;

    align-items: center;

    gap: 14px;

    width: auto;

    min-height: 68px;

    padding: 10px 14px 10px 12px;

    border: 1px solid rgba(255, 255, 255, 0.35);

    border-radius: 999px;

    background: linear-gradient(120deg, #223973 0%, #4b3f9e 45%, #7a68dc 100%) !important;

    box-shadow: 0 20px 34px -16px rgba(67, 54, 143, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.28);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de:hover {

    transform: translateY(-5px) scale(1.02);

    box-shadow: 0 28px 42px -16px rgba(67, 54, 143, 1), 0 0 0 5px rgba(139, 120, 230, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.35);

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de::before {

    content: "";

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(100deg, transparent 0%, rgba(255, 255, 255, 0.28) 50%, transparent 100%);

    transform: skewX(-20deg);

    pointer-events: none;

    transition: left 0.7s ease;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de:hover::before {

    left: 130%;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de > .elementor-element-a93e65b {

    width: 48px;

    height: 48px;

    flex: 0 0 48px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.16);

    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.3);

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de > .elementor-element-a93e65b img {

    width: 26px;

    height: auto;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de > .elementor-element-16e8df4 p {

    margin: 0;

    padding-right: 6px;

    color: #ffffff;

    font-weight: 700;

    white-space: nowrap;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de > .subs-arrow {

    width: 42px;

    height: 42px;

    flex: 0 0 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffffff;

    box-shadow: 0 8px 16px -8px rgba(8, 10, 40, 0.6);

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de > .subs-arrow img {

    width: 22px;

    height: auto;

    filter: brightness(0) saturate(100%) invert(30%) sepia(40%) saturate(1500%) hue-rotate(228deg);

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de:hover > .subs-arrow img {

    transform: translateX(4px);

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de > .subs-arrow img {

    filter: brightness(0);

    opacity: 0.85;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de:hover > .subs-arrow {

    transform: none;

}



/* "Don't Miss the Next One": episode cards a little taller (more padding, slightly larger thumbnail) */

.page-id-3508 .elementor-element-34b152b .elementor-element-2ea97c6 .podcast-item {

    padding: 18px 20px 18px 16px;

}





/* "Load More": same height as the platform CTAs beside it, with an arrow chip */

.page-id-3508 .elementor-element-34b152b .podcast-load-more-btn {

    position: relative;

    display: inline-flex;

    align-items: center;

    gap: 14px;

    height: 80px;

    padding: 0 14px 0 26px;

    border: 1px solid rgba(255, 255, 255, 0.3);

    border-radius: 18px;

    background: linear-gradient(120deg, #4b3f9e 0%, #6152ad 55%, #7a68dc 100%);

    box-shadow: 0 18px 30px -16px rgba(97, 82, 173, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.25);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;

}

.page-id-3508 .elementor-element-34b152b .podcast-load-more-btn::after {

    content: "92";

    width: 34px;

    height: 34px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffffff;

    color: #4b3f9e;

    font-size: 1.8rem;

    font-weight: 700;

    line-height: 1;

    transition: transform 0.3s ease;

}

.page-id-3508 .elementor-element-34b152b .podcast-load-more-btn:hover {

    transform: translateY(-4px);

    box-shadow: 0 24px 36px -16px rgba(97, 82, 173, 1), 0 0 0 4px rgba(139, 120, 230, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.3);

}

.page-id-3508 .elementor-element-34b152b .podcast-load-more-btn:hover::after {

    transform: translateX(4px);

}

.page-id-3508 .elementor-element-34b152b .podcast-load-more-wrap {

    align-self: center;

}





/* round 13 - "Don't Miss the Next One": less space under the sub-heading, more between the cards and the CTA row; "Load More" is a plain

   theme button again (solid purple, plain arrow - no circle) at the same 80px height as the platform CTAs */



.page-id-3508 .elementor-element-34b152b .podcast-load-more-btn {

    gap: 12px;

    padding: 0 26px;

    border: 1px solid rgba(255, 255, 255, 0.22);

    border-radius: 11px;

    background: #6152ad;

    box-shadow: 0 14px 24px -14px rgba(97, 82, 173, 0.9);

}

.page-id-3508 .elementor-element-34b152b .podcast-load-more-btn::after {

    width: auto;

    height: auto;

    display: inline-block;

    border-radius: 0;

    background: none;

    color: #ffffff;

    font-size: 2rem;

}

.page-id-3508 .elementor-element-34b152b .podcast-load-more-btn:hover {

    transform: translateY(-3px);

    border-color: rgba(169, 156, 245, 0.8);

    background: #5845bd;

    box-shadow: 0 20px 30px -14px rgba(97, 82, 173, 1);

}



/* round 14 - "Share Your Story" back in the theme's button language: solid brand purple, 14px corners, plain white arrow (no circles), with a

   light sweep, soft glow and an arrow slide on hover as the small extra */

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de {

    min-height: 64px;

    gap: 14px;

    padding: 10px 24px 10px 18px;

    border: 1px solid rgba(255, 255, 255, 0.22);

    border-radius: 14px;

    background: linear-gradient(180deg, #6a5bb8 0%, #6152ad 100%) !important;

    box-shadow: 0 16px 26px -14px rgba(97, 82, 173, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.2);

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de:hover {

    transform: translateY(-4px);

    background: linear-gradient(180deg, #5f4fc4 0%, #5845bd 100%) !important;

    box-shadow: 0 22px 32px -14px rgba(97, 82, 173, 1), inset 0 1px 0 rgba(255, 255, 255, 0.25);

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de > .elementor-element-a93e65b {

    width: auto;

    height: auto;

    flex: 0 0 auto;

    border-radius: 0;

    background: none;

    box-shadow: none;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de > .elementor-element-a93e65b img {

    width: 32px;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de > .subs-arrow {

    width: auto;

    height: auto;

    flex: 0 0 auto;

    border-radius: 0;

    background: none;

    box-shadow: none;

}

.page-id-3508 .elementor-element-bfaac8e .elementor-element-10fc1de > .subs-arrow img {

    width: 40px;

    filter: none;

    opacity: 1;

}



/* ==========================================================================

   round 15 - laptop widths (1025px - 1500px, e.g. 1366 x 900): "Latest Episode" video column and text + buttons column share one height

   (the video frame stretches with its iframe instead of stopping ~100px short of the buttons), tighter text panel.

   ========================================================================== */





/* laptop widths: the two platform CTAs + "Load More" shared one row with no gap - tighter "Load More" and a gutter before it */





/* laptop widths (1025px - 1500px, e.g. 1366 x 900): "Behind the Mic" fits one screen - slimmer section padding, heading gap and card padding */





/* phones: smaller "EPISODE:9" pill on the Latest Episode card */





/* phones: the two-button CTA groups (Latest Episode #65a86b7, Don't Miss #eaa29fb) sit side by side in one row, compact inside */





/* tablet / phone: "Meet the Host" cards were squeezed to ~40px (flex: 1 1 0 inside a column with a fixed height) - let the stack and the cards size to their content */





/* phones: same compact card as desktop (small photo beside name + credentials, bio full width, pills below) instead of a full-width photo */





/* ==================== custom-changes.css merged 2026-10-02 (design CSS) ==================== */

/* TEMPORARY: the prefers-reduced-motion blocks below are switched off (they carry an extra "(min-width: 99999px)" so they never match) so the animations can be reviewed on machines with OS-level reduced motion. To restore, delete " and (min-width: 99999px)" everywhere and set reduce back to window.matchMedia in custom-changes.js. */

/* =========================================================================

   TV & MEDIA HIGHLIGHTS PAGE (page-id-4908) - HERO

   Same look as the No Dumb Questions Journal Club hero: soft drifting colour blob, staggered fade-up of the copy, shimmering

   accent, glowing CTA, and the dashed wavy "scroll down" line (built in customjs/custom-changes.js). Here the CTA stays visible and

   the wavy line starts BELOW it, all within the first screen (the hero is 100vh tall).

   Elements: hero #37c04ef, eyebrow #ddbf23d, heading #61b8712, paragraph .banner-subheading, CTA #0e1b2e8.

   ========================================================================= */

.page-id-4908 .elementor-element-37c04ef {

    position: relative;

    overflow: hidden;

}

.page-id-4908 .elementor-element-37c04ef::after {

    content: '';

    position: absolute;

    top: -20%;

    left: -10%;

    right: auto;

    bottom: auto;

    width: 46%;

    height: 140%;

    background:

        radial-gradient(circle at 20% 30%, rgba(152, 128, 244, 0.22) 0%, transparent 55%),

        radial-gradient(circle at 70% 75%, rgba(97, 82, 173, 0.16) 0%, transparent 50%);

    filter: blur(10px);

    pointer-events: none;

    z-index: 1;

    animation: jcHeroBlob 12s ease-in-out infinite;

}

.page-id-4908 .elementor-element-37c04ef > .e-con-inner {

    position: relative;

    z-index: 2;

}



.page-id-4908 .elementor-element-ddbf23d,

.page-id-4908 .elementor-element-61b8712,

.page-id-4908 .elementor-element-94fc204 > .banner-subheading,

.page-id-4908 .elementor-element-0e1b2e8 {

    opacity: 0;

    animation: jcHeroFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-4908 .elementor-element-ddbf23d { animation-delay: 0.05s; }

.page-id-4908 .elementor-element-61b8712 { animation-delay: 0.18s; }

.page-id-4908 .elementor-element-94fc204 > .banner-subheading { animation-delay: 0.32s; }

.page-id-4908 .elementor-element-0e1b2e8 { animation-delay: 0.46s; }



.page-id-4908 .elementor-element-61b8712 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-4908 .elementor-element-61b8712:hover .colorTxt {

    background-position: 100% 0%;

}



.page-id-4908 .elementor-element-0e1b2e8 a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-4908 .elementor-element-0e1b2e8 a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-4908 .elementor-element-0e1b2e8 a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-4908 .elementor-element-0e1b2e8 a:hover::before {

    left: 130%;

}





@media (prefers-reduced-motion: reduce) and (min-width: 99999px) {

    .page-id-4908 .elementor-element-37c04ef::after {

        animation: none;

    }

    .page-id-4908 .elementor-element-ddbf23d,

    .page-id-4908 .elementor-element-61b8712,

    .page-id-4908 .elementor-element-94fc204 > .banner-subheading,

    .page-id-4908 .elementor-element-0e1b2e8 {

        opacity: 1;

        animation: none;

    }

}



/* =========================================================================

   MEDIA MENTIONS - logo carousel (#f1884b9 in section #cbc1d78): every logo sits on a glass card of the SAME height

   (the logos have different aspect ratios, so the card height is fixed and the logo is contained inside it).

   ========================================================================= */

.page-id-4908 .elementor-element-f1884b9 .swiper-slide {

    height: auto;

}

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-inner {

    box-sizing: border-box;

    height: 110px;

    margin: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 16px 22px;

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.55), rgba(255, 255, 255, 0.22));

    backdrop-filter: blur(14px) saturate(160%);

    -webkit-backdrop-filter: blur(14px) saturate(160%);

    border: 1px solid rgba(255, 255, 255, 0.7);

    border-radius: 16px;

    box-shadow: none;

    transition: transform 0.3s ease, box-shadow 0.3s ease;

}

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-inner:hover {

    transform: translateY(-3px);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.9);

}

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-image {

    width: auto;

    height: auto;

    max-width: 100%;

    max-height: 100%;

    object-fit: contain;

}



/* =========================================================================

   VIDEO FEATURES - cards (youtube highlights slider, container #fa63e55): all cards the same height. The slides stretch to

   the tallest one and each card fills its slide, with the title taking the leftover space (titles differ in length).

   ========================================================================= */

.page-id-4908 .elementor-element-fa63e55 .swiper-wrapper {

    align-items: stretch;

}

.page-id-4908 .elementor-element-fa63e55 .swiper-slide {

    height: auto;

    display: flex;

}

.page-id-4908 .elementor-element-fa63e55 .cvp-card {

    display: flex;

    flex-direction: column;

    width: 100%;

    height: auto;

}

.page-id-4908 .elementor-element-fa63e55 .cvp-title {

    flex: 1 1 auto;

    display: flex;

    align-items: center;

    justify-content: center;

}



/* white section; the cards are tinted (brand lavender), semi-transparent glass with a soft glow so they stand out on white */

.page-id-4908 .elementor-element-cbc1d78 {

    background-color: #fff;

    background-image: none;

}

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-inner {

    background: linear-gradient(135deg, rgba(152, 128, 244, 0.20) 0%, rgba(152, 128, 244, 0.07) 55%, rgba(188, 24, 136, 0.06) 100%);

    border: 1px solid rgba(152, 128, 244, 0.38);

    box-shadow:

        0 10px 28px rgba(97, 82, 173, 0.20),

        0 0 22px rgba(152, 128, 244, 0.22),

        inset 0 1px 0 rgba(255, 255, 255, 0.85),

        inset 0 -1px 0 rgba(152, 128, 244, 0.12);

}

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-inner:hover {

    background: linear-gradient(135deg, rgba(152, 128, 244, 0.28) 0%, rgba(152, 128, 244, 0.12) 55%, rgba(188, 24, 136, 0.09) 100%);

    box-shadow:

        0 16px 36px rgba(97, 82, 173, 0.28),

        0 0 30px rgba(152, 128, 244, 0.38),

        inset 0 1px 0 rgba(255, 255, 255, 0.9);

}



/* phones show one logo at a time: keep the glass card off the screen edges */





/* =========================================================================

   ON THE MIC - podcasts (section #a86f7b1: heading block #914062c, grid #aa30b7b = photo #8726d17 + list shortcode #be5446f)

   Desktop (1025px and up): sticky-scroll, one fold. The section is taller than the screen (height set by customjs/custom-changes.js);

   its inner stage (.e-con-inner) sticks to the top for the whole scroll while the PAGE scroll drives the episode cards upward on the

   right (no inner scrollbar, no scroll trap). The photo stays on the left. The card nearest the middle of the column is

   .is-active: it glows and lifts, the others fade back. A glowing, slowly drifting colour wash sits behind the stage.

   Below 1025px it falls back to the normal stacked list (photo hidden, as before).

   ========================================================================= */





@keyframes tvMicGlow {

    0%   { transform: translate3d(0, 0, 0) scale(1); opacity: 0.85; }

    100% { transform: translate3d(2%, -3%, 0) scale(1.08); opacity: 1; }

}



@media (prefers-reduced-motion: reduce) and (min-width: 99999px) {

    .page-id-4908 .elementor-element-a86f7b1 > .e-con-inner::before {

        animation: none;

    }

    .page-id-4908 .media-item {

        transition: none;

    }

}



/* below 1025px: plain stacked list, photo hidden (as before) */





/* =========================================================================

   VIDEO FEATURES - hover: the card lifts a little and its thumbnail zooms in slightly

   ========================================================================= */

.page-id-4908 .elementor-element-fa63e55 .cvp-card {

    transition: transform 0.35s ease, box-shadow 0.35s ease;

}

.page-id-4908 .elementor-element-fa63e55 .cvp-thumb {

    overflow: hidden;

}

.page-id-4908 .elementor-element-fa63e55 .cvp-thumb img {

    transition: transform 0.5s ease;

}

.page-id-4908 .elementor-element-fa63e55 .cvp-card:hover {

    transform: translateY(-8px);

    box-shadow: 0 16px 34px rgba(97, 82, 173, 0.28);

}

.page-id-4908 .elementor-element-fa63e55 .cvp-card:hover .cvp-thumb img {

    transform: scale(1.08);

}



/* =========================================================================

   ON THE MIC - "Load More" button: same hover as the banner CTA (glowing lift + light sweep)

   ========================================================================= */

.page-id-4908 .media-highlights-load-more-btn {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-4908 .media-highlights-load-more-btn:hover {

    opacity: 1;

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-4908 .media-highlights-load-more-btn::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-4908 .media-highlights-load-more-btn:hover::before {

    left: 130%;

}



/* 2nd section: logo cards carry no box-shadow (normal or hover) */

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-inner,

.page-id-4908 .elementor-element-f1884b9 .swiper-slide-inner:hover {

    box-shadow: none;

}



/* =========================================================================

   RECOGNITION & REACH (section #7e238f6): three press sliders of .ck-press-card.

   Design language taken from the Non-Traditional Science Careers page (page-id-3499) - the house "beautify" style:

   - background: lavender gradient with a soft lavender glow (top-left) and a peach glow (bottom-right)

   - patches: a thin decorative ring top-right, a ring + glow behind the section heading

   - cards: white, 22px radius, hairline lavender border (rgba(97,82,173,.12)), soft drop shadow; on hover they lift 4px, the

     border turns purple, the photo zooms and a white arrow chip slides in on it; titles turn purple

   - brand-coloured pagination (active dot = pill)

   Cards stay equal height (two title lines / three excerpt lines reserved).

   ========================================================================= */

.page-id-4908 .elementor-element-7e238f6 {

    position: relative;

    overflow: hidden;

    background-image:

        radial-gradient(ellipse 40% 60% at 8% 12%, rgba(185, 168, 255, 0.55) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 35% 55% at 95% 92%, rgba(255, 214, 180, 0.45) 0%, rgba(255, 214, 180, 0) 70%),

        linear-gradient(135deg, #F4F0FF 0%, #EAE3FF 55%, #F8F4FF 100%);

    background-color: #F1ECFF;

}

/* decorative ring, top right */

.page-id-4908 .elementor-element-7e238f6::after {

    content: '';

    position: absolute;

    right: -70px;

    top: -70px;

    width: 240px;

    height: 240px;

    border-radius: 50%;

    border: 2px solid rgba(97, 82, 173, 0.16);

    pointer-events: none;

}

/* second, smaller ring + glow, bottom left */

.page-id-4908 .elementor-element-7e238f6::before {

    content: '';

    position: absolute;

    left: -60px;

    bottom: -60px;

    width: 190px;

    height: 190px;

    border-radius: 50%;

    border: 2px solid rgba(97, 82, 173, 0.14);

    background: radial-gradient(circle, rgba(185, 168, 255, 0.35) 0%, rgba(185, 168, 255, 0) 70%);

    pointer-events: none;

}

.page-id-4908 .elementor-element-7e238f6 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* sub-section titles ("Spotlight Features" ...) */

.page-id-4908 .elementor-element-7e238f6 .e-div-block-base .e-heading-base {

    color: #223973;

    letter-spacing: 0.02em;

}



/* slider: room above the cards so the hover lift is not clipped */

.page-id-4908 .elementor-element-7e238f6 .swiper {

    padding-top: 14px;

}



/* card */

.page-id-4908 .elementor-element-7e238f6 .ck-press-card {

    background: #ffffff;

    border: 1px solid rgba(97, 82, 173, 0.12);

    border-radius: 22px;

    box-shadow: 0 12px 22px -16px rgba(45, 36, 99, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover {

    transform: translateY(-4px);

    border-color: rgba(97, 82, 173, 0.4);

    box-shadow: 0 16px 26px -16px rgba(97, 82, 173, 0.7);

}



/* image + arrow chip */

.page-id-4908 .elementor-element-7e238f6 .ck-press-image {

    position: relative;

    overflow: hidden;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-image img {

    height: 210px;

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover .ck-press-image img {

    transform: scale(1.07);

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-image::after {

    content: '\2192';

    position: absolute;

    right: 14px;

    bottom: 14px;

    width: 38px;

    height: 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffffff;

    color: #6152AD;

    font-size: 2rem;

    font-weight: 700;

    line-height: 1;

    box-shadow: 0 10px 20px -8px rgba(6, 10, 17, 0.5);

    transform: translateY(6px) scale(0.9);

    opacity: 0;

    transition: transform 0.35s ease, opacity 0.35s ease;

    pointer-events: none;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover .ck-press-image::after {

    transform: translateY(0) scale(1);

    opacity: 1;

}



/* text */

.page-id-4908 .elementor-element-7e238f6 .ck-press-content {

    flex: 1 1 auto;

    padding: 18px 20px 22px;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-title {

    color: #1d1b2e;

    font-weight: 700;

    min-height: 2.8em;

    transition: color 0.3s ease;

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover .ck-press-title {

    color: #6152AD;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-excerpt {

    color: #4a4763;

    min-height: 4.8em;

    display: -webkit-box;

    -webkit-line-clamp: 3;

    -webkit-box-orient: vertical;

    overflow: hidden;

}



/* pagination dots */

.page-id-4908 .elementor-element-7e238f6 .swiper-pagination-bullet {

    width: 9px;

    height: 9px;

    background: #cdbff9;

    opacity: 1;

    transition: width 0.3s ease, background 0.3s ease;

}

.page-id-4908 .elementor-element-7e238f6 .swiper-pagination-bullet-active {

    width: 26px;

    border-radius: 6px;

    background: linear-gradient(90deg, #3f3490, #6152AD);

}

@media (prefers-reduced-motion: reduce) and (min-width: 99999px) {

    .page-id-4908 .elementor-element-7e238f6 .ck-press-card,

    .page-id-4908 .elementor-element-7e238f6 .ck-press-image img,

    .page-id-4908 .elementor-element-7e238f6 .ck-press-image::after {

        transition: none;

    }

}





/* =========================================================================

   SCIENCE FOR EVERYONE (section #400e250: heading block #2004f23, slider #6d0b2aa of .ck-chloe-card, button #5bc4c55 "More Here").

   Same house style as the Non-Traditional Science Careers page (see "beautify" note): white base with a lavender glow (left) and a

   peach glow (right), decorative rings with a soft glow top-left / bottom-right, white cards with a hairline lavender border

   (22px radius, lift + purple border + image zoom + arrow chip on hover), equal-height cards, brand pagination, and the button

   gets the glowing lift + light sweep of the banner CTA.

   ========================================================================= */

.page-id-4908 .elementor-element-400e250 {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 40% 60% at 6% 70%, rgba(185, 168, 255, 0.30) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 60% at 96% 18%, rgba(255, 214, 180, 0.40) 0%, rgba(255, 214, 180, 0) 70%),

        #ffffff;

}

/* ring + glow, top left */

.page-id-4908 .elementor-element-400e250::before {

    content: '';

    position: absolute;

    left: -70px;

    top: -70px;

    width: 220px;

    height: 220px;

    border-radius: 50%;

    border: 2px solid rgba(97, 82, 173, 0.14);

    background: radial-gradient(circle, rgba(185, 168, 255, 0.35) 0%, rgba(185, 168, 255, 0) 70%);

    pointer-events: none;

}

/* ring, bottom right */

.page-id-4908 .elementor-element-400e250::after {

    content: '';

    position: absolute;

    right: -80px;

    bottom: -80px;

    width: 260px;

    height: 260px;

    border-radius: 50%;

    border: 2px solid rgba(97, 82, 173, 0.16);

    pointer-events: none;

}

.page-id-4908 .elementor-element-400e250 > .e-con-inner {

    position: relative;

    z-index: 1;

}



.page-id-4908 .elementor-element-400e250 .swiper {

    padding-top: 14px;

}



/* cards */

.page-id-4908 .elementor-element-400e250 .ck-chloe-card {

    background: #ffffff;

    border: 1px solid rgba(97, 82, 173, 0.12);

    border-radius: 22px;

    box-shadow: 0 12px 22px -16px rgba(45, 36, 99, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-card:hover {

    transform: translateY(-4px);

    border-color: rgba(97, 82, 173, 0.4);

    box-shadow: 0 16px 26px -16px rgba(97, 82, 173, 0.7);

}



/* image + arrow chip */

.page-id-4908 .elementor-element-400e250 .ck-chloe-image {

    position: relative;

    overflow: hidden;

    background: #F6F1FF;

    border-bottom: 1px solid rgba(97, 82, 173, 0.10);

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-image img {

    height: 210px;

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-card:hover .ck-chloe-image img {

    transform: scale(1.07);

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-image::after {

    content: '\2192';

    position: absolute;

    right: 14px;

    bottom: 14px;

    width: 38px;

    height: 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffffff;

    color: #6152AD;

    font-size: 2rem;

    font-weight: 700;

    line-height: 1;

    box-shadow: 0 10px 20px -8px rgba(6, 10, 17, 0.5);

    transform: translateY(6px) scale(0.9);

    opacity: 0;

    transition: transform 0.35s ease, opacity 0.35s ease;

    pointer-events: none;

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-card:hover .ck-chloe-image::after {

    transform: translateY(0) scale(1);

    opacity: 1;

}



/* text */

.page-id-4908 .elementor-element-400e250 .ck-chloe-content {

    padding: 18px 20px 22px;

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-title {

    color: #1d1b2e;

    font-weight: 700;

    min-height: 2.8em;

    transition: color 0.3s ease;

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-card:hover .ck-chloe-title {

    color: #6152AD;

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-excerpt {

    color: #4a4763;

    min-height: 4.8em;

    display: -webkit-box;

    -webkit-line-clamp: 3;

    -webkit-box-orient: vertical;

    overflow: hidden;

}



/* pagination dots */

.page-id-4908 .elementor-element-400e250 .swiper-pagination-bullet {

    width: 9px;

    height: 9px;

    background: #cdbff9;

    opacity: 1;

    transition: width 0.3s ease, background 0.3s ease;

}

.page-id-4908 .elementor-element-400e250 .swiper-pagination-bullet-active {

    width: 26px;

    border-radius: 6px;

    background: linear-gradient(90deg, #3f3490, #6152AD);

}



/* "More Here" button: same glowing lift + light sweep as the banner CTA */

.page-id-4908 .elementor-element-5bc4c55 a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-4908 .elementor-element-5bc4c55 a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-4908 .elementor-element-5bc4c55 a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-4908 .elementor-element-5bc4c55 a:hover::before {

    left: 130%;

}

@media (prefers-reduced-motion: reduce) and (min-width: 99999px) {

    .page-id-4908 .elementor-element-400e250 .ck-chloe-card,

    .page-id-4908 .elementor-element-400e250 .ck-chloe-image img,

    .page-id-4908 .elementor-element-400e250 .ck-chloe-image::after,

    .page-id-4908 .elementor-element-5bc4c55 a {

        transition: none;

    }

}





/* =========================================================================

   COLLABORATE WITH CHLOE (last section #afc49c4 > #53e01d2): outline icons scattered over the background (science / media

   theme: mic, flask, atom, TV, headphones, bulb, camera, news, chat, DNA, book, sparkles) in the brand purple at 20% opacity.

   They are background-image layers (inline SVG), so they sit behind the content and never block clicks. Mostly at the sides and

   the top / bottom edges so they don't compete with the form and photo.

   ========================================================================= */

.page-id-4908 .elementor-element-afc49c4 {

    position: relative;

    overflow: hidden;

    background:

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(-12%2012%2012)%22%3E%3Crect%20x%3D%229%22%20y%3D%223%22%20width%3D%226%22%20height%3D%2211%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M5%2011a7%207%200%200%200%2014%200M12%2018v3M8%2021h8%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 4% 5% / 66px 66px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(14%2012%2012)%22%3E%3Cpath%20d%3D%22M9%203h6M10%203v6l-5%209a2%202%200%200%200%202%203h10a2%202%200%200%200%202-3l-5-9V3M7.5%2015h9%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 94% 4% / 58px 58px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(0%2012%2012)%22%3E%3Cpath%20d%3D%22M12%203l2%206%206%203-6%203-2%206-2-6-6-3%206-3z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 22% 9% / 34px 34px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(-8%2012%2012)%22%3E%3Cpath%20d%3D%22M21%2012a8%208%200%200%201-11.5%207.2L4%2020l1-4.5A8%208%200%201%201%2021%2012z%22%2F%3E%3Cpath%20d%3D%22M8.5%2011.5h.01M12%2011.5h.01M15.5%2011.5h.01%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 77% 11% / 48px 48px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(10%2012%2012)%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%221.6%22%2F%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%2210%22%20ry%3D%224%22%2F%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%2210%22%20ry%3D%224%22%20transform%3D%22rotate(60%2012%2012)%22%2F%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%2210%22%20ry%3D%224%22%20transform%3D%22rotate(120%2012%2012)%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 8% 30% / 56px 56px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(-6%2012%2012)%22%3E%3Crect%20x%3D%223%22%20y%3D%226%22%20width%3D%2218%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%2021h8M12%2018v3M9%202.5l3%203.5%203-3.5%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 92% 27% / 62px 62px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(18%2012%2012)%22%3E%3Cpath%20d%3D%22M7%203c0%206%2010%206%2010%2012s-10%206-10%206M17%203c0%206-10%206-10%2012s10%206%2010%206M8.5%207.5h7M8.5%2016.5h7%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 18% 47% / 50px 50px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(8%2012%2012)%22%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M7%208h6M7%2012h10M7%2016h10%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 85% 47% / 48px 48px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(-10%2012%2012)%22%3E%3Cpath%20d%3D%22M4%2015v-3a8%208%200%200%201%2016%200v3%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2214%22%20width%3D%224%22%20height%3D%227%22%20rx%3D%221.5%22%2F%3E%3Crect%20x%3D%2217%22%20y%3D%2214%22%20width%3D%224%22%20height%3D%227%22%20rx%3D%221.5%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 3% 64% / 60px 60px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(12%2012%2012)%22%3E%3Cpath%20d%3D%22M9%2018h6M10%2021h4M12%203a6%206%200%200%200-4%2010.5c.7.7%201%201.5%201%202.5h6c0-1%20.3-1.8%201-2.5A6%206%200%200%200%2012%203z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 96% 63% / 54px 54px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(-14%2012%2012)%22%3E%3Cpath%20d%3D%22M4%204.5A1.5%201.5%200%200%201%205.5%203H20v15H5.5A1.5%201.5%200%200%200%204%2019.5zM4%2019.5A1.5%201.5%200%200%200%205.5%2021H20v-3%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 14% 82% / 52px 52px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(7%2012%2012)%22%3E%3Crect%20x%3D%223%22%20y%3D%226%22%20width%3D%2213%22%20height%3D%2212%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M16%2010l5-3v10l-5-3%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 88% 80% / 58px 58px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(0%2012%2012)%22%3E%3Cpath%20d%3D%22M12%203l2%206%206%203-6%203-2%206-2-6-6-3%206-3z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 70% 93% / 40px 40px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(-20%2012%2012)%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%221.6%22%2F%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%2210%22%20ry%3D%224%22%2F%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%2210%22%20ry%3D%224%22%20transform%3D%22rotate(60%2012%2012)%22%2F%3E%3Cellipse%20cx%3D%2212%22%20cy%3D%2212%22%20rx%3D%2210%22%20ry%3D%224%22%20transform%3D%22rotate(120%2012%2012)%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 30% 95% / 40px 40px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(16%2012%2012)%22%3E%3Crect%20x%3D%229%22%20y%3D%223%22%20width%3D%226%22%20height%3D%2211%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M5%2011a7%207%200%200%200%2014%200M12%2018v3M8%2021h8%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 52% 97% / 38px 38px no-repeat,

        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236152AD%22%20stroke-opacity%3D%220.2%22%20stroke-width%3D%221.4%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20transform%3D%22rotate(0%2012%2012)%22%3E%3Cpath%20d%3D%22M12%203l2%206%206%203-6%203-2%206-2-6-6-3%206-3z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 5% 92% / 30px 30px no-repeat,

        rgba(248, 229, 215, 0.71);

}

.page-id-4908 .elementor-element-afc49c4 > .e-con-inner {

    position: relative;

    z-index: 1;

}





/* SCIENCE FOR EVERYONE - card text area: just a soft purple gradient coming in from the right (no rings, accent bar or yellow glow) */

.page-id-4908 .elementor-element-400e250 .ck-chloe-content {

    background: linear-gradient(270deg, rgba(185, 168, 255, 0.30) 0%, rgba(185, 168, 255, 0) 65%), #ffffff;

}



/* On the Mic heading block: centre the title / heading / sub-line on tablet and phone (the heading widgets were shrink-wrapped to the left) */





/* On the Mic on short / small laptop screens: tighter stage so the card column keeps a usable height */





/* SCIENCE FOR EVERYONE - purple accent bar down the left edge of the card text area */

.page-id-4908 .elementor-element-400e250 .ck-chloe-content {

    position: relative;

    padding-left: 24px;

}

.page-id-4908 .elementor-element-400e250 .ck-chloe-content::before {

    content: '';

    position: absolute;

    left: 0;

    top: 0;

    bottom: 0;

    width: 4px;

    background: linear-gradient(180deg, #6152AD 0%, #B9A8FF 100%);

    pointer-events: none;

}





/* =========================================================================

   DISCOVERED AT MICROSOFT PAGE (page-id-8876) - BANNER

   Hero #22c083e4 (photo = background image, right), content col #adc7aa8: eyebrow #e476671, heading #5eb569d (h1.banner-inner-heading),

   paragraph .banner-subheading, location line #fe99467, CTA #cea66ab.

   A "research lab / Seattle" treatment, different from the other banners: a slowly drifting dot-grid under soft lavender + peach

   glows on the copy side; a four-tile mark (red, green, blue, yellow - echoing the logo in the photo) that builds itself above the eyebrow and a

   matching four-colour rule that draws under the heading; the location line becomes a frosted glass chip with an accent bar; the

   CTA gets a glowing lift, light sweep and a bobbing arrow. CSS only; font sizes are not touched.

   ========================================================================= */

.page-id-8876 .elementor-element-22c083e4 {

    position: relative;

    overflow: hidden;

}

/* dot grid + glows, fading out towards the photo */

.page-id-8876 .elementor-element-22c083e4::after {

    content: '';

    position: absolute;

    top: 0;

    bottom: 0;

    left: 0;

    width: 66%;

    z-index: 1;

    pointer-events: none;

    background:

        radial-gradient(ellipse 50% 45% at 12% 12%, rgba(255, 214, 180, 0.55) 0%, rgba(255, 214, 180, 0) 70%),

        radial-gradient(ellipse 55% 50% at 30% 85%, rgba(185, 168, 255, 0.40) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(circle at center, rgba(97, 82, 173, 0.30) 1.3px, rgba(97, 82, 173, 0) 1.8px);

    background-size: auto, auto, 28px 28px;

    -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 55%, transparent 100%);

    mask-image: linear-gradient(90deg, #000 0%, #000 55%, transparent 100%);

    animation: msDots 40s linear infinite;

}

@keyframes msDots {

    from { background-position: 0 0, 0 0, 0 0; }

    to   { background-position: 0 0, 0 0, 280px 140px; }

}

.page-id-8876 .elementor-element-22c083e4 > .e-con-inner {

    position: relative;

    z-index: 2;

}



/* staggered entrance of the copy */

.page-id-8876 .elementor-element-e476671,

.page-id-8876 .elementor-element-5eb569d,

.page-id-8876 .elementor-element-adc7aa8 > .banner-subheading,

.page-id-8876 .elementor-element-fe99467,

.page-id-8876 .elementor-element-cea66ab {

    opacity: 0;

    animation: jcHeroFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-8876 .elementor-element-e476671 { animation-delay: 0.45s; }

.page-id-8876 .elementor-element-5eb569d { animation-delay: 0.58s; }

.page-id-8876 .elementor-element-adc7aa8 > .banner-subheading { animation-delay: 0.72s; }

.page-id-8876 .elementor-element-fe99467 { animation-delay: 0.86s; }

.page-id-8876 .elementor-element-cea66ab { animation-delay: 1s; }



/* four-tile mark above the eyebrow: the tiles pop in one after the other */

.page-id-8876 .elementor-element-adc7aa8 {

    position: relative;

}

.page-id-8876 .elementor-element-adc7aa8::before {

    content: '';

    position: absolute;

    left: 10px;

    top: -58px;

    width: 38px;

    height: 38px;

    background:

        linear-gradient(#F25022, #F25022) 0 0 / 17px 17px no-repeat,

        linear-gradient(#7FBA00, #7FBA00) 21px 0 / 17px 17px no-repeat,

        linear-gradient(#00A4EF, #00A4EF) 0 21px / 17px 17px no-repeat,

        linear-gradient(#FFB900, #FFB900) 21px 21px / 17px 17px no-repeat;

    border-radius: 3px;

    filter: drop-shadow(0 6px 10px rgba(45, 36, 99, 0.18));

    animation: msTiles 1.4s cubic-bezier(0.22, 1, 0.36, 1) 0.1s both;

}

@keyframes msTiles {

    0%   { background-size: 0 0, 0 0, 0 0, 0 0; }

    25%  { background-size: 17px 17px, 0 0, 0 0, 0 0; }

    50%  { background-size: 17px 17px, 17px 17px, 0 0, 0 0; }

    75%  { background-size: 17px 17px, 17px 17px, 17px 17px, 0 0; }

    100% { background-size: 17px 17px, 17px 17px, 17px 17px, 17px 17px; }

}



/* heading: accent word shimmers on hover, and a four-colour rule draws underneath */

.page-id-8876 .elementor-element-5eb569d {

    position: relative;

    padding-bottom: 16px;

}

.page-id-8876 .elementor-element-5eb569d .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-8876 .elementor-element-5eb569d:hover .colorTxt {

    background-position: 100% 0%;

}

.page-id-8876 .elementor-element-5eb569d::after {

    content: '';

    position: absolute;

    left: 0;

    bottom: 0;

    height: 4px;

    width: 0;

    border-radius: 4px;

    background: linear-gradient(90deg, #F25022 0 25%, #7FBA00 25% 50%, #00A4EF 50% 75%, #FFB900 75% 100%);

    animation: msRule 0.9s cubic-bezier(0.22, 1, 0.36, 1) 1.1s forwards;

}

@keyframes msRule {

    to { width: 120px; }

}



/* location line -> frosted glass chip with an accent bar */

.page-id-8876 .elementor-element-fe99467 {

    width: fit-content;

    max-width: 100%;

}

.page-id-8876 .elementor-element-fe99467 .elementor-image-box-wrapper {

    position: relative;

    overflow: hidden;

    padding: 12px 18px 12px 22px;

    border: 1px solid rgba(97, 82, 173, 0.18);

    border-radius: 16px;

    background: rgba(255, 255, 255, 0.62);

    -webkit-backdrop-filter: blur(10px);

    backdrop-filter: blur(10px);

    box-shadow: 0 14px 26px -18px rgba(45, 36, 99, 0.5);

}

.page-id-8876 .elementor-element-fe99467 .elementor-image-box-wrapper::before {

    content: '';

    position: absolute;

    left: 0;

    top: 0;

    bottom: 0;

    width: 5px;

    background: linear-gradient(180deg, #6152AD 0%, #B9A8FF 100%);

}



/* CTA: glowing lift + light sweep + bobbing arrow */

.page-id-8876 .elementor-element-cea66ab a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-8876 .elementor-element-cea66ab a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-8876 .elementor-element-cea66ab a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-8876 .elementor-element-cea66ab a:hover::before {

    left: 130%;

}

.page-id-8876 .elementor-element-cea66ab .elementor-button-icon {

    animation: msBob 1.8s ease-in-out infinite;

}

@keyframes msBob {

    0%, 100% { transform: translateY(-2px); }

    50%      { transform: translateY(3px); }

}





@media (prefers-reduced-motion: reduce) and (min-width: 99999px) {

    .page-id-8876 .elementor-element-22c083e4::after,

    .page-id-8876 .elementor-element-adc7aa8::before,

    .page-id-8876 .elementor-element-5eb569d::after,

    .page-id-8876 .elementor-element-cea66ab .elementor-button-icon {

        animation: none;

    }

    .page-id-8876 .elementor-element-5eb569d::after {

        width: 120px;

    }

    .page-id-8876 .elementor-element-e476671,

    .page-id-8876 .elementor-element-5eb569d,

    .page-id-8876 .elementor-element-adc7aa8 > .banner-subheading,

    .page-id-8876 .elementor-element-fe99467,

    .page-id-8876 .elementor-element-cea66ab {

        opacity: 1;

        animation: none;

    }

}



/* tablet / phone: the copy starts right under the header, so the tile mark sits at the top-right of the column instead of above it */





/* =========================================================================

   DISCOVERED AT MICROSOFT - "THE INVITATION" (section #2ebfcaf7, row #27f3a523: photo col #6c2a7978 > widget #2e9de80e > img,

   text col #befe4e2: eyebrow #9646ae1, heading #19095fb7, two paragraphs).

   An "invitation" treatment: the photo becomes a tilted polaroid held by a strip of tape with a round "SEPT 2025" stamp on its

   corner (it straightens on hover); the copy sits on a stationery card - frosted white, a dashed inner border, a folded top-right

   corner - and the first paragraph opens with a big serif drop-cap. A lavender / peach wash with a soft ring sits behind. One fold.

   ========================================================================= */

.page-id-8876 .elementor-element-2ebfcaf7 {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 40% 60% at 6% 25%, rgba(185, 168, 255, 0.34) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 38% 55% at 96% 85%, rgba(255, 214, 180, 0.42) 0%, rgba(255, 214, 180, 0) 70%),

        #ffffff;

}

.page-id-8876 .elementor-element-2ebfcaf7::before {

    content: '';

    position: absolute;

    right: -80px;

    top: -80px;

    width: 250px;

    height: 250px;

    border-radius: 50%;

    border: 2px solid rgba(97, 82, 173, 0.15);

    pointer-events: none;

}

.page-id-8876 .elementor-element-2ebfcaf7 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* photo -> polaroid */

.page-id-8876 .elementor-element-6c2a7978 {

    position: relative;

}

.page-id-8876 .elementor-element-2e9de80e {

    position: relative;

    transform: rotate(-3deg);

    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8876 .elementor-element-2e9de80e img {

    display: block;

    border: 12px solid #ffffff;

    border-bottom-width: 38px;

    border-radius: 6px;

    box-shadow: 0 26px 40px -22px rgba(45, 36, 99, 0.55), 0 0 0 1px rgba(97, 82, 173, 0.10);

}

.page-id-8876 .elementor-element-6c2a7978:hover .elementor-element-2e9de80e {

    transform: rotate(0deg) scale(1.02);

}

/* strip of tape */

.page-id-8876 .elementor-element-2e9de80e::before {

    content: '';

    position: absolute;

    left: 50%;

    top: -14px;

    width: 96px;

    height: 28px;

    margin-left: -48px;

    background: rgba(185, 168, 255, 0.55);

    border-left: 2px dotted rgba(255, 255, 255, 0.7);

    border-right: 2px dotted rgba(255, 255, 255, 0.7);

    transform: rotate(4deg);

    z-index: 2;

    pointer-events: none;

}

/* round stamp */

.page-id-8876 .elementor-element-6c2a7978::after {

    content: 'SEPT\A 2025';

    white-space: pre;

    position: absolute;

    right: 6px;

    bottom: 6px;

    width: 82px;

    height: 82px;

    display: flex;

    align-items: center;

    justify-content: center;

    text-align: center;

    border-radius: 50%;

    background: linear-gradient(135deg, #6152AD 0%, #9880F4 100%);

    border: 3px dashed rgba(255, 255, 255, 0.75);

    box-shadow: 0 12px 22px -8px rgba(97, 82, 173, 0.65);

    color: #ffffff;

    font-size: 1.3rem;

    font-weight: 700;

    letter-spacing: 0.12em;

    line-height: 1.35;

    transform: rotate(-12deg);

    z-index: 3;

    pointer-events: none;

}



/* copy -> stationery card */

.page-id-8876 .elementor-element-befe4e2 {

    position: relative;

    padding: 34px 44px 32px 44px;

    border: 1px solid rgba(97, 82, 173, 0.12);

    border-radius: 26px;

    background: rgba(255, 255, 255, 0.78);

    -webkit-backdrop-filter: blur(10px);

    backdrop-filter: blur(10px);

    box-shadow: 0 26px 50px -30px rgba(45, 36, 99, 0.45);

    overflow: hidden;

}

/* dashed inner border */

.page-id-8876 .elementor-element-befe4e2::before {

    content: '';

    position: absolute;

    inset: 10px;

    border: 1.5px dashed rgba(97, 82, 173, 0.25);

    border-radius: 18px;

    pointer-events: none;

}

/* folded corner, top right */

.page-id-8876 .elementor-element-befe4e2::after {

    content: '';

    position: absolute;

    top: 0;

    right: 0;

    width: 58px;

    height: 58px;

    background: linear-gradient(225deg, rgba(255, 255, 255, 0) 50%, #E9E1FF 50%);

    border-bottom-left-radius: 14px;

    box-shadow: -5px 5px 10px -6px rgba(45, 36, 99, 0.35);

    pointer-events: none;

}

.page-id-8876 .elementor-element-befe4e2 > * {

    position: relative;

    z-index: 1;

}

/* drop-cap on the first paragraph */

.page-id-8876 .elementor-element-befe4e2 > p:first-of-type::first-letter {

    float: left;

    margin: 4px 10px 0 0;

    font-family: Georgia, 'Times New Roman', serif;

    font-size: 5.2rem;

    line-height: 0.82;

    font-weight: 700;

    color: #6152AD;

}





@media (prefers-reduced-motion: reduce) and (min-width: 99999px) {

    .page-id-8876 .elementor-element-2e9de80e {

        transition: none;

    }

}



/* phones: keep the whole stamp text visible and a smaller folded corner */





/* =========================================================================

   DISCOVERED AT MICROSOFT - "THE WORK" (section #54814ff7: heading block #8809391, grid #45ad5115 of three priority cards

   #16a41eb9 / #33551c02 / #2a961620, each an image-box: icon + title + text).

   A dark "research console" section, in contrast with the light sections around it: deep navy with lavender / sky / pink glows and

   a faint dot grid; the three priorities are glass-dark cards joined by a dashed "pipeline" line, each with its own accent colour

   (lavender, sky blue, pink): gradient hairline border, a glowing top edge, a big outlined 01 / 02 / 03 numeral, and a lift + glow

   on hover. One fold.

   ========================================================================= */

.page-id-8876 .elementor-element.elementor-element-54814ff7:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 38% 60% at 8% 20%, rgba(152, 128, 244, 0.34) 0%, rgba(152, 128, 244, 0) 70%),

        radial-gradient(ellipse 34% 55% at 52% 110%, rgba(79, 195, 247, 0.22) 0%, rgba(79, 195, 247, 0) 70%),

        radial-gradient(ellipse 36% 60% at 96% 15%, rgba(244, 114, 182, 0.22) 0%, rgba(244, 114, 182, 0) 70%),

        radial-gradient(circle at center, rgba(185, 168, 255, 0.16) 1.2px, rgba(185, 168, 255, 0) 1.7px) 0 0 / 28px 28px,

        linear-gradient(160deg, #0F1536 0%, #181344 100%) !important;

}

.page-id-8876 .elementor-element-54814ff7 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* heading block on dark */

.page-id-8876 .elementor-element-a3c0f66 .elementor-heading-title {

    color: #C9BEFF !important;

}

.page-id-8876 .elementor-element-6b33c41d .section-heading {

    color: #ffffff !important;

}

.page-id-8876 .elementor-element-6b33c41d .colorTxt {

    background: linear-gradient(100deg, #B9A8FF 0%, #7FD3FF 100%);

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

}



/* grid + pipeline line */

.page-id-8876 .elementor-element-45ad5115 {

    position: relative;

    gap: 40px;

}

.page-id-8876 .elementor-element-45ad5115::before {

    content: '';

    position: absolute;

    left: 20%;

    right: 20%;

    top: 58px;

    height: 2px;

    background: repeating-linear-gradient(90deg, rgba(185, 168, 255, 0.75) 0 7px, rgba(185, 168, 255, 0) 7px 14px);

    filter: drop-shadow(0 0 6px rgba(152, 128, 244, 0.8));

    pointer-events: none;

}



/* cards */

.page-id-8876 .elementor-element-16a41eb9,

.page-id-8876 .elementor-element-33551c02,

.page-id-8876 .elementor-element-2a961620 {

    --ac: #9880F4;

    position: relative;

    z-index: 1;

    overflow: hidden;

    box-sizing: border-box;

    padding: 28px 26px 26px;

    border: 1px solid transparent;

    border-radius: 22px;

    background:

        linear-gradient(160deg, #1B2352 0%, #11183E 100%) padding-box,

        linear-gradient(140deg, var(--ac) 0%, rgba(255, 255, 255, 0.08) 55%, var(--ac) 100%) border-box;

    box-shadow: 0 24px 40px -28px rgba(0, 0, 0, 0.7);

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;

}

.page-id-8876 .elementor-element-33551c02 { --ac: #4FC3F7; }

.page-id-8876 .elementor-element-2a961620 { --ac: #F472B6; }

.page-id-8876 .elementor-element-16a41eb9:hover,

.page-id-8876 .elementor-element-33551c02:hover,

.page-id-8876 .elementor-element-2a961620:hover {

    transform: translateY(-6px);

    box-shadow: 0 30px 46px -26px var(--ac), 0 0 30px -8px var(--ac);

}

/* the first card has an extra boxed wrapper: flatten it so all three line up */

.page-id-8876 .elementor-element-16a41eb9 {

    --padding-top: 28px;

    --padding-right: 26px;

    --padding-bottom: 26px;

    --padding-left: 26px;

}

.page-id-8876 .elementor-element-16a41eb9 > .e-con-inner {

    padding: 0;

    width: 100%;

    max-width: 100%;

}

.page-id-8876 .elementor-element-7477ad04,

.page-id-8876 .elementor-element-5160f654,

.page-id-8876 .elementor-element-17fcc4ab {

    background: transparent;

    padding: 0;

}

/* glowing top edge */

.page-id-8876 .elementor-element-16a41eb9::before,

.page-id-8876 .elementor-element-33551c02::before,

.page-id-8876 .elementor-element-2a961620::before {

    content: '';

    position: absolute;

    left: 26px;

    right: 26px;

    top: 0;

    height: 3px;

    border-radius: 0 0 4px 4px;

    background: linear-gradient(90deg, var(--ac), rgba(255, 255, 255, 0));

    box-shadow: 0 0 14px var(--ac);

}

/* big outlined numeral */

.page-id-8876 .elementor-element-16a41eb9::after,

.page-id-8876 .elementor-element-33551c02::after,

.page-id-8876 .elementor-element-2a961620::after {

    content: '01';

    position: absolute;

    right: 18px;

    bottom: 4px;

    font-size: 6.4rem;

    font-weight: 800;

    line-height: 1;

    color: transparent;

    -webkit-text-stroke: 1.5px var(--ac);

    opacity: 0.2;

    pointer-events: none;

    transition: opacity 0.4s ease;

}

.page-id-8876 .elementor-element-33551c02::after { content: '02'; }

.page-id-8876 .elementor-element-2a961620::after { content: '03'; }

.page-id-8876 .elementor-element-16a41eb9:hover::after,

.page-id-8876 .elementor-element-33551c02:hover::after,

.page-id-8876 .elementor-element-2a961620:hover::after {

    opacity: 0.45;

}

/* icon chip + text */

.page-id-8876 .elementor-element-54814ff7 .elementor-image-box-img img {

    border-radius: 50%;

    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.08), 0 0 22px -2px var(--ac);

}

.page-id-8876 .elementor-element-54814ff7 .elementor-image-box-title {

    color: #ffffff !important;

}

.page-id-8876 .elementor-element-54814ff7 .elementor-image-box-description {

    color: rgba(255, 255, 255, 0.76) !important;

}





@media (prefers-reduced-motion: reduce) and (min-width: 99999px) {

    .page-id-8876 .elementor-element-16a41eb9,

    .page-id-8876 .elementor-element-33551c02,

    .page-id-8876 .elementor-element-2a961620 {

        transition: none;

    }

}



/* =========================================================================

   Banner: one fold. The hero was fixed at 900px tall; it is now exactly one screen (desktop).

   Invitation stamp: the "SEPT 2025" text is replaced by an envelope icon.

   ========================================================================= */



.page-id-8876 .elementor-element-6c2a7978::after {

    content: '';

    background:

        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2.5'/%3E%3Cpath d='M3.5 7.5l8.5 6 8.5-6'/%3E%3C/svg%3E") center / 40px 40px no-repeat,

        linear-gradient(135deg, #6152AD 0%, #9880F4 100%);

}





/* =========================================================================

   DISCOVERED AT MICROSOFT - INTERACTIVITY for the first three sections (banner, The Invitation, The Work).

   House rule: every redesigned section gets hover effects + dynamic animation. Pointer-driven parts (cursor spotlight, parallax, 3D

   tilt) are set from customjs/custom-changes.js through CSS variables (--mx --my --px --py --rx --ry --cx --cy); scroll reveals use

   .ms-pre (hidden, added by JS) -> .ms-in (animates in, backwards fill so hover transforms still work afterwards).

   ========================================================================= */



/* ---------- BANNER ---------- */

/* dot grid + glows + a soft spotlight that follows the cursor; the whole layer drifts a little against the pointer */

.page-id-8876 .elementor-element-22c083e4::after {

    background:

        radial-gradient(circle 240px at var(--mx, 30%) var(--my, 45%), rgba(255, 255, 255, 0.65) 0%, rgba(255, 255, 255, 0) 70%),

        radial-gradient(ellipse 50% 45% at 12% 12%, rgba(255, 214, 180, 0.55) 0%, rgba(255, 214, 180, 0) 70%),

        radial-gradient(ellipse 55% 50% at 30% 85%, rgba(185, 168, 255, 0.40) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(circle at center, rgba(97, 82, 173, 0.30) 1.3px, rgba(97, 82, 173, 0) 1.8px);

    background-size: auto, auto, auto, 28px 28px;

    transform: translate3d(calc(var(--px, 0) * -14px), calc(var(--py, 0) * -10px), 0);

    animation: msDots2 40s linear infinite;

}

@keyframes msDots2 {

    from { background-position: 0 0, 0 0, 0 0, 0 0; }

    to   { background-position: 0 0, 0 0, 0 0, 280px 140px; }

}

/* floating rings */

.page-id-8876 .elementor-element-22c083e4::before {

    content: '';

    position: absolute;

    top: 0;

    bottom: 0;

    left: 0;

    width: 62%;

    z-index: 1;

    pointer-events: none;

    background:

        radial-gradient(circle, transparent 0 60%, rgba(97, 82, 173, 0.30) 61% 65%, transparent 66%) 82% 16% / 96px 96px no-repeat,

        radial-gradient(circle, transparent 0 60%, rgba(244, 114, 182, 0.32) 61% 66%, transparent 67%) 10% 74% / 64px 64px no-repeat,

        radial-gradient(circle, transparent 0 60%, rgba(79, 195, 247, 0.34) 61% 67%, transparent 68%) 58% 82% / 44px 44px no-repeat;

    animation: msFloatRings 9s ease-in-out infinite alternate;

}

@keyframes msFloatRings {

    from { transform: translate3d(0, 0, 0) rotate(0deg); }

    to   { transform: translate3d(14px, -18px, 0) rotate(3deg); }

}

/* tile mark: spins / re-builds when the copy is hovered */

.page-id-8876 .elementor-element-adc7aa8:hover::before {

    animation: msTileSpin 0.9s cubic-bezier(0.34, 1.56, 0.64, 1);

}

@keyframes msTileSpin {

    0%   { transform: rotate(0deg) scale(1); }

    50%  { transform: rotate(180deg) scale(1.25); }

    100% { transform: rotate(360deg) scale(1); }

}

/* paragraph + chip + heading rule */

.page-id-8876 .elementor-element-adc7aa8 > .banner-subheading {

    transition: color 0.3s ease;

}

.page-id-8876 .elementor-element-adc7aa8:hover > .banner-subheading {

    color: #2b2745;

}

.page-id-8876 .elementor-element-fe99467 .elementor-image-box-wrapper {

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-8876 .elementor-element-fe99467 .elementor-image-box-wrapper:hover {

    transform: translateY(-4px);

    border-color: rgba(97, 82, 173, 0.45);

    box-shadow: 0 20px 30px -18px rgba(97, 82, 173, 0.65);

}

.page-id-8876 .elementor-element-fe99467 .elementor-image-box-wrapper::before {

    transition: width 0.3s ease;

}

.page-id-8876 .elementor-element-fe99467 .elementor-image-box-wrapper:hover::before {

    width: 10px;

}

.page-id-8876 .elementor-element-5eb569d:hover::after {

    width: 220px;

    transition: width 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}



/* ---------- THE INVITATION ---------- */

.page-id-8876 .ms-pre {

    opacity: 0;

}

.page-id-8876 .elementor-element-6c2a7978.ms-in {

    animation: msDropIn 1s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8876 .elementor-element-befe4e2.ms-in {

    animation: msSlideLeft 1s cubic-bezier(0.22, 1, 0.36, 1) 0.15s backwards;

}

@keyframes msDropIn {

    from { opacity: 0; transform: translate3d(-60px, -50px, 0) rotate(-10deg); }

}

@keyframes msSlideLeft {

    from { opacity: 0; transform: translate3d(70px, 0, 0); }

}

.page-id-8876 .elementor-element-befe4e2.ms-in > * {

    animation: msFadeUp2 0.7s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8876 .elementor-element-befe4e2.ms-in > *:nth-child(1) { animation-delay: 0.4s; }

.page-id-8876 .elementor-element-befe4e2.ms-in > *:nth-child(2) { animation-delay: 0.5s; }

.page-id-8876 .elementor-element-befe4e2.ms-in > *:nth-child(3) { animation-delay: 0.62s; }

.page-id-8876 .elementor-element-befe4e2.ms-in > *:nth-child(4) { animation-delay: 0.76s; }

@keyframes msFadeUp2 {

    from { opacity: 0; transform: translate3d(0, 18px, 0); }

}

/* polaroid: follows the pointer in 3D, straightens + lifts on hover */

.page-id-8876 .elementor-element-2e9de80e {

    transform: perspective(1000px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)) rotate(-3deg);

    transition: transform 0.35s ease-out;

}

.page-id-8876 .elementor-element-6c2a7978:hover .elementor-element-2e9de80e {

    transform: perspective(1000px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)) rotate(0deg) scale(1.03);

}

.page-id-8876 .elementor-element-6c2a7978:hover .elementor-element-2e9de80e img {

    box-shadow: 0 34px 50px -22px rgba(45, 36, 99, 0.65), 0 0 0 1px rgba(97, 82, 173, 0.18);

}

.page-id-8876 .elementor-element-2e9de80e img {

    transition: box-shadow 0.35s ease;

}

/* tape wiggle on hover */

.page-id-8876 .elementor-element-6c2a7978:hover .elementor-element-2e9de80e::before {

    animation: msTapeWiggle 0.6s ease-in-out;

}

@keyframes msTapeWiggle {

    0%, 100% { transform: rotate(4deg); }

    30%      { transform: rotate(-6deg) translateY(-3px); }

    60%      { transform: rotate(8deg); }

}

/* stamp: gentle bob all the time, a full spin on hover */

.page-id-8876 .elementor-element-6c2a7978::after {

    animation: msStampBob 3.4s ease-in-out infinite;

}

.page-id-8876 .elementor-element-6c2a7978:hover::after {

    animation: msStampSpin 0.9s cubic-bezier(0.34, 1.56, 0.64, 1);

}

@keyframes msStampBob {

    0%, 100% { transform: rotate(-12deg) translateY(0); }

    50%      { transform: rotate(-6deg) translateY(-6px); }

}

@keyframes msStampSpin {

    from { transform: rotate(-12deg) scale(1); }

    50%  { transform: rotate(168deg) scale(1.18); }

    to   { transform: rotate(348deg) scale(1); }

}

/* card: border + shadow warm up, the folded corner grows */

.page-id-8876 .elementor-element-befe4e2 {

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease, border-color 0.4s ease;

}

.page-id-8876 .elementor-element-befe4e2:hover {

    transform: translateY(-5px);

    border-color: rgba(97, 82, 173, 0.35);

    box-shadow: 0 34px 56px -30px rgba(45, 36, 99, 0.6);

}

.page-id-8876 .elementor-element-befe4e2::after {

    transition: width 0.4s ease, height 0.4s ease;

}

.page-id-8876 .elementor-element-befe4e2:hover::after {

    width: 78px;

    height: 78px;

}

.page-id-8876 .elementor-element-befe4e2::before {

    transition: border-color 0.4s ease;

}

.page-id-8876 .elementor-element-befe4e2:hover::before {

    border-color: rgba(97, 82, 173, 0.5);

}



/* ---------- THE WORK ---------- */

.page-id-8876 .elementor-element-8809391.ms-in {

    animation: msFadeUp2 0.8s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8876 .elementor-element-45ad5115 > .ms-in {

    animation: msRise 0.9s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

@keyframes msRise {

    from { opacity: 0; transform: translate3d(0, 50px, 0) scale(0.94); }

}

/* the pipeline line: dashes flow from card to card, and it draws in with the reveal */

.page-id-8876 .elementor-element-45ad5115::before {

    background: linear-gradient(90deg, rgba(185, 168, 255, 0.8) 0 7px, rgba(185, 168, 255, 0) 7px 14px) 0 0 / 14px 2px repeat-x;

    animation: msFlow 0.9s linear infinite;

}

@keyframes msFlow {

    to { background-position: 14px 0; }

}

/* cards: 3D tilt + cursor spotlight (set from JS), bigger lift */

.page-id-8876 .elementor-element-16a41eb9,

.page-id-8876 .elementor-element-33551c02,

.page-id-8876 .elementor-element-2a961620 {

    background:

        radial-gradient(260px circle at var(--cx, 50%) var(--cy, -60%), color-mix(in srgb, var(--ac) 28%, transparent) 0%, transparent 70%) padding-box,

        linear-gradient(160deg, #1B2352 0%, #11183E 100%) padding-box,

        linear-gradient(140deg, var(--ac) 0%, rgba(255, 255, 255, 0.08) 55%, var(--ac) 100%) border-box;

    transform: perspective(1000px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));

    transition: transform 0.3s ease-out, box-shadow 0.4s ease;

}

.page-id-8876 .elementor-element-16a41eb9:hover,

.page-id-8876 .elementor-element-33551c02:hover,

.page-id-8876 .elementor-element-2a961620:hover {

    transform: perspective(1000px) translateY(-8px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));

}

/* icons: float gently, pop + spin on card hover; numerals slide in */

.page-id-8876 .elementor-element-54814ff7 .elementor-image-box-img img {

    animation: msIconFloat 4s ease-in-out infinite;

}

.page-id-8876 .elementor-element-33551c02 .elementor-image-box-img img { animation-delay: -1.3s; }

.page-id-8876 .elementor-element-2a961620 .elementor-image-box-img img { animation-delay: -2.6s; }

@keyframes msIconFloat {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-5px); }

}

.page-id-8876 .elementor-element-16a41eb9:hover .elementor-image-box-img img,

.page-id-8876 .elementor-element-33551c02:hover .elementor-image-box-img img,

.page-id-8876 .elementor-element-2a961620:hover .elementor-image-box-img img {

    animation: msIconPop 0.8s cubic-bezier(0.34, 1.56, 0.64, 1);

}

@keyframes msIconPop {

    0%   { transform: scale(1) rotate(0deg); }

    50%  { transform: scale(1.25) rotate(180deg); }

    100% { transform: scale(1) rotate(360deg); }

}

.page-id-8876 .elementor-element-16a41eb9::after,

.page-id-8876 .elementor-element-33551c02::after,

.page-id-8876 .elementor-element-2a961620::after {

    transition: opacity 0.4s ease, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8876 .elementor-element-16a41eb9:hover::after,

.page-id-8876 .elementor-element-33551c02:hover::after,

.page-id-8876 .elementor-element-2a961620:hover::after {

    transform: translate(-6px, -6px) scale(1.12);

}





@media (prefers-reduced-motion: reduce) and (min-width: 99999px) {

    .page-id-8876 .elementor-element-22c083e4::before,

    .page-id-8876 .elementor-element-22c083e4::after,

    .page-id-8876 .elementor-element-6c2a7978::after,

    .page-id-8876 .elementor-element-45ad5115::before,

    .page-id-8876 .elementor-element-54814ff7 .elementor-image-box-img img {

        animation: none;

    }

    .page-id-8876 .ms-pre {

        opacity: 1;

    }

    .page-id-8876 .ms-in,

    .page-id-8876 .ms-in > * {

        animation: none !important;

    }

}





/* =========================================================================

   DISCOVERED AT MICROSOFT - "QUICK CUTS" (section #b784e3c: heading block #123682e = eyebrow #52752c8, heading #db12265, sub-line

   #e284ee7, then the reels slider #091260b (.ck-women-health-swiper > .ck-reel-card: thumbnail + title + text)).

   A "film reel" treatment: a lavender / peach wash with two slowly scrolling film-strip ribbons (sprocket holes) behind; each reel is

   a clip card - hairline-bordered white card, film perforations along the thumbnail, a blinking REC chip, a pulsing play button and a

   scrubber that runs along the thumbnail while you hover. Thumbnails are a fixed height so all clips are equal and the whole section

   fits one fold on desktop. Hover: lift + glow, thumbnail zoom, play pops, title turns purple.

   ========================================================================= */

.page-id-8876 .elementor-element.elementor-element-b784e3c:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 40% 55% at 6% 20%, rgba(185, 168, 255, 0.40) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 38% 55% at 96% 85%, rgba(255, 214, 180, 0.50) 0%, rgba(255, 214, 180, 0) 70%),

        linear-gradient(180deg, #FFFFFF 0%, #F6F1FF 100%) !important;

}

.page-id-8876 .elementor-element-b784e3c > .e-con-inner {

    position: relative;

    z-index: 1;

}

/* film-strip ribbons: a tinted band with sprocket holes top and bottom, drifting sideways */

.page-id-8876 .elementor-element-b784e3c::before,

.page-id-8876 .elementor-element-b784e3c::after {

    content: '';

    position: absolute;

    left: -10%;

    right: -10%;

    height: 74px;

    pointer-events: none;

    background:

        linear-gradient(90deg, rgba(97, 82, 173, 0.16) 0 12px, rgba(97, 82, 173, 0) 12px 28px) 0 9px / 28px 9px repeat-x,

        linear-gradient(90deg, rgba(97, 82, 173, 0.16) 0 12px, rgba(97, 82, 173, 0) 12px 28px) 0 56px / 28px 9px repeat-x,

        rgba(97, 82, 173, 0.05);

    animation: msReel 14s linear infinite;

}

.page-id-8876 .elementor-element-b784e3c::before {

    top: 3%;

    transform: rotate(-4deg);

}

.page-id-8876 .elementor-element-b784e3c::after {

    bottom: 6%;

    transform: rotate(3deg);

    animation-direction: reverse;

}

@keyframes msReel {

    from { background-position: 0 9px, 0 56px, 0 0; }

    to   { background-position: 28px 9px, 28px 56px, 0 0; }

}



/* slider rhythm: equal clips */

.page-id-8876 .elementor-element-b784e3c .ck-women-health-reels-section {

    padding: 8px 0 0;

}

.page-id-8876 .elementor-element-b784e3c .ck-women-health-swiper {

    padding-top: 6px;

    padding-bottom: 34px;

}

.page-id-8876 .elementor-element-b784e3c .swiper-slide {

    height: auto;

}



/* clip card */

.page-id-8876 .elementor-element-b784e3c .ck-reel-card {

    position: relative;

    display: flex;

    flex-direction: column;

    background: #ffffff;

    border: 1px solid rgba(97, 82, 173, 0.12);

    border-radius: 22px;

    box-shadow: 0 12px 22px -16px rgba(45, 36, 99, 0.45);

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease, border-color 0.4s ease;

}

.page-id-8876 .elementor-element-b784e3c .ck-reel-card:hover {

    transform: translateY(-8px);

    border-color: rgba(97, 82, 173, 0.45);

    box-shadow: 0 22px 34px -18px rgba(97, 82, 173, 0.7), 0 0 26px -6px rgba(152, 128, 244, 0.45);

}

.page-id-8876 .elementor-element-b784e3c .ck-reel-thumbnail {

    height: 220px;

    background: #1b1740;

}

.page-id-8876 .elementor-element-b784e3c .ck-reel-thumbnail img {

    height: 100%;

    object-position: center top;

    transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8876 .elementor-element-b784e3c .ck-reel-card:hover .ck-reel-thumbnail img {

    transform: scale(1.08);

}

/* darkening + film perforations along the top and bottom edges of the thumbnail */

.page-id-8876 .elementor-element-b784e3c .ck-reel-thumbnail::after {

    background:

        linear-gradient(90deg, rgba(255, 255, 255, 0.7) 0 7px, rgba(255, 255, 255, 0) 7px 16px) 3px calc(100% - 6px) / 16px 6px repeat-x,

        linear-gradient(to top, rgba(6, 10, 17, 0.72), rgba(6, 10, 17, 0.05));

}

/* REC chip */

.page-id-8876 .elementor-element-b784e3c .ck-reel-thumbnail::before {

    content: 'REC';

    position: absolute;

    top: 20px;

    left: 14px;

    z-index: 3;

    padding: 4px 10px 4px 24px;

    border-radius: 999px;

    background:

        radial-gradient(circle, #ff4d5e 0 4px, rgba(255, 77, 94, 0) 5px) 8px center / 12px 12px no-repeat,

        rgba(6, 10, 17, 0.58);

    -webkit-backdrop-filter: blur(6px);

    backdrop-filter: blur(6px);

    color: #ffffff;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 0.14em;

    line-height: 1.4;

    animation: msRec 1.4s ease-in-out infinite;

}

@keyframes msRec {

    0%, 100% { background-size: 12px 12px, auto; }

    50%      { background-size: 5px 5px, auto; }

}

/* play button: pulsing ring, pops on hover */

.page-id-8876 .elementor-element-b784e3c .ck-play-btn::before {

    content: '';

    position: absolute;

    inset: 0;

    border-radius: 50%;

    border: 2px solid rgba(185, 168, 255, 0.9);

    animation: msPulse 2s ease-out infinite;

    pointer-events: none;

}

@keyframes msPulse {

    0%   { transform: scale(1); opacity: 0.9; }

    100% { transform: scale(1.7); opacity: 0; }

}

.page-id-8876 .elementor-element-b784e3c .ck-reel-card:hover .ck-play-btn {

    transform: translate(-50%, -50%) scale(1.15);

    box-shadow: 0 0 0 8px rgba(152, 128, 244, 0.25), 0 14px 34px rgba(97, 82, 173, 0.6);

}

/* scrubber that runs along the thumbnail on hover */

.page-id-8876 .elementor-element-b784e3c .ck-reel-card::after {

    content: '';

    position: absolute;

    left: 0;

    top: 216px;

    height: 4px;

    width: 0;

    z-index: 4;

    background: linear-gradient(90deg, #6152AD, #bc1888);

    box-shadow: 0 0 10px rgba(152, 128, 244, 0.9);

    transition: width 0.3s ease;

    pointer-events: none;

}

.page-id-8876 .elementor-element-b784e3c .ck-reel-card:hover::after {

    width: 100%;

    transition: width 2.6s linear;

}

/* text */

.page-id-8876 .elementor-element-b784e3c .ck-reel-content {

    flex: 1 1 auto;

    padding: 18px 20px 22px;

}

.page-id-8876 .elementor-element-b784e3c .ck-reel-content h3 {

    color: #1d1b2e;

    min-height: 2.9em;

    margin-bottom: 8px;

    transition: color 0.3s ease;

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

}

.page-id-8876 .elementor-element-b784e3c .ck-reel-card:hover .ck-reel-content h3 {

    color: #6152AD;

}

.page-id-8876 .elementor-element-b784e3c .ck-reel-content p {

    color: #4a4763;

    min-height: 4.95em;

    display: -webkit-box;

    -webkit-line-clamp: 3;

    -webkit-box-orient: vertical;

    overflow: hidden;

}



/* pagination: brand dots */

.page-id-8876 .elementor-element-b784e3c .ck-women-health-swiper .swiper-pagination-bullet {

    width: 9px;

    height: 9px;

    background: #cdbff9 !important;

    opacity: 1;

}

.page-id-8876 .elementor-element-b784e3c .ck-women-health-swiper .swiper-pagination-bullet-active {

    width: 26px;

    background: #6152AD !important;

}



/* scroll reveal (JS adds .ms-pre / .ms-in) */

.page-id-8876 .elementor-element-123682e.ms-in {

    animation: msFadeUp2 0.8s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8876 .elementor-element-091260b.ms-in {

    animation: msRise 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.2s backwards;

}



/* one fold on desktop: tighter vertical rhythm of the heading block */





/* =========================================================================

   Banner: the floating rings are removed (circle shapes in the background).

   ========================================================================= */

.page-id-8876 .elementor-element-22c083e4::before {

    content: none;

    display: none;

    animation: none;

}



/* Quick Cuts: the background film-strip ribbons (dotted sprocket lines) are removed */

.page-id-8876 .elementor-element-b784e3c::before,

.page-id-8876 .elementor-element-b784e3c::after {

    content: none;

    display: none;

    animation: none;

}





/* =========================================================================

   DISCOVERED AT MICROSOFT - "ON THE GROUND" (section #304e7cd0: left column #1d896a6b = eyebrow #cf74ff7, heading #33b487e0, sub-line

   #80258af, reel poster #725e5b1 (link to the Instagram reel); right #5bc5610f > gallery #0ea8d27, nine photos).

   A "viewfinder" treatment: the nine photos become a bento mosaic (three taller tiles) on a warm peach / lavender wash with a slowly

   drifting soft glow; hovering a photo focuses it - the others dim and desaturate - and camera-viewfinder corner brackets snap in around

   it with a round expand chip and a zoom; the reel poster becomes a phone-style card with a pulsing play button and a "Watch the reel"

   pill, and tilts in 3D with the pointer. The photos pop in one after another on scroll. One fold on desktop.

   ========================================================================= */

.page-id-8876 .elementor-element.elementor-element-304e7cd0:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 40% 55% at 4% 15%, rgba(185, 168, 255, 0.34) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 60% at 98% 90%, rgba(255, 214, 180, 0.55) 0%, rgba(255, 214, 180, 0) 70%),

        linear-gradient(180deg, #FFF9F3 0%, #FFFFFF 100%) !important;

}

/* drifting soft glow */

.page-id-8876 .elementor-element-304e7cd0::before {

    content: '';

    position: absolute;

    left: 18%;

    top: -20%;

    width: 520px;

    height: 520px;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(152, 128, 244, 0.22) 0%, rgba(152, 128, 244, 0) 68%);

    pointer-events: none;

    animation: msGlowDrift 16s ease-in-out infinite alternate;

}

@keyframes msGlowDrift {

    from { transform: translate3d(0, 0, 0); }

    to   { transform: translate3d(240px, 120px, 0); }

}

.page-id-8876 .elementor-element-304e7cd0 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* ---------- gallery -> bento mosaic ---------- */

.page-id-8876 .elementor-element-0ea8d27 .elementor-image-gallery,

.page-id-8876 .elementor-element-0ea8d27 .gallery {

    width: 100%;

}

.page-id-8876 .elementor-element-0ea8d27 .gallery {

    display: grid !important;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    grid-auto-rows: 132px;

    grid-auto-flow: dense;

    gap: 12px;

    margin: 0 !important;

}

.page-id-8876 .elementor-element-0ea8d27 .gallery::before,

.page-id-8876 .elementor-element-0ea8d27 .gallery::after {

    display: none;

}

.page-id-8876 .elementor-element-0ea8d27 .gallery-item {

    position: relative;

    width: auto !important;

    max-width: none !important;

    margin: 0 !important;

    padding: 0 !important;

    border-radius: 18px;

    overflow: hidden;

    background: #ece6ff;

    box-shadow: 0 12px 22px -16px rgba(45, 36, 99, 0.5);

    transition: opacity 0.45s ease, filter 0.45s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease;

}

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:nth-child(1),

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:nth-child(5),

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:nth-child(9) {

    grid-row: span 2;

}

.page-id-8876 .elementor-element-0ea8d27 .gallery-icon,

.page-id-8876 .elementor-element-0ea8d27 .gallery-icon a {

    position: relative;

    display: block;

    width: 100%;

    height: 100%;

}

.page-id-8876 .elementor-element-0ea8d27 .gallery-icon img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);

}

/* bottom shade + expand chip */

.page-id-8876 .elementor-element-0ea8d27 .gallery-icon a::after {

    content: '\2922';

    position: absolute;

    right: 14px;

    bottom: 14px;

    width: 38px;

    height: 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #ffffff;

    color: #6152AD;

    font-size: 1.9rem;

    line-height: 1;

    box-shadow: 0 10px 20px -8px rgba(6, 10, 17, 0.55);

    transform: translateY(8px) scale(0.85);

    opacity: 0;

    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.3s ease;

    pointer-events: none;

}

/* viewfinder corner brackets */

.page-id-8876 .elementor-element-0ea8d27 .gallery-icon a::before {

    content: '';

    position: absolute;

    inset: 22px;

    z-index: 2;

    pointer-events: none;

    opacity: 0;

    transition: inset 0.35s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.3s ease;

    background:

        linear-gradient(#fff, #fff) left top / 20px 2px no-repeat,

        linear-gradient(#fff, #fff) left top / 2px 20px no-repeat,

        linear-gradient(#fff, #fff) right top / 20px 2px no-repeat,

        linear-gradient(#fff, #fff) right top / 2px 20px no-repeat,

        linear-gradient(#fff, #fff) left bottom / 20px 2px no-repeat,

        linear-gradient(#fff, #fff) left bottom / 2px 20px no-repeat,

        linear-gradient(#fff, #fff) right bottom / 20px 2px no-repeat,

        linear-gradient(#fff, #fff) right bottom / 2px 20px no-repeat;

    filter: drop-shadow(0 1px 3px rgba(6, 10, 17, 0.6));

}

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:hover .gallery-icon a::before {

    inset: 12px;

    opacity: 1;

}

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:hover .gallery-icon a::after {

    transform: translateY(0) scale(1);

    opacity: 1;

}

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:hover .gallery-icon img {

    transform: scale(1.1);

}

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:hover {

    transform: translateY(-4px);

    box-shadow: 0 22px 34px -16px rgba(97, 82, 173, 0.7), 0 0 0 2px rgba(152, 128, 244, 0.55);

    z-index: 2;

}

/* focus: the other photos step back */

.page-id-8876 .elementor-element-0ea8d27 .gallery:hover .gallery-item:not(:hover) {

    opacity: 0.5;

    filter: saturate(0.5) blur(0.6px);

}

.page-id-8876 .elementor-element-0ea8d27 .gallery-item.ms-in {

    animation: msPop 0.7s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

@keyframes msPop {

    from { opacity: 0; transform: scale(0.82) translate3d(0, 24px, 0); }

}



/* ---------- left column ---------- */

.page-id-8876 .elementor-element-1d896a6b.ms-in {

    animation: msFadeUp2 0.8s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

/* reel poster -> phone-style card */

.page-id-8876 .elementor-element-725e5b1 {

    position: relative;

    width: fit-content;

    max-width: 100%;

    transform: perspective(1000px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));

    transition: transform 0.3s ease-out;

}

.page-id-8876 .elementor-element-725e5b1 a {

    position: relative;

    display: block;

    border: 6px solid #ffffff;

    border-radius: 28px;

    overflow: hidden;

    box-shadow: 0 28px 44px -24px rgba(45, 36, 99, 0.6), 0 0 0 1px rgba(97, 82, 173, 0.14);

    transition: box-shadow 0.4s ease;

}

.page-id-8876 .elementor-element-725e5b1 a img {

    display: block;

    width: auto;

    max-width: 100%;

    height: 330px;

    object-fit: cover;

    transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8876 .elementor-element-725e5b1:hover a img {

    transform: scale(1.07);

}

.page-id-8876 .elementor-element-725e5b1:hover a {

    box-shadow: 0 36px 54px -24px rgba(97, 82, 173, 0.75), 0 0 0 2px rgba(152, 128, 244, 0.5);

}

/* play button with a pulsing ring */

.page-id-8876 .elementor-element-725e5b1 a::before {

    content: '';

    position: absolute;

    left: 50%;

    top: 50%;

    width: 64px;

    height: 64px;

    margin: -32px 0 0 -32px;

    border-radius: 50%;

    background:

        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5.14v14l11-7z'/%3E%3C/svg%3E") 54% center / 30px 30px no-repeat,

        #6152AD;

    box-shadow: 0 10px 30px rgba(97, 82, 173, 0.55), 0 0 0 0 rgba(152, 128, 244, 0.6);

    z-index: 2;

    animation: msPlayRing 2s ease-out infinite;

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);

}

@keyframes msPlayRing {

    0%   { box-shadow: 0 10px 30px rgba(97, 82, 173, 0.55), 0 0 0 0 rgba(152, 128, 244, 0.6); }

    100% { box-shadow: 0 10px 30px rgba(97, 82, 173, 0.55), 0 0 0 26px rgba(152, 128, 244, 0); }

}

.page-id-8876 .elementor-element-725e5b1:hover a::before {

    transform: scale(1.15);

}

/* "Watch the reel" pill */

.page-id-8876 .elementor-element-725e5b1 a::after {

    content: 'Watch the reel';

    position: absolute;

    left: 50%;

    bottom: 14px;

    transform: translateX(-50%);

    padding: 6px 14px;

    border-radius: 999px;

    background: rgba(6, 10, 17, 0.55);

    -webkit-backdrop-filter: blur(8px);

    backdrop-filter: blur(8px);

    color: #ffffff;

    font-size: 1.2rem;

    font-weight: 700;

    letter-spacing: 0.06em;

    white-space: nowrap;

    z-index: 2;

}



/* ---------- one fold + responsive ---------- */





/* On the Ground fixes: explicit bento placement (4 rows, no holes), dark text on the light background, tighter inner padding, smaller reel poster */

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:nth-child(1) { grid-column: 1; grid-row: 1 / span 2; }

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:nth-child(2) { grid-column: 2; grid-row: 1; }

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:nth-child(3) { grid-column: 3; grid-row: 1; }

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:nth-child(4) { grid-column: 2; grid-row: 2; }

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:nth-child(5) { grid-column: 1; grid-row: 3 / span 2; }

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:nth-child(6) { grid-column: 2; grid-row: 3; }

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:nth-child(7) { grid-column: 2; grid-row: 4; }

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:nth-child(8) { grid-column: 3; grid-row: 2; }

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:nth-child(9) { grid-column: 3; grid-row: 3 / span 2; }

.page-id-8876 .elementor-element-80258af .elementor-heading-title { color: #4a4763 !important; }

.page-id-8876 .elementor-element-33b487e0 .section-heading { color: #1d1b2e !important; }

.page-id-8876 .elementor-element-33b487e0 .colorTxt { color: #223973 !important; }

.page-id-8876 .elementor-element-725e5b1 a img { height: 280px; }



/* tablet keeps the same 4-row bento placement as desktop; phones switch to a 2-column flow */





/* ON THE GROUND - dark theme (navy with lavender / sky / pink glows), photo hover effects kept */

.page-id-8876 .elementor-element.elementor-element-304e7cd0:not(.elementor-motion-effects-element-type-background) {

    background:

        radial-gradient(ellipse 38% 60% at 6% 25%, rgba(152, 128, 244, 0.34) 0%, rgba(152, 128, 244, 0) 70%),

        radial-gradient(ellipse 34% 55% at 50% 112%, rgba(79, 195, 247, 0.20) 0%, rgba(79, 195, 247, 0) 70%),

        radial-gradient(ellipse 36% 60% at 98% 12%, rgba(244, 114, 182, 0.22) 0%, rgba(244, 114, 182, 0) 70%),

        linear-gradient(160deg, #0F1536 0%, #181344 100%) !important;

}

.page-id-8876 .elementor-element-304e7cd0::before {

    background: radial-gradient(circle, rgba(152, 128, 244, 0.30) 0%, rgba(152, 128, 244, 0) 68%);

}

.page-id-8876 .elementor-element-cf74ff7 .elementor-heading-title {

    color: #C9BEFF !important;

}

.page-id-8876 .elementor-element-33b487e0 .section-heading {

    color: #ffffff !important;

}

.page-id-8876 .elementor-element-33b487e0 .colorTxt {

    background: linear-gradient(100deg, #B9A8FF 0%, #7FD3FF 100%);

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    color: transparent !important;

}

.page-id-8876 .elementor-element-80258af .elementor-heading-title {

    color: rgba(255, 255, 255, 0.78) !important;

}

/* gallery tiles */

.page-id-8876 .elementor-element-0ea8d27 .gallery-item {

    background: #1B2352;

    box-shadow: 0 16px 26px -18px rgba(0, 0, 0, 0.8), 0 0 0 1px rgba(185, 168, 255, 0.14);

}

.page-id-8876 .elementor-element-0ea8d27 .gallery-item:hover {

    box-shadow: 0 24px 38px -16px rgba(152, 128, 244, 0.75), 0 0 28px -4px rgba(152, 128, 244, 0.55), 0 0 0 2px rgba(185, 168, 255, 0.7);

}

/* reel poster */

.page-id-8876 .elementor-element-725e5b1 a {

    border-color: rgba(255, 255, 255, 0.14);

    box-shadow: 0 30px 46px -24px rgba(0, 0, 0, 0.8), 0 0 0 1px rgba(185, 168, 255, 0.3);

}

.page-id-8876 .elementor-element-725e5b1:hover a {

    box-shadow: 0 36px 54px -22px rgba(152, 128, 244, 0.8), 0 0 30px -4px rgba(152, 128, 244, 0.55), 0 0 0 2px rgba(185, 168, 255, 0.7);

}





/* =========================================================================

   DISCOVERED AT MICROSOFT - "FINAL THOUGHTS" (section #3c6ac56c: photo col #7aef3593 > #32d832d1 > img; text col #6e342fec = eyebrow #b185105,

   heading #4e0405e8, two paragraphs).

   A light closing section after the dark one: lavender / peach wash with outline icons (mic, flask, atom, chat, bulb, globe ...) scattered

   at random-looking places - they float gently, drift with the cursor (depth parallax) and are generated in customjs/custom-changes.js.

   The photo becomes an arch window with an offset outline arch behind it and a floating glass chip; the heading gets a drawing rule; the

   first paragraph is a highlighted pull-quote with a gradient bar, the second a quieter follow-up with an arrow; both nudge on hover.

   The photo and text slide in on scroll. One fold.

   ========================================================================= */

.page-id-8876 .elementor-element.elementor-element-3c6ac56c:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 40% 60% at 4% 20%, rgba(185, 168, 255, 0.38) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 60% at 98% 92%, rgba(255, 214, 180, 0.50) 0%, rgba(255, 214, 180, 0) 70%),

        linear-gradient(180deg, #FFFFFF 0%, #F6F1FF 100%) !important;

}

.page-id-8876 .elementor-element-3c6ac56c > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* ---------- scattered background icons (built by JS) ---------- */

.page-id-8876 .ms-bgicons {

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    overflow: hidden;

}

.page-id-8876 .ms-bgi {

    position: absolute;

    display: block;

    transform: translate3d(calc(var(--bx, 0) * var(--d, 10) * 1px), calc(var(--by, 0) * var(--d, 10) * 1px), 0) rotate(var(--r, 0deg));

    transition: transform 0.5s ease-out;

}

.page-id-8876 .ms-bgi svg {

    display: block;

    width: 100%;

    height: auto;

    fill: none;

    stroke: #6152AD;

    stroke-opacity: 0.22;

    stroke-width: 1.4;

    stroke-linecap: round;

    stroke-linejoin: round;

    animation: msBgiFloat 6s ease-in-out infinite;

    animation-delay: var(--t, 0s);

}

@keyframes msBgiFloat {

    0%, 100% { transform: translateY(0) rotate(0deg); }

    50%      { transform: translateY(-12px) rotate(6deg); }

}



/* ---------- photo -> arch window ---------- */

.page-id-8876 .elementor-element-7aef3593 {

    position: relative;

}

.page-id-8876 .elementor-element-7aef3593::before {

    content: '';

    position: absolute;

    left: 28px;

    right: -14px;

    top: 14px;

    bottom: -14px;

    border: 2px solid rgba(97, 82, 173, 0.35);

    border-radius: 300px 300px 28px 28px;

    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.4s ease;

    pointer-events: none;

}

.page-id-8876 .elementor-element-7aef3593:hover::before {

    transform: translate(10px, 10px);

    border-color: rgba(97, 82, 173, 0.6);

}

.page-id-8876 .elementor-element-32d832d1 {

    position: relative;

    overflow: hidden;

    border-radius: 300px 300px 28px 28px;

    box-shadow: 0 30px 50px -28px rgba(45, 36, 99, 0.6);

    transition: box-shadow 0.4s ease, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8876 .elementor-element-7aef3593:hover .elementor-element-32d832d1 {

    transform: translateY(-6px);

    box-shadow: 0 40px 60px -28px rgba(97, 82, 173, 0.75);

}

.page-id-8876 .elementor-element-32d832d1 img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8876 .elementor-element-7aef3593:hover .elementor-element-32d832d1 img {

    transform: scale(1.07);

}

/* floating glass chip */

.page-id-8876 .elementor-element-7aef3593::after {

    content: '\2726  Why it matters';

    position: absolute;

    left: -14px;

    bottom: 38px;

    z-index: 3;

    padding: 9px 18px;

    border-radius: 999px;

    border: 1px solid rgba(255, 255, 255, 0.85);

    background: rgba(255, 255, 255, 0.72);

    -webkit-backdrop-filter: blur(10px);

    backdrop-filter: blur(10px);

    box-shadow: 0 16px 28px -14px rgba(45, 36, 99, 0.55);

    color: #6152AD;

    font-size: 1.4rem;

    font-weight: 700;

    letter-spacing: 0.04em;

    white-space: nowrap;

    animation: msChipBob 4s ease-in-out infinite;

    pointer-events: none;

}

@keyframes msChipBob {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-8px); }

}



/* ---------- text ---------- */

.page-id-8876 .elementor-element-4e0405e8 {

    position: relative;

    padding-bottom: 14px;

}

.page-id-8876 .elementor-element-4e0405e8 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-8876 .elementor-element-4e0405e8:hover .colorTxt {

    background-position: 100% 0%;

}

.page-id-8876 .elementor-element-4e0405e8::after {

    content: '';

    position: absolute;

    left: 0;

    bottom: 0;

    height: 4px;

    width: 0;

    border-radius: 4px;

    background: linear-gradient(90deg, #6152AD, #B9A8FF, #bc1888);

    transition: width 0.7s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8876 .elementor-element-6e342fec.ms-in .elementor-element-4e0405e8::after {

    width: 140px;

    transition-delay: 0.5s;

}

.page-id-8876 .elementor-element-6e342fec:hover .elementor-element-4e0405e8::after {

    width: 240px;

    transition-delay: 0s;

}

.page-id-8876 .elementor-element-6e342fec > p {

    position: relative;

    margin: 0 0 14px;

    padding: 12px 16px 12px 22px;

    border-radius: 14px;

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), background 0.35s ease, box-shadow 0.35s ease;

}

.page-id-8876 .elementor-element-6e342fec > p::before {

    content: '';

    position: absolute;

    left: 0;

    top: 10px;

    bottom: 10px;

    width: 4px;

    border-radius: 4px;

    background: linear-gradient(180deg, #6152AD, #B9A8FF);

    transition: width 0.3s ease, top 0.3s ease, bottom 0.3s ease;

}

.page-id-8876 .elementor-element-6e342fec > p:first-of-type {

    background: linear-gradient(135deg, rgba(185, 168, 255, 0.22), rgba(255, 214, 180, 0.22));

    color: #1d1b2e;

    font-weight: 500;

}

.page-id-8876 .elementor-element-6e342fec > p:last-of-type {

    color: #4a4763;

}

.page-id-8876 .elementor-element-6e342fec > p:last-of-type::before {

    background: linear-gradient(180deg, #bc1888, #F4B8D8);

}

.page-id-8876 .elementor-element-6e342fec > p:hover {

    transform: translateX(8px);

    background: rgba(255, 255, 255, 0.75);

    box-shadow: 0 18px 28px -20px rgba(97, 82, 173, 0.6);

}

.page-id-8876 .elementor-element-6e342fec > p:hover::before {

    width: 7px;

    top: 4px;

    bottom: 4px;

}



/* ---------- scroll reveal ---------- */

.page-id-8876 .elementor-element-7aef3593.ms-in {

    animation: msSlideRight 1s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8876 .elementor-element-6e342fec.ms-in {

    animation: msSlideLeft 1s cubic-bezier(0.22, 1, 0.36, 1) 0.15s backwards;

}

@keyframes msSlideRight {

    from { opacity: 0; transform: translate3d(-70px, 0, 0); }

}

.page-id-8876 .elementor-element-6e342fec.ms-in > * {

    animation: msFadeUp2 0.7s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8876 .elementor-element-6e342fec.ms-in > *:nth-child(1) { animation-delay: 0.35s; }

.page-id-8876 .elementor-element-6e342fec.ms-in > *:nth-child(2) { animation-delay: 0.47s; }

.page-id-8876 .elementor-element-6e342fec.ms-in > *:nth-child(3) { animation-delay: 0.6s; }

.page-id-8876 .elementor-element-6e342fec.ms-in > *:nth-child(4) { animation-delay: 0.75s; }





/* =========================================================================

   INNOVATION IN NORWAY PAGE (page-id-8886) - BANNER

   Hero #4a272a25 (photo = background image, right), content col #35e65471: eyebrow #fe33d40, heading #7de611e1 (h1.banner-inner-heading),

   paragraph .banner-subheading-style p, location line #79b94052, CTA #7ec73e15.

   A "Nordic" treatment, unlike the other banners: slow northern-lights ribbons (lavender / violet / pink) swaying behind the copy and

   drifting against the pointer, soft snowfall, a small compass above the eyebrow whose needle follows the cursor, an aurora-gradient

   rule under the heading, the location line as a glass chip with an aurora border that flows, and a CTA that turns aurora on hover.

   One fold on desktop. (The reduced-motion blocks carry "and (min-width: 99999px)" - see the note at the top of this file.)

   ========================================================================= */

.page-id-8886 .elementor-element-4a272a25 {

    position: relative;

    overflow: hidden;

}

/* aurora ribbons */

.page-id-8886 .elementor-element-4a272a25::after {

    content: '';

    position: absolute;

    top: 0;

    bottom: 0;

    left: -4%;

    width: 70%;

    z-index: 1;

    pointer-events: none;

    background:

        radial-gradient(ellipse 36% 70% at 22% 24%, rgba(185, 168, 255, 0.46) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 60% at 52% 40%, rgba(152, 128, 244, 0.32) 0%, rgba(152, 128, 244, 0) 70%),

        radial-gradient(ellipse 38% 66% at 78% 20%, rgba(188, 24, 136, 0.16) 0%, rgba(188, 24, 136, 0) 70%),

        radial-gradient(ellipse 50% 40% at 30% 100%, rgba(255, 214, 180, 0.55) 0%, rgba(255, 214, 180, 0) 70%);

    filter: blur(14px);

    -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 62%, transparent 100%);

    mask-image: linear-gradient(90deg, #000 0%, #000 62%, transparent 100%);

    transform: translate3d(calc(var(--px, 0) * -22px), calc(var(--py, 0) * -14px), 0);

    animation: noAurora 14s ease-in-out infinite alternate;

}

@keyframes noAurora {

    0%   { background-size: 100% 100%, 100% 100%, 100% 100%, 100% 100%; background-position: 0 0, 0 0, 0 0, 0 0; }

    50%  { background-size: 112% 100%, 100% 116%, 108% 100%, 100% 100%; background-position: 10% 0, 0 8%, -8% 0, 0 0; }

    100% { background-size: 100% 112%, 116% 100%, 100% 108%, 100% 100%; background-position: -6% 6%, 8% 0, 0 -6%, 0 0; }

}

/* snowfall */

.page-id-8886 .elementor-element-4a272a25::before {

    content: '';

    position: absolute;

    top: 0;

    bottom: 0;

    left: 0;

    width: 64%;

    z-index: 1;

    pointer-events: none;

    background:

        radial-gradient(circle, #ffffff 0 2px, rgba(152, 128, 244, 0.28) 3px, rgba(152, 128, 244, 0) 5px) 0 0 / 120px 140px,

        radial-gradient(circle, #ffffff 0 1.5px, rgba(152, 128, 244, 0.25) 2.5px, rgba(152, 128, 244, 0) 4px) 40px 60px / 90px 110px,

        radial-gradient(circle, #ffffff 0 2.5px, rgba(152, 128, 244, 0.22) 3.5px, rgba(152, 128, 244, 0) 6px) 70px 20px / 190px 210px;

    -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 55%, transparent 100%);

    mask-image: linear-gradient(90deg, #000 0%, #000 55%, transparent 100%);

    animation: noSnow 18s linear infinite;

}

@keyframes noSnow {

    from { background-position: 0 0, 40px 60px, 70px 20px; }

    to   { background-position: 30px 280px, 10px 330px, 40px 420px; }

}

.page-id-8886 .elementor-element-4a272a25 > .e-con-inner {

    position: relative;

    z-index: 2;

}



/* staggered entrance */

.page-id-8886 .elementor-element-fe33d40,

.page-id-8886 .elementor-element-7de611e1,

.page-id-8886 .elementor-element-35e65471 > p,

.page-id-8886 .elementor-element-79b94052,

.page-id-8886 .elementor-element-7ec73e15 {

    opacity: 0;

    animation: jcHeroFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-8886 .elementor-element-fe33d40 { animation-delay: 0.4s; }

.page-id-8886 .elementor-element-7de611e1 { animation-delay: 0.52s; }

.page-id-8886 .elementor-element-35e65471 > p { animation-delay: 0.66s; }

.page-id-8886 .elementor-element-79b94052 { animation-delay: 0.8s; }

.page-id-8886 .elementor-element-7ec73e15 { animation-delay: 0.94s; }



/* compass above the eyebrow: the needle follows the cursor (--ang is set in customjs/custom-changes.js), spins on hover */

.page-id-8886 .elementor-element-35e65471 {

    position: relative;

}

.page-id-8886 .elementor-element-35e65471::before {

    content: '';

    position: absolute;

    left: 10px;

    top: -66px;

    width: 52px;

    height: 52px;

    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='22' fill='white' fill-opacity='0.75' stroke='%236152AD' stroke-opacity='0.45' stroke-width='1.4'/%3E%3Cpath d='M24 4v5M24 39v5M4 24h5M39 24h5' stroke='%236152AD' stroke-opacity='0.55' stroke-width='1.6' stroke-linecap='round'/%3E%3Cpath d='M24 9l5 15h-10z' fill='%23bc1888'/%3E%3Cpath d='M24 39l5-15h-10z' fill='%23223973'/%3E%3Ccircle cx='24' cy='24' r='2.4' fill='white' stroke='%236152AD' stroke-width='1.2'/%3E%3C/svg%3E") center / contain no-repeat;

    filter: drop-shadow(0 8px 12px rgba(45, 36, 99, 0.25));

    transform: rotate(var(--ang, 0deg));

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-8886 .elementor-element-35e65471:hover::before {

    filter: drop-shadow(0 10px 16px rgba(152, 128, 244, 0.6));

}



/* heading: shimmer on the accent word + aurora rule that draws, then stretches on hover */

.page-id-8886 .elementor-element-7de611e1 {

    position: relative;

    padding-bottom: 16px;

}

.page-id-8886 .elementor-element-7de611e1 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-8886 .elementor-element-7de611e1:hover .colorTxt {

    background-position: 100% 0%;

}

.page-id-8886 .elementor-element-7de611e1::after {

    content: '';

    position: absolute;

    left: 0;

    bottom: 0;

    height: 4px;

    width: 0;

    border-radius: 4px;

    background: linear-gradient(90deg, #6152AD, #B9A8FF, #bc1888);

    animation: noRule 0.9s cubic-bezier(0.22, 1, 0.36, 1) 1.1s forwards;

    transition: width 0.6s cubic-bezier(0.22, 1, 0.36, 1);

}

@keyframes noRule {

    to { width: 120px; }

}

.page-id-8886 .elementor-element-7de611e1:hover::after {

    width: 220px;

    animation: none;

}



/* location line -> glass chip with a flowing aurora border */

.page-id-8886 .elementor-element-79b94052 {

    width: fit-content;

    max-width: 100%;

}

.page-id-8886 .elementor-element-79b94052 .elementor-image-box-wrapper {

    padding: 12px 18px;

    border: 2px solid transparent;

    border-radius: 16px;

    background:

        linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.95)) padding-box,

        linear-gradient(90deg, #6152AD, #B9A8FF, #bc1888, #6152AD) border-box;

    background-size: auto, 300% 100%;

    box-shadow: 0 14px 26px -18px rgba(45, 36, 99, 0.5);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;

    animation: noBorderFlow 6s linear infinite;

}

@keyframes noBorderFlow {

    from { background-position: 0 0, 0% 0; }

    to   { background-position: 0 0, 300% 0; }

}

.page-id-8886 .elementor-element-79b94052 .elementor-image-box-wrapper:hover {

    transform: translateY(-4px);

    box-shadow: 0 22px 32px -18px rgba(152, 128, 244, 0.55);

}



/* CTA: turns aurora on hover, lifts, bobbing arrow */

.page-id-8886 .elementor-element-7ec73e15 a {

    position: relative;

    overflow: hidden;

    background-image: linear-gradient(100deg, #6152AD 0%, #6152AD 40%, #9880F4 70%, #bc1888 100%) !important;

    background-size: 250% 100%;

    background-position: 0% 0;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease, background-position 0.7s ease;

}

.page-id-8886 .elementor-element-7ec73e15 a:hover {

    background-position: 100% 0;

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(152, 128, 244, 0.5);

}

.page-id-8886 .elementor-element-7ec73e15 .elementor-button-icon {

    animation: noBob 1.8s ease-in-out infinite;

}

@keyframes noBob {

    0%, 100% { transform: translateY(-2px); }

    50%      { transform: translateY(3px); }

}



/* one fold on desktop */





@media (prefers-reduced-motion: reduce) and (min-width: 99999px) {

    .page-id-8886 .elementor-element-4a272a25::after,

    .page-id-8886 .elementor-element-4a272a25::before,

    .page-id-8886 .elementor-element-79b94052 .elementor-image-box-wrapper,

    .page-id-8886 .elementor-element-7ec73e15 .elementor-button-icon {

        animation: none;

    }

    .page-id-8886 .elementor-element-fe33d40,

    .page-id-8886 .elementor-element-7de611e1,

    .page-id-8886 .elementor-element-35e65471 > p,

    .page-id-8886 .elementor-element-79b94052,

    .page-id-8886 .elementor-element-7ec73e15 {

        opacity: 1;

        animation: none;

    }

}



/* Innovation in Norway banner: the line under the heading is removed */

.page-id-8886 .elementor-element-7de611e1::after {

    content: none;

    display: none;

    animation: none;

}

.page-id-8886 .elementor-element-7de611e1 {

    padding-bottom: 0;

}





/* =========================================================================

   INNOVATION IN NORWAY - "THE INVITATION" (section #294f83c9, row #3748b63b: photo col #7ca53e3 > #56f5a28c > img; text col #31b893ba =

   eyebrow #d33b807, heading #4f68b969, two paragraphs).

   Photo: a rounded frame with a soft purple glow, a zooming image, a "map pin" coordinates chip (59.91 N / 10.75 E, Oslo) and an

   "Oslo Innovation Week" tag that float at opposite phases, plus a gentle 3D tilt with the pointer. Text: both paragraphs keep their normal paragraph form - each gets a gradient bar down its left edge and a soft tinted background, and nudges right on hover. Lavender / peach wash with a faint snow of dots. One fold.

   ========================================================================= */

.page-id-8886 .elementor-element.elementor-element-294f83c9:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 40% 60% at 4% 22%, rgba(185, 168, 255, 0.38) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 60% at 98% 90%, rgba(255, 214, 180, 0.50) 0%, rgba(255, 214, 180, 0) 70%),

        linear-gradient(180deg, #FFFFFF 0%, #F6F1FF 100%) !important;

}

.page-id-8886 .elementor-element-294f83c9::before {

    content: '';

    position: absolute;

    inset: 0;

    pointer-events: none;

    background:

        radial-gradient(circle, #ffffff 0 2px, rgba(152, 128, 244, 0.28) 3px, rgba(152, 128, 244, 0) 5px) 0 0 / 130px 150px,

        radial-gradient(circle, #ffffff 0 1.5px, rgba(152, 128, 244, 0.25) 2.5px, rgba(152, 128, 244, 0) 4px) 50px 70px / 100px 120px;

    opacity: 0.8;

    animation: noSnow 22s linear infinite;

}

.page-id-8886 .elementor-element-294f83c9 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* ---------- photo ---------- */

.page-id-8886 .elementor-element-7ca53e3 {

    position: relative;

}

.page-id-8886 .elementor-element-56f5a28c {

    position: relative;

    overflow: hidden;

    border-radius: 26px;

    border: 6px solid #ffffff;

    box-shadow: 0 30px 50px -28px rgba(45, 36, 99, 0.6), 0 0 0 1px rgba(97, 82, 173, 0.14), 0 0 40px -6px rgba(152, 128, 244, 0.45);

    transform: perspective(1000px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));

    transition: transform 0.3s ease-out, box-shadow 0.4s ease;

}

.page-id-8886 .elementor-element-7ca53e3:hover .elementor-element-56f5a28c {

    box-shadow: 0 40px 60px -28px rgba(97, 82, 173, 0.75), 0 0 0 2px rgba(152, 128, 244, 0.5), 0 0 50px -4px rgba(152, 128, 244, 0.6);

}

.page-id-8886 .elementor-element-56f5a28c img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8886 .elementor-element-7ca53e3:hover .elementor-element-56f5a28c img {

    transform: scale(1.07);

}

/* coordinates chip with a pulsing pin dot */

.page-id-8886 .elementor-element-7ca53e3::after {

    content: '59.91\00B0 N \00B7 10.75\00B0 E';

    position: absolute;

    left: -10px;

    bottom: 28px;

    z-index: 3;

    padding: 9px 16px 9px 34px;

    border-radius: 999px;

    border: 1px solid rgba(255, 255, 255, 0.85);

    background:

        radial-gradient(circle, #bc1888 0 4px, rgba(188, 24, 136, 0) 5px) 14px center / 14px 14px no-repeat,

        rgba(255, 255, 255, 0.78);

    -webkit-backdrop-filter: blur(10px);

    backdrop-filter: blur(10px);

    box-shadow: 0 16px 28px -14px rgba(45, 36, 99, 0.55);

    color: #223973;

    font-size: 1.3rem;

    font-weight: 700;

    letter-spacing: 0.06em;

    white-space: nowrap;

    animation: noPin 1.6s ease-in-out infinite, noBobA 4.4s ease-in-out infinite;

    pointer-events: none;

}

@keyframes noPin {

    0%, 100% { background-size: 14px 14px, auto; }

    50%      { background-size: 7px 7px, auto; }

}

@keyframes noBobA {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-8px); }

}

/* event tag, top right */

.page-id-8886 .elementor-element-7ca53e3::before {

    content: '\2726  Oslo Innovation Week';

    position: absolute;

    right: -10px;

    top: 26px;

    z-index: 3;

    padding: 9px 18px;

    border-radius: 999px;

    background: linear-gradient(135deg, #6152AD 0%, #9880F4 100%);

    box-shadow: 0 16px 28px -12px rgba(97, 82, 173, 0.7);

    color: #ffffff;

    font-size: 1.3rem;

    font-weight: 700;

    letter-spacing: 0.04em;

    white-space: nowrap;

    animation: noBobA 5s ease-in-out infinite;

    animation-delay: -2s;

    pointer-events: none;

}



/* ---------- text ---------- */

.page-id-8886 .elementor-element-4f68b969 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-8886 .elementor-element-4f68b969:hover .colorTxt {

    background-position: 100% 0%;

}

.page-id-8886 .elementor-element-31b893ba > p:first-of-type {

    color: #3a3753;

}



/* ---------- scroll reveal ---------- */

.page-id-8886 .elementor-element-7ca53e3.ms-in {

    animation: msDropIn 1s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8886 .elementor-element-31b893ba.ms-in {

    animation: msSlideLeft 1s cubic-bezier(0.22, 1, 0.36, 1) 0.15s backwards;

}

.page-id-8886 .ms-pre {

    opacity: 0;

}



/* ---------- one fold + responsive ---------- */





/* the event tag is the column's ::before, which Elementor also uses for its overlay: reset its box so it stays a small pill */

.page-id-8886 .elementor-element-7ca53e3::before {

    width: auto;

    height: auto;

    left: auto;

    bottom: auto;

    opacity: 1;

    mix-blend-mode: normal;

    transition: none;

}





/* =========================================================================

   INNOVATION IN NORWAY - "WHAT I TOOK AWAY" (section #78c161bd; row #a643dd2: left #7410304e = three icon cards #28ef9977 / #1819efa6 / #4cff0d03,

   right #3c382466 = eyebrow #70a7b6b + heading #554d197e "Three things Norway gets right").

   A stepper: the three takeaways hang off a vertical line with a glowing node each. One card is "active" at any time - it slides out,

   glows and its node pulses - and the active card cycles by itself (customjs/custom-changes.js) until you hover one; a big outlined

   01 / 02 / 03 under the heading follows the active card. Cards slide in on scroll and the line draws down. Lavender / peach wash,

   cards in the house style (white, 22px radius, hairline purple border). One fold.

   ========================================================================= */

.page-id-8886 .elementor-element.elementor-element-78c161bd:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 40% 60% at 4% 20%, rgba(185, 168, 255, 0.40) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 60% at 98% 92%, rgba(255, 214, 180, 0.50) 0%, rgba(255, 214, 180, 0) 70%),

        linear-gradient(180deg, #F6F4FD 0%, #FFFFFF 100%) !important;

}

.page-id-8886 .elementor-element-78c161bd > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* the stepper line (container ::after - ::before is Elementor's overlay) */

.page-id-8886 .elementor-element-7410304e {

    position: relative;

}

.page-id-8886 .elementor-element-7410304e::after {

    content: '';

    position: absolute;

    left: -36px;

    top: 74px;

    bottom: 88px;

    width: 3px;

    border-radius: 3px;

    background: linear-gradient(180deg, #6152AD, #B9A8FF 55%, #bc1888);

    box-shadow: 0 0 12px rgba(152, 128, 244, 0.6);

    transform-origin: top;

    pointer-events: none;

}

.page-id-8886 .elementor-element-7410304e.ms-pre::after {

    transform: scaleY(0);

}

.page-id-8886 .elementor-element-7410304e.ms-in::after {

    animation: noLine 1.4s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

@keyframes noLine {

    from { transform: scaleY(0); }

}



/* cards */

.page-id-8886 .elementor-element-28ef9977,

.page-id-8886 .elementor-element-1819efa6,

.page-id-8886 .elementor-element-4cff0d03 {

    position: relative;

    border: 1px solid rgba(97, 82, 173, 0.12) !important;

    border-radius: 22px !important;

    box-shadow: 0 12px 22px -16px rgba(45, 36, 99, 0.45) !important;

    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease, border-color 0.45s ease, background 0.45s ease;

}

/* node on the line */

.page-id-8886 .elementor-element-28ef9977::after,

.page-id-8886 .elementor-element-1819efa6::after,

.page-id-8886 .elementor-element-4cff0d03::after {

    content: '';

    position: absolute;

    left: -42px;

    top: 50%;

    width: 16px;

    height: 16px;

    margin-top: -8px;

    border-radius: 50%;

    background: #ffffff;

    border: 3px solid #6152AD;

    box-shadow: 0 0 0 4px rgba(152, 128, 244, 0.2);

    transition: background 0.35s ease, transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);

    pointer-events: none;

}

.page-id-8886 .elementor-element-28ef9977.no-act,

.page-id-8886 .elementor-element-1819efa6.no-act,

.page-id-8886 .elementor-element-4cff0d03.no-act,

.page-id-8886 .elementor-element-28ef9977:hover,

.page-id-8886 .elementor-element-1819efa6:hover,

.page-id-8886 .elementor-element-4cff0d03:hover {

    transform: translateX(12px);

    border-color: rgba(97, 82, 173, 0.5) !important;

    background: linear-gradient(135deg, #FFFFFF 0%, #F6F1FF 100%) !important;

    box-shadow: 0 22px 34px -18px rgba(97, 82, 173, 0.65), 0 0 28px -6px rgba(152, 128, 244, 0.5) !important;

}

.page-id-8886 .elementor-element-28ef9977.no-act::after,

.page-id-8886 .elementor-element-1819efa6.no-act::after,

.page-id-8886 .elementor-element-4cff0d03.no-act::after,

.page-id-8886 .elementor-element-28ef9977:hover::after,

.page-id-8886 .elementor-element-1819efa6:hover::after,

.page-id-8886 .elementor-element-4cff0d03:hover::after {

    background: #6152AD;

    transform: scale(1.35);

    animation: noNodePulse 1.4s ease-out infinite;

}

@keyframes noNodePulse {

    0%   { box-shadow: 0 0 0 4px rgba(152, 128, 244, 0.35); }

    100% { box-shadow: 0 0 0 16px rgba(152, 128, 244, 0); }

}

/* icon: lifts / spins a little on the active card */

.page-id-8886 .elementor-element-78c161bd .elementor-element-7410304e img {

    transition: transform 0.55s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-8886 .elementor-element-28ef9977.no-act img,

.page-id-8886 .elementor-element-1819efa6.no-act img,

.page-id-8886 .elementor-element-4cff0d03.no-act img,

.page-id-8886 .elementor-element-28ef9977:hover img,

.page-id-8886 .elementor-element-1819efa6:hover img,

.page-id-8886 .elementor-element-4cff0d03:hover img {

    transform: scale(1.12) rotate(-6deg);

}

.page-id-8886 .elementor-element-7410304e .elementor-image-box-title {

    transition: color 0.35s ease;

}

.page-id-8886 .elementor-element-28ef9977.no-act .elementor-image-box-title,

.page-id-8886 .elementor-element-1819efa6.no-act .elementor-image-box-title,

.page-id-8886 .elementor-element-4cff0d03.no-act .elementor-image-box-title,

.page-id-8886 .elementor-element-28ef9977:hover .elementor-image-box-title,

.page-id-8886 .elementor-element-1819efa6:hover .elementor-image-box-title,

.page-id-8886 .elementor-element-4cff0d03:hover .elementor-image-box-title {

    color: #6152AD !important;

}



/* right column: heading + a big outlined number that follows the active card */

.page-id-8886 .elementor-element-554d197e .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-8886 .elementor-element-554d197e:hover .colorTxt {

    background-position: 100% 0%;

}

.page-id-8886 .elementor-element-3c382466::after {

    content: attr(data-n);

    align-self: flex-start;

    margin-top: 6px;

    font-size: 13rem;

    font-weight: 800;

    line-height: 1;

    letter-spacing: -0.04em;

    color: transparent;

    -webkit-text-stroke: 2px rgba(97, 82, 173, 0.32);

    background: linear-gradient(180deg, rgba(152, 128, 244, 0.22), rgba(152, 128, 244, 0)) text;

    -webkit-background-clip: text;

    pointer-events: none;

}

.page-id-8886 .elementor-element-3c382466.no-tick::after {

    animation: noTick 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);

}

@keyframes noTick {

    0%   { transform: translateY(18px) scale(0.9); opacity: 0; }

    100% { transform: none; opacity: 1; }

}



/* scroll reveal */

.page-id-8886 .elementor-element-7410304e.ms-in > .elementor-element {

    animation: msSlideRight 0.9s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8886 .elementor-element-7410304e.ms-in > .elementor-element:nth-child(1) { animation-delay: 0.1s; }

.page-id-8886 .elementor-element-7410304e.ms-in > .elementor-element:nth-child(2) { animation-delay: 0.3s; }

.page-id-8886 .elementor-element-7410304e.ms-in > .elementor-element:nth-child(3) { animation-delay: 0.5s; }

.page-id-8886 .elementor-element-3c382466.ms-in {

    animation: msSlideLeft 1s cubic-bezier(0.22, 1, 0.36, 1) 0.2s backwards;

}





/* =========================================================================

   INNOVATION IN NORWAY - "ON THE GROUND" (section #5edc92a9, dark: left #2c7cf719 = eyebrow #5c5268d, heading #79f387c8, sub-line #d5ffe13,

   button #57ea791d; right grid #3f0bb777 = three Instagram reel posters #53d6812f / #50a1aafc / #73371786 (each a link)).

   Dark navy stage with lavender / pink glows and a drifting snow of dots. The three reels become phone-style cards fanned out like a

   hand of cards (left and right tilted, middle raised); each has a pulsing play button, a "REEL 0n" chip and a sheen that sweeps across it

   on hover, when it also straightens, lifts, glows and the others dim. The reels tilt in 3D with the pointer and rise in one after

   another on scroll. One fold.

   ========================================================================= */

.page-id-8886 .elementor-element.elementor-element-5edc92a9:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 38% 60% at 6% 25%, rgba(152, 128, 244, 0.34) 0%, rgba(152, 128, 244, 0) 70%),

        radial-gradient(ellipse 36% 60% at 96% 20%, rgba(188, 24, 136, 0.22) 0%, rgba(188, 24, 136, 0) 70%),

        radial-gradient(ellipse 40% 50% at 55% 115%, rgba(97, 82, 173, 0.40) 0%, rgba(97, 82, 173, 0) 70%),

        linear-gradient(160deg, #0F1536 0%, #181344 100%) !important;

}

/* snow */

.page-id-8886 .elementor-element-5edc92a9::before {

    content: '';

    position: absolute;

    inset: 0;

    width: auto;

    height: auto;

    opacity: 0.55;

    pointer-events: none;

    background:

        radial-gradient(circle, rgba(255, 255, 255, 0.9) 0 1.5px, rgba(185, 168, 255, 0.35) 2.5px, rgba(185, 168, 255, 0) 4px) 0 0 / 140px 160px,

        radial-gradient(circle, rgba(255, 255, 255, 0.85) 0 1px, rgba(185, 168, 255, 0.3) 2px, rgba(185, 168, 255, 0) 3.5px) 60px 80px / 100px 120px;

    animation: noSnow 24s linear infinite;

}

.page-id-8886 .elementor-element-5edc92a9 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* text on dark */

.page-id-8886 .elementor-element-5c5268d .elementor-heading-title {

    color: #C9BEFF !important;

}

.page-id-8886 .elementor-element-79f387c8 .section-heading {

    color: #ffffff !important;

}

.page-id-8886 .elementor-element-79f387c8 .banner-colorTxt {

    background: linear-gradient(100deg, #B9A8FF 0%, #F29BD0 100%);

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    color: transparent !important;

    background-size: 200% 100%;

    transition: background-position 0.9s ease;

}

.page-id-8886 .elementor-element-79f387c8:hover .banner-colorTxt {

    background-position: 100% 0;

}

.page-id-8886 .elementor-element-d5ffe13 .elementor-heading-title {

    color: rgba(255, 255, 255, 0.78) !important;

}

/* button: glowing lift + light sweep */

.page-id-8886 .elementor-element-57ea791d a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.45);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-8886 .elementor-element-57ea791d a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(152, 128, 244, 0.6);

}

.page-id-8886 .elementor-element-57ea791d a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-8886 .elementor-element-57ea791d a:hover::before {

    left: 130%;

}



/* ---------- reels: a fan of phone-style cards ---------- */

.page-id-8886 .elementor-element-3f0bb777 {

    align-items: center;

    padding: 28px 0 24px;

}

.page-id-8886 .elementor-element-53d6812f,

.page-id-8886 .elementor-element-50a1aafc,

.page-id-8886 .elementor-element-73371786 {

    --rot: 0deg;

    --ty: 0px;

    --sc: 1;

    position: relative;

    z-index: 1;

    transform: perspective(1000px) translateY(var(--ty)) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)) rotate(var(--rot)) scale(var(--sc));

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.4s ease, filter 0.4s ease;

}

.page-id-8886 .elementor-element-53d6812f { --rot: -6deg; --ty: 26px; }

.page-id-8886 .elementor-element-50a1aafc { --ty: -16px; --sc: 1.05; z-index: 2; }

.page-id-8886 .elementor-element-73371786 { --rot: 6deg; --ty: 26px; }

.page-id-8886 .elementor-element-3f0bb777:hover > *:not(:hover) {

    opacity: 0.55;

    filter: saturate(0.6);

}

.page-id-8886 .elementor-element-53d6812f:hover,

.page-id-8886 .elementor-element-50a1aafc:hover,

.page-id-8886 .elementor-element-73371786:hover {

    --rot: 0deg;

    --ty: -26px;

    --sc: 1.08;

    z-index: 5;

}

.page-id-8886 .elementor-element-3f0bb777 a {

    position: relative;

    display: block;

    overflow: hidden;

    border: 5px solid rgba(255, 255, 255, 0.14);

    border-radius: 28px;

    box-shadow: 0 30px 46px -24px rgba(0, 0, 0, 0.85), 0 0 0 1px rgba(185, 168, 255, 0.3);

    transition: box-shadow 0.4s ease, border-color 0.4s ease;

}

.page-id-8886 .elementor-element-53d6812f:hover a,

.page-id-8886 .elementor-element-50a1aafc:hover a,

.page-id-8886 .elementor-element-73371786:hover a {

    border-color: rgba(185, 168, 255, 0.55);

    box-shadow: 0 36px 54px -22px rgba(152, 128, 244, 0.8), 0 0 34px -4px rgba(152, 128, 244, 0.6);

}

.page-id-8886 .elementor-element-3f0bb777 a img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8886 .elementor-element-3f0bb777 .elementor-widget:hover a img {

    transform: scale(1.07);

}

/* play button with a pulsing ring */

.page-id-8886 .elementor-element-3f0bb777 a::before {

    content: '';

    position: absolute;

    left: 50%;

    top: 50%;

    width: 60px;

    height: 60px;

    margin: -30px 0 0 -30px;

    border-radius: 50%;

    background:

        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5.14v14l11-7z'/%3E%3C/svg%3E") 54% center / 28px 28px no-repeat,

        #6152AD;

    box-shadow: 0 10px 30px rgba(97, 82, 173, 0.55), 0 0 0 0 rgba(152, 128, 244, 0.6);

    z-index: 3;

    animation: msPlayRing 2s ease-out infinite;

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-8886 .elementor-element-3f0bb777 .elementor-widget:hover a::before {

    transform: scale(1.18);

}

/* sheen that sweeps across on hover */

.page-id-8886 .elementor-element-3f0bb777 a::after {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 4;

    pointer-events: none;

    background: linear-gradient(115deg, transparent 38%, rgba(255, 255, 255, 0.4) 50%, transparent 62%);

    transform: translateX(-130%);

}

.page-id-8886 .elementor-element-3f0bb777 .elementor-widget:hover a::after {

    transform: translateX(130%);

    transition: transform 0.9s ease;

}

/* REEL 0n chip (on the widget) */

.page-id-8886 .elementor-element-3f0bb777 > .elementor-widget::before {

    content: 'REEL 01';

    position: absolute;

    top: 18px;

    left: 18px;

    z-index: 5;

    padding: 4px 11px;

    border-radius: 999px;

    background: rgba(6, 10, 17, 0.6);

    border: 1px solid rgba(255, 255, 255, 0.2);

    -webkit-backdrop-filter: blur(6px);

    backdrop-filter: blur(6px);

    color: #ffffff;

    font-size: 1.1rem;

    font-weight: 700;

    letter-spacing: 0.14em;

    pointer-events: none;

}

.page-id-8886 .elementor-element-3f0bb777 > .elementor-element-50a1aafc.elementor-widget::before { content: 'REEL 02'; }

.page-id-8886 .elementor-element-3f0bb777 > .elementor-element-73371786.elementor-widget::before { content: 'REEL 03'; }



/* reveal: the reels rise in one after another */

.page-id-8886 .elementor-element-3f0bb777.ms-in > * {

    animation: noReelIn 0.9s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8886 .elementor-element-3f0bb777.ms-in > *:nth-child(1) { animation-delay: 0.1s; }

.page-id-8886 .elementor-element-3f0bb777.ms-in > *:nth-child(2) { animation-delay: 0.3s; }

.page-id-8886 .elementor-element-3f0bb777.ms-in > *:nth-child(3) { animation-delay: 0.5s; }

@keyframes noReelIn {

    from { opacity: 0; transform: translateY(90px) rotate(0deg) scale(0.9); }

}

.page-id-8886 .elementor-element-2c7cf719.ms-in {

    animation: msFadeUp2 0.9s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}





/* The Invitation: paragraphs stay paragraphs - a left border and a soft background each */

.page-id-8886 .elementor-element-31b893ba > p {

    position: relative;

    margin: 0 0 14px;

    padding: 14px 18px 14px 24px;

    border-radius: 14px;

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), background 0.35s ease, box-shadow 0.35s ease;

}

.page-id-8886 .elementor-element-31b893ba > p::before {

    content: '';

    position: absolute;

    left: 0;

    top: 10px;

    bottom: 10px;

    width: 4px;

    border-radius: 4px;

    background: linear-gradient(180deg, #6152AD, #B9A8FF);

    transition: width 0.3s ease, top 0.3s ease, bottom 0.3s ease;

}

.page-id-8886 .elementor-element-31b893ba > p:first-of-type {

    background: linear-gradient(135deg, rgba(185, 168, 255, 0.22), rgba(255, 214, 180, 0.22));

    color: #1d1b2e;

}

.page-id-8886 .elementor-element-31b893ba > p:last-of-type {

    background: rgba(255, 255, 255, 0.7);

    color: #3a3753;

}

.page-id-8886 .elementor-element-31b893ba > p:last-of-type::before {

    background: linear-gradient(180deg, #bc1888, #F4B8D8);

}

.page-id-8886 .elementor-element-31b893ba > p:hover {

    transform: translateX(8px);

    box-shadow: 0 18px 28px -20px rgba(97, 82, 173, 0.6);

}

.page-id-8886 .elementor-element-31b893ba > p:hover::before {

    width: 7px;

    top: 4px;

    bottom: 4px;

}

.page-id-8886 .elementor-element-31b893ba > p:last-of-type:hover {

    background: #ffffff;

}





/* =========================================================================

   FIXES (Innovation in Norway)

   1) "What I Took Away" stepper: the node used to ride along with its card when the card slid out (so it left the line), and the line was

      hard-coded. Now the nodes stay put (the slide is cancelled on the node), each node carries its number, the line is positioned from the

      real card centres (--ln-top / --ln-h, set in customjs/custom-changes.js) and the three cards are the same height.

   2) "On the Ground": no snow; a glowing black background; outline icons scattered at random places (built in JS).

   ========================================================================= */

.page-id-8886 .elementor-element-7410304e::after {

    left: -31.5px;       /* node centre = card inset (10px) + (-55px) + 15px = -30px from the column; line centre = -31.5px + 1.5px */

    top: var(--ln-top, 74px);

    height: var(--ln-h, 345px);

    bottom: auto;

}

.page-id-8886 .elementor-element-28ef9977,

.page-id-8886 .elementor-element-1819efa6,

.page-id-8886 .elementor-element-4cff0d03 {

    min-height: 158px;

    box-sizing: border-box;

    align-items: center;

}

.page-id-8886 .elementor-element-28ef9977::after,

.page-id-8886 .elementor-element-1819efa6::after,

.page-id-8886 .elementor-element-4cff0d03::after {

    content: '1';

    left: -55px;

    width: 30px;

    height: 30px;

    margin-top: -15px;

    box-sizing: border-box;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 3px solid #6152AD;

    color: #6152AD;

    font-size: 1.3rem;

    font-weight: 800;

    line-height: 1;

    box-shadow: 0 0 0 5px rgba(152, 128, 244, 0.18);

}

.page-id-8886 .elementor-element-1819efa6::after { content: '2'; }

.page-id-8886 .elementor-element-4cff0d03::after { content: '3'; }

/* active / hover: cancel the card's 12px slide on the node so it stays on the line */

.page-id-8886 .elementor-element-28ef9977.no-act::after,

.page-id-8886 .elementor-element-1819efa6.no-act::after,

.page-id-8886 .elementor-element-4cff0d03.no-act::after,

.page-id-8886 .elementor-element-28ef9977:hover::after,

.page-id-8886 .elementor-element-1819efa6:hover::after,

.page-id-8886 .elementor-element-4cff0d03:hover::after {

    background: #6152AD;

    color: #ffffff;

    transform: translateX(-12px) scale(1.15);

}



/* ---------- On the Ground: no snow, glowing black ---------- */

.page-id-8886 .elementor-element-5edc92a9::before {

    content: none;

    display: none;

    animation: none;

}

.page-id-8886 .elementor-element.elementor-element-5edc92a9:not(.elementor-motion-effects-element-type-background) {

    background:

        radial-gradient(ellipse 55% 55% at 50% 118%, rgba(152, 128, 244, 0.42) 0%, rgba(152, 128, 244, 0) 70%),

        radial-gradient(ellipse 34% 60% at 4% 18%, rgba(97, 82, 173, 0.36) 0%, rgba(97, 82, 173, 0) 70%),

        radial-gradient(ellipse 34% 60% at 98% 12%, rgba(188, 24, 136, 0.24) 0%, rgba(188, 24, 136, 0) 70%),

        #05070C !important;

}

.page-id-8886 .no-bgicons {

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    overflow: hidden;

}

.page-id-8886 .no-bgi {

    position: absolute;

    display: block;

    transform: translate3d(calc(var(--bx, 0) * var(--d, 10) * 1px), calc(var(--by, 0) * var(--d, 10) * 1px), 0) rotate(var(--r, 0deg));

    transition: transform 0.5s ease-out;

}

.page-id-8886 .no-bgi svg {

    display: block;

    width: 100%;

    height: auto;

    fill: none;

    stroke: #B9A8FF;

    stroke-opacity: 0.3;

    stroke-width: 1.4;

    stroke-linecap: round;

    stroke-linejoin: round;

    filter: drop-shadow(0 0 6px rgba(152, 128, 244, 0.55));

    animation: noBgiFloat 6s ease-in-out infinite;

    animation-delay: var(--t, 0s);

}

@keyframes noBgiFloat {

    0%, 100% { transform: translateY(0) rotate(0deg); }

    50%      { transform: translateY(-12px) rotate(6deg); }

}





/* =========================================================================

   FIX - "What I Took Away": the stepper line was painted on top of the number badges. The line now sits behind the cards (and so behind the

   nodes) and the cards / nodes are stacked above it.

   ========================================================================= */

.page-id-8886 .elementor-element-7410304e::after {

    z-index: 0;

}

.page-id-8886 .elementor-element-28ef9977,

.page-id-8886 .elementor-element-1819efa6,

.page-id-8886 .elementor-element-4cff0d03 {

    z-index: 1;

}

.page-id-8886 .elementor-element-28ef9977::after,

.page-id-8886 .elementor-element-1819efa6::after,

.page-id-8886 .elementor-element-4cff0d03::after {

    z-index: 2;

    background-clip: padding-box;

}



/* =========================================================================

   INNOVATION IN NORWAY - "BEHIND THE SCENES" (section #4f470826: three vlog posters in grid #13a74d18 = #4bb3cbc2 / #56c9b03e / #6cf13dd2

   (each a link > image), heading column #5fee7a3e = eyebrow #5277221, heading #183801a0, sub-line #ad7397a).

   "Day by day" as three stacked decks: each poster is a rounded card with two offset sheets peeking out behind it (lavender, then peach), a

   "DAY 01 / 02 / 03" chip, a pulsing play button and a sheen on hover. The days take turns being active (lift + glow, the others step back)

   every few seconds until you hover one (customjs/custom-changes.js). Posters tilt in 3D with the pointer and rise in one after another on

   scroll. Lavender / peach wash with two slowly drifting soft glows. One fold. No lines.

   ========================================================================= */

.page-id-8886 .elementor-element.elementor-element-4f470826:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 40% 60% at 4% 22%, rgba(185, 168, 255, 0.40) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 60% at 98% 88%, rgba(255, 214, 180, 0.52) 0%, rgba(255, 214, 180, 0) 70%),

        linear-gradient(180deg, #F6F4FD 0%, #FFFFFF 100%) !important;

}

.page-id-8886 .elementor-element-4f470826 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* the three decks */

.page-id-8886 .elementor-element-13a74d18 {

    padding: 22px 26px 30px 6px;

}

.page-id-8886 .elementor-element-4bb3cbc2,

.page-id-8886 .elementor-element-56c9b03e,

.page-id-8886 .elementor-element-6cf13dd2 {

    --ty: 0px;

    --sc: 1;

    position: relative;

    z-index: 1;

    transform: translateY(var(--ty)) scale(var(--sc));

    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.45s ease, filter 0.45s ease;

}

.page-id-8886 .elementor-element-4bb3cbc2.no-act,

.page-id-8886 .elementor-element-56c9b03e.no-act,

.page-id-8886 .elementor-element-6cf13dd2.no-act,

.page-id-8886 .elementor-element-4bb3cbc2:hover,

.page-id-8886 .elementor-element-56c9b03e:hover,

.page-id-8886 .elementor-element-6cf13dd2:hover {

    --ty: -16px;

    --sc: 1.04;

    z-index: 3;

}

.page-id-8886 .elementor-element-13a74d18.no-has-act > *:not(.no-act):not(:hover) {

    opacity: 0.72;

    filter: saturate(0.8);

}

.page-id-8886 .elementor-element-13a74d18:hover > *:not(:hover) {

    opacity: 0.6;

    filter: saturate(0.7);

}

.page-id-8886 .elementor-element-13a74d18 a {

    position: relative;

    display: block;

    overflow: visible;

    border-radius: 24px;

    border: 5px solid #ffffff;

    box-shadow:

        14px 14px 0 -2px rgba(185, 168, 255, 0.55),

        26px 26px 0 -5px rgba(255, 214, 180, 0.7),

        0 30px 44px -22px rgba(45, 36, 99, 0.55);

    transition: box-shadow 0.45s ease, border-color 0.45s ease;

}

.page-id-8886 .elementor-element-4bb3cbc2.no-act a,

.page-id-8886 .elementor-element-56c9b03e.no-act a,

.page-id-8886 .elementor-element-6cf13dd2.no-act a,

.page-id-8886 .elementor-element-4bb3cbc2:hover a,

.page-id-8886 .elementor-element-56c9b03e:hover a,

.page-id-8886 .elementor-element-6cf13dd2:hover a {

    box-shadow:

        16px 16px 0 -2px rgba(152, 128, 244, 0.75),

        30px 30px 0 -5px rgba(255, 190, 140, 0.85),

        0 40px 56px -22px rgba(97, 82, 173, 0.7),

        0 0 36px -4px rgba(152, 128, 244, 0.55);

}

.page-id-8886 .elementor-element-13a74d18 a img {

    display: block;

    width: 100%;

    height: 100%;

    border-radius: 19px;

    object-fit: cover;

    transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8886 .elementor-element-13a74d18 .elementor-widget:hover a img,

.page-id-8886 .elementor-element-13a74d18 .no-act a img {

    transform: scale(1.04);

}

/* play button */

.page-id-8886 .elementor-element-13a74d18 a::before {

    content: '';

    position: absolute;

    left: 50%;

    top: 50%;

    width: 58px;

    height: 58px;

    margin: -29px 0 0 -29px;

    border-radius: 50%;

    background:

        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5.14v14l11-7z'/%3E%3C/svg%3E") 54% center / 26px 26px no-repeat,

        #6152AD;

    box-shadow: 0 10px 30px rgba(97, 82, 173, 0.55), 0 0 0 0 rgba(152, 128, 244, 0.6);

    z-index: 3;

    animation: msPlayRing 2s ease-out infinite;

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-8886 .elementor-element-13a74d18 .elementor-widget:hover a::before,

.page-id-8886 .elementor-element-13a74d18 .no-act a::before {

    transform: scale(1.18);

}

/* sheen */

.page-id-8886 .elementor-element-13a74d18 a::after {

    content: '';

    position: absolute;

    inset: 0;

    border-radius: 19px;

    z-index: 4;

    pointer-events: none;

    background: linear-gradient(115deg, transparent 38%, rgba(255, 255, 255, 0.42) 50%, transparent 62%);

    transform: translateX(-130%);

    clip-path: inset(0 round 19px);

}

.page-id-8886 .elementor-element-13a74d18 .elementor-widget:hover a::after {

    transform: translateX(130%);

    transition: transform 0.9s ease;

}

/* DAY chip */

.page-id-8886 .elementor-element-13a74d18 > .elementor-widget::before {

    content: 'DAY 01';

    position: absolute;

    top: 18px;

    left: 18px;

    z-index: 5;

    padding: 5px 13px;

    border-radius: 999px;

    background: linear-gradient(135deg, #6152AD, #9880F4);

    box-shadow: 0 10px 18px -8px rgba(97, 82, 173, 0.7);

    color: #ffffff;

    font-size: 1.2rem;

    font-weight: 700;

    letter-spacing: 0.12em;

    pointer-events: none;

}

.page-id-8886 .elementor-element-13a74d18 > .elementor-element-56c9b03e.elementor-widget::before { content: 'DAY 02'; }

.page-id-8886 .elementor-element-13a74d18 > .elementor-element-6cf13dd2.elementor-widget::before { content: 'DAY 03'; }



/* heading column */

.page-id-8886 .elementor-element-183801a0 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-8886 .elementor-element-183801a0:hover .colorTxt {

    background-position: 100% 0%;

}

.page-id-8886 .elementor-element-ad7397a .elementor-heading-title {

    color: #3a3753 !important;

}



/* drifting glows */

.page-id-8886 .elementor-element-4f470826::before {

    content: '';

    position: absolute;

    left: 10%;

    top: -30%;

    width: 460px;

    height: 460px;

    bottom: auto;

    right: auto;

    opacity: 1;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(152, 128, 244, 0.22) 0%, rgba(152, 128, 244, 0) 68%);

    pointer-events: none;

    animation: msGlowDrift 18s ease-in-out infinite alternate;

}



/* reveal */

.page-id-8886 .elementor-element-13a74d18.ms-in > * {

    animation: noReelIn 0.9s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8886 .elementor-element-13a74d18.ms-in > *:nth-child(1) { animation-delay: 0.1s; }

.page-id-8886 .elementor-element-13a74d18.ms-in > *:nth-child(2) { animation-delay: 0.3s; }

.page-id-8886 .elementor-element-13a74d18.ms-in > *:nth-child(3) { animation-delay: 0.5s; }

.page-id-8886 .elementor-element-5fee7a3e.ms-in {

    animation: msSlideLeft 1s cubic-bezier(0.22, 1, 0.36, 1) 0.2s backwards;

}





/* =========================================================================

   INNOVATION IN NORWAY - "OSLO IN FRAMES" (section #4834ea43, dark: heading block #5a4b2d28 = eyebrow #84ab284 + heading #71a0c3e2 "From the

   Trip"; gallery #74f709bc = 8 photos in .gallery > .gallery-item > .gallery-icon > a > img, 4 columns x 2 rows).

   An after-hours gallery: a glowing black wall with outline icons (camera, picture, aperture, pin ...) at random places; the photos hang

   as small framed pictures (lavender-purple frame, a slight tilt each, a soft light cone falling on them); one frame at a time is "lit" -

   it straightens, lifts, glows and shows a caption while the rest dim - touring the frames by itself until you hover one. Frames drop in

   one after another on scroll. One fold.

   ========================================================================= */

.page-id-8886 .elementor-element.elementor-element-4834ea43:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 55% 55% at 50% 118%, rgba(152, 128, 244, 0.42) 0%, rgba(152, 128, 244, 0) 70%),

        radial-gradient(ellipse 34% 60% at 4% 15%, rgba(97, 82, 173, 0.34) 0%, rgba(97, 82, 173, 0) 70%),

        radial-gradient(ellipse 34% 60% at 98% 10%, rgba(188, 24, 136, 0.22) 0%, rgba(188, 24, 136, 0) 70%),

        #05070C !important;

}

.page-id-8886 .elementor-element-4834ea43 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* heading block */

.page-id-8886 .elementor-element-84ab284 {

    width: auto !important;

}

.page-id-8886 .elementor-element-84ab284 .elementor-heading-title {

    white-space: nowrap;

    color: #C9BEFF !important;

}

.page-id-8886 .elementor-element-71a0c3e2 .section-heading {

    color: #ffffff !important;

}

.page-id-8886 .elementor-element-71a0c3e2 .colorTxt {

    background: linear-gradient(100deg, #B9A8FF 0%, #F29BD0 100%);

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    color: transparent !important;

}



/* ---------- gallery -> hung frames ---------- */

.page-id-8886 .elementor-element-74f709bc .elementor-image-gallery,

.page-id-8886 .elementor-element-74f709bc .gallery {

    width: 100%;

}

.page-id-8886 .elementor-element-74f709bc .gallery {

    display: grid !important;

    grid-template-columns: repeat(4, minmax(0, 1fr));

    grid-auto-rows: 214px;

    gap: 26px 22px;

    margin: 0 !important;

    padding: 8px 6px;

}

.page-id-8886 .elementor-element-74f709bc .gallery::before,

.page-id-8886 .elementor-element-74f709bc .gallery::after {

    display: none;

}

.page-id-8886 .elementor-element-74f709bc .gallery-item {

    --rot: 0deg;

    --ty: 0px;

    position: relative;

    width: auto !important;

    max-width: none !important;

    margin: 0 !important;

    padding: 5px !important;

    border-radius: 8px;

    background: linear-gradient(135deg, #B9A8FF 0%, #6152AD 55%, #9880F4 100%);

    box-shadow: 0 22px 30px -18px rgba(0, 0, 0, 0.9), 0 0 0 1px rgba(255, 255, 255, 0.08);

    transform: translateY(var(--ty)) rotate(var(--rot));

    transform-origin: 50% 0;

    transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.5s ease, filter 0.5s ease;

}

.page-id-8886 .elementor-element-74f709bc .gallery-item:nth-child(4n+1) { --rot: -2.2deg; }

.page-id-8886 .elementor-element-74f709bc .gallery-item:nth-child(4n+2) { --rot: 1.6deg; }

.page-id-8886 .elementor-element-74f709bc .gallery-item:nth-child(4n+3) { --rot: -1.2deg; }

.page-id-8886 .elementor-element-74f709bc .gallery-item:nth-child(4n+4) { --rot: 2.2deg; }

.page-id-8886 .elementor-element-74f709bc .gallery-icon,

.page-id-8886 .elementor-element-74f709bc .gallery-icon a {

    position: relative;

    display: block;

    width: 100%;

    height: 100%;

    overflow: hidden;

    border-radius: 4px;

}

.page-id-8886 .elementor-element-74f709bc .gallery-icon img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);

}

/* light cone falling on the picture */

.page-id-8886 .elementor-element-74f709bc .gallery-icon a::before {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 2;

    pointer-events: none;

    background: linear-gradient(180deg, rgba(255, 255, 255, 0.34) 0%, rgba(255, 255, 255, 0) 62%);

    clip-path: polygon(30% 0, 70% 0, 100% 100%, 0 100%);

    opacity: 0.35;

    transition: opacity 0.5s ease;

}

/* caption bar that slides up */

.page-id-8886 .elementor-element-74f709bc .gallery-icon a::after {

    content: 'Oslo \00B7 No. 01';

    position: absolute;

    left: 0;

    right: 0;

    bottom: 0;

    z-index: 3;

    padding: 18px 12px 9px;

    background: linear-gradient(180deg, rgba(5, 7, 12, 0), rgba(5, 7, 12, 0.85));

    color: #ffffff;

    font-size: 1.2rem;

    font-weight: 700;

    letter-spacing: 0.14em;

    text-transform: uppercase;

    transform: translateY(100%);

    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);

    pointer-events: none;

}

.page-id-8886 .elementor-element-74f709bc .gallery-item:nth-child(2) .gallery-icon a::after { content: 'Oslo \00B7 No. 02'; }

.page-id-8886 .elementor-element-74f709bc .gallery-item:nth-child(3) .gallery-icon a::after { content: 'Oslo \00B7 No. 03'; }

.page-id-8886 .elementor-element-74f709bc .gallery-item:nth-child(4) .gallery-icon a::after { content: 'Oslo \00B7 No. 04'; }

.page-id-8886 .elementor-element-74f709bc .gallery-item:nth-child(5) .gallery-icon a::after { content: 'Oslo \00B7 No. 05'; }

.page-id-8886 .elementor-element-74f709bc .gallery-item:nth-child(6) .gallery-icon a::after { content: 'Oslo \00B7 No. 06'; }

.page-id-8886 .elementor-element-74f709bc .gallery-item:nth-child(7) .gallery-icon a::after { content: 'Oslo \00B7 No. 07'; }

.page-id-8886 .elementor-element-74f709bc .gallery-item:nth-child(8) .gallery-icon a::after { content: 'Oslo \00B7 No. 08'; }



/* the lit frame: hover, or the one the tour is on */

.page-id-8886 .elementor-element-74f709bc .gallery-item:hover,

.page-id-8886 .elementor-element-74f709bc .gallery-item.no-lit {

    --rot: 0deg;

    --ty: -10px;

    z-index: 3;

    box-shadow: 0 30px 40px -18px rgba(0, 0, 0, 0.95), 0 0 36px -2px rgba(152, 128, 244, 0.75), 0 0 0 1px rgba(255, 255, 255, 0.25);

}

.page-id-8886 .elementor-element-74f709bc .gallery-item:hover .gallery-icon a::before,

.page-id-8886 .elementor-element-74f709bc .gallery-item.no-lit .gallery-icon a::before {

    opacity: 1;

}

.page-id-8886 .elementor-element-74f709bc .gallery-item:hover .gallery-icon a::after,

.page-id-8886 .elementor-element-74f709bc .gallery-item.no-lit .gallery-icon a::after {

    transform: translateY(0);

}

.page-id-8886 .elementor-element-74f709bc .gallery-item:hover .gallery-icon img,

.page-id-8886 .elementor-element-74f709bc .gallery-item.no-lit .gallery-icon img {

    transform: scale(1.07);

}

/* the others dim */

.page-id-8886 .elementor-element-74f709bc .gallery.no-has-lit .gallery-item:not(.no-lit):not(:hover) {

    filter: brightness(0.62) saturate(0.8);

}

.page-id-8886 .elementor-element-74f709bc .gallery:hover .gallery-item:not(:hover) {

    filter: brightness(0.55) saturate(0.7);

}



/* frames drop in one after another */

.page-id-8886 .elementor-element-74f709bc .gallery-item.ms-in {

    animation: noFrameDrop 0.9s cubic-bezier(0.34, 1.56, 0.64, 1) backwards;

}

@keyframes noFrameDrop {

    from { opacity: 0; transform: translateY(-60px) rotate(-8deg); }

}



/* background icons (built in JS) */

.page-id-8886 .no-bgicons-d {

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    overflow: hidden;

}

.page-id-8886 .no-bgi-d {

    position: absolute;

    display: block;

    transform: translate3d(calc(var(--bx, 0) * var(--d, 10) * 1px), calc(var(--by, 0) * var(--d, 10) * 1px), 0) rotate(var(--r, 0deg));

    transition: transform 0.5s ease-out;

}

.page-id-8886 .no-bgi-d svg {

    display: block;

    width: 100%;

    height: auto;

    fill: none;

    stroke: #B9A8FF;

    stroke-opacity: 0.3;

    stroke-width: 1.4;

    stroke-linecap: round;

    stroke-linejoin: round;

    filter: drop-shadow(0 0 6px rgba(152, 128, 244, 0.55));

    animation: noBgiFloat 6s ease-in-out infinite;

    animation-delay: var(--t, 0s);

}





/* =========================================================================

   INNOVATION IN NORWAY - "IN CONVERSATION" (section #1c2cf520: left #4b60b6e1 = eyebrow #f8829d3, heading #6c1ec77a, paragraph, button #5f84132f

   "Subscribe For More"; right #5dd2b0b0 > .oslo-slider (slick) of .slide-item > a > .card-box = .image-box (video still) + .content-box (title)).

   A "conversation" treatment: every interview is a video card whose title sits in a speech bubble overlapping the still (with a tail and a

   little animated "typing" indicator); a pulsing play button on the still; on hover the card lifts, the still zooms, the bubble turns

   lavender and the play button pops. Round glass slider arrows. Soft outline speech-bubble / mic icons float in the lavender / peach

   background. The paragraph gets a left bar and a tinted background. The text and the slider slide in on scroll. One fold.

   ========================================================================= */

.page-id-8886 .elementor-element.elementor-element-1c2cf520:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 40% 60% at 4% 20%, rgba(185, 168, 255, 0.40) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 60% at 98% 92%, rgba(255, 214, 180, 0.52) 0%, rgba(255, 214, 180, 0) 70%),

        linear-gradient(180deg, #F6F4FD 0%, #FFFFFF 100%) !important;

}

.page-id-8886 .elementor-element-1c2cf520 > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* ---------- left column ---------- */

.page-id-8886 .elementor-element-6c1ec77a .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-8886 .elementor-element-6c1ec77a:hover .colorTxt {

    background-position: 100% 0%;

}

.page-id-8886 .elementor-element-4b60b6e1 > p {

    position: relative;

    padding: 14px 18px 14px 24px;

    border-radius: 14px;

    background: linear-gradient(135deg, rgba(185, 168, 255, 0.22), rgba(255, 214, 180, 0.22));

    color: #1d1b2e;

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;

}

.page-id-8886 .elementor-element-4b60b6e1 > p::before {

    content: '';

    position: absolute;

    left: 0;

    top: 10px;

    bottom: 10px;

    width: 4px;

    border-radius: 4px;

    background: linear-gradient(180deg, #6152AD, #B9A8FF);

    transition: width 0.3s ease, top 0.3s ease, bottom 0.3s ease;

}

.page-id-8886 .elementor-element-4b60b6e1 > p:hover {

    transform: translateX(8px);

    box-shadow: 0 18px 28px -20px rgba(97, 82, 173, 0.6);

}

.page-id-8886 .elementor-element-4b60b6e1 > p:hover::before {

    width: 7px;

    top: 4px;

    bottom: 4px;

}

.page-id-8886 .elementor-element-5f84132f a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-8886 .elementor-element-5f84132f a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-8886 .elementor-element-5f84132f a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-8886 .elementor-element-5f84132f a:hover::before {

    left: 130%;

}



/* ---------- interview cards ---------- */

.page-id-8886 .elementor-element-343b8509 .slick-list {

    padding: 14px 0 34px;

}

.page-id-8886 .elementor-element-343b8509 .slide-item {

    padding: 0 12px;

    box-sizing: border-box;

}

.page-id-8886 .elementor-element-343b8509 .slide-item a {

    display: block;

    text-decoration: none;

}

.page-id-8886 .elementor-element-343b8509 .card-box {

    position: relative;

    background: transparent !important;

    box-shadow: none !important;

    border: 0 !important;

    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8886 .elementor-element-343b8509 .slide-item a:hover .card-box {

    transform: translateY(-8px);

}

.page-id-8886 .elementor-element-343b8509 .image-box {

    position: relative;

    overflow: hidden;

    border-radius: 22px;

    border: 5px solid #ffffff;

    box-shadow: 0 22px 34px -20px rgba(45, 36, 99, 0.55), 0 0 0 1px rgba(97, 82, 173, 0.12);

    transition: box-shadow 0.45s ease;

}

.page-id-8886 .elementor-element-343b8509 .slide-item a:hover .image-box {

    box-shadow: 0 30px 44px -20px rgba(97, 82, 173, 0.7), 0 0 30px -4px rgba(152, 128, 244, 0.5), 0 0 0 1px rgba(97, 82, 173, 0.3);

}

.page-id-8886 .elementor-element-343b8509 .image-box img {

    display: block;

    width: 100%;

    border-radius: 17px;

    transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8886 .elementor-element-343b8509 .slide-item a:hover .image-box img {

    transform: scale(1.07);

}

/* play button + sheen */

.page-id-8886 .elementor-element-343b8509 .image-box::before {

    content: '';

    position: absolute;

    left: 50%;

    top: 50%;

    width: 58px;

    height: 58px;

    margin: -29px 0 0 -29px;

    border-radius: 50%;

    background:

        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5.14v14l11-7z'/%3E%3C/svg%3E") 54% center / 26px 26px no-repeat,

        #6152AD;

    box-shadow: 0 10px 30px rgba(97, 82, 173, 0.55), 0 0 0 0 rgba(152, 128, 244, 0.6);

    z-index: 3;

    animation: msPlayRing 2s ease-out infinite;

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-8886 .elementor-element-343b8509 .slide-item a:hover .image-box::before {

    transform: scale(1.18);

}

.page-id-8886 .elementor-element-343b8509 .image-box::after {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 4;

    pointer-events: none;

    background: linear-gradient(115deg, transparent 38%, rgba(255, 255, 255, 0.4) 50%, transparent 62%);

    transform: translateX(-130%);

}

.page-id-8886 .elementor-element-343b8509 .slide-item a:hover .image-box::after {

    transform: translateX(130%);

    transition: transform 0.9s ease;

}

/* speech bubble */

.page-id-8886 .elementor-element-343b8509 .content-box {

    position: relative;

    z-index: 5;

    margin: -22px 18px 0 18px;

    padding: 16px 20px 16px 20px;

    border-radius: 18px;

    background: #ffffff !important;

    border: 1px solid rgba(97, 82, 173, 0.14);

    box-shadow: 0 16px 26px -18px rgba(45, 36, 99, 0.5);

    transition: background 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;

}

.page-id-8886 .elementor-element-343b8509 .content-box h3 {

    margin: 0;

    padding-right: 34px;

    color: #1d1b2e;

    transition: color 0.3s ease;

}

.page-id-8886 .elementor-element-343b8509 .slide-item a:hover .content-box {

    background: linear-gradient(135deg, #FFFFFF 0%, #F1EBFF 100%) !important;

    border-color: rgba(97, 82, 173, 0.45);

    box-shadow: 0 20px 30px -16px rgba(97, 82, 173, 0.6);

}

.page-id-8886 .elementor-element-343b8509 .slide-item a:hover .content-box h3 {

    color: #6152AD;

}

/* bubble tail */

.page-id-8886 .elementor-element-343b8509 .content-box::before {

    content: '';

    position: absolute;

    left: 26px;

    top: -9px;

    width: 16px;

    height: 16px;

    background: inherit;

    border-left: 1px solid rgba(97, 82, 173, 0.14);

    border-top: 1px solid rgba(97, 82, 173, 0.14);

    transform: rotate(45deg);

    border-radius: 3px 0 0 0;

    transition: border-color 0.4s ease;

}

.page-id-8886 .elementor-element-343b8509 .slide-item a:hover .content-box::before {

    border-color: rgba(97, 82, 173, 0.45);

}

/* animated "typing" dots in the bubble */

.page-id-8886 .elementor-element-343b8509 .content-box::after {

    content: '';

    position: absolute;

    right: 16px;

    top: 14px;

    width: 26px;

    height: 8px;

    background:

        radial-gradient(circle, #9880F4 0 100%, transparent 100%) 0 50% / 8px 8px no-repeat,

        radial-gradient(circle, #9880F4 0 100%, transparent 100%) 50% 50% / 8px 8px no-repeat,

        radial-gradient(circle, #9880F4 0 100%, transparent 100%) 100% 50% / 8px 8px no-repeat;

    animation: noTyping 1.3s ease-in-out infinite;

}

@keyframes noTyping {

    0%   { background-size: 8px 8px, 4px 4px, 4px 4px; }

    33%  { background-size: 4px 4px, 8px 8px, 4px 4px; }

    66%  { background-size: 4px 4px, 4px 4px, 8px 8px; }

    100% { background-size: 8px 8px, 4px 4px, 4px 4px; }

}



/* slider arrows */

.page-id-8886 .elementor-element-343b8509 .slick-arrow {

    border-radius: 50%;

    box-shadow: 0 10px 20px -8px rgba(97, 82, 173, 0.6);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-8886 .elementor-element-343b8509 .slick-arrow:hover {

    transform: scale(1.12);

    box-shadow: 0 14px 26px -8px rgba(152, 128, 244, 0.8);

}



/* floating outline bubbles / mics (built in JS) */

.page-id-8886 .no-bgicons-l {

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    overflow: hidden;

}

.page-id-8886 .no-bgi-l {

    position: absolute;

    display: block;

    transform: translate3d(calc(var(--bx, 0) * var(--d, 10) * 1px), calc(var(--by, 0) * var(--d, 10) * 1px), 0) rotate(var(--r, 0deg));

    transition: transform 0.5s ease-out;

}

.page-id-8886 .no-bgi-l svg {

    display: block;

    width: 100%;

    height: auto;

    fill: none;

    stroke: #6152AD;

    stroke-opacity: 0.2;

    stroke-width: 1.4;

    stroke-linecap: round;

    stroke-linejoin: round;

    animation: noBgiFloat 6s ease-in-out infinite;

    animation-delay: var(--t, 0s);

}



/* reveal */

.page-id-8886 .elementor-element-4b60b6e1.ms-in {

    animation: msFadeUp2 0.9s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8886 .elementor-element-5dd2b0b0.ms-in {

    animation: msSlideLeft 1s cubic-bezier(0.22, 1, 0.36, 1) 0.15s backwards;

}





/* =========================================================================

   INNOVATION IN NORWAY - LAST SECTION "BEHIND THE SCENES / Interested in research opportunities in Norway?" (section #4d8dfa6f: centred heading block

   #41321be4 = eyebrow #9438aee + heading #6696b3df; row #28a0d779: left #2099154d = paragraph + button #7386ef05 "Useful Resources";

   right grid #ad14838 = three reel posters #6227d3e7 / #2a359d5e / #27a3ae85).

   The closing call-to-action: lavender -> peach wash with a big soft glow behind the reels and outline "research & travel" icons (briefcase,

   compass, graduation cap, globe, mail, flask ...) at random places that float and drift with the pointer. The text sits on a frosted card

   with a gradient top edge; the three reels zig-zag (up / down / up) as framed clips with a "CLIP 01-03" chip, pulsing play button and a sheen on

   hover; they take turns being lit (lift + glow, the others step back) until you hover one. Button: glowing lift + light sweep, bobbing arrow. One fold.

   ========================================================================= */

.page-id-8886 .elementor-element.elementor-element-4d8dfa6f:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 40% 60% at 4% 22%, rgba(185, 168, 255, 0.42) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 60% at 98% 92%, rgba(255, 214, 180, 0.55) 0%, rgba(255, 214, 180, 0) 70%),

        radial-gradient(ellipse 36% 50% at 70% 55%, rgba(152, 128, 244, 0.22) 0%, rgba(152, 128, 244, 0) 70%),

        linear-gradient(180deg, #FFFFFF 0%, #F6F1FF 100%) !important;

}

.page-id-8886 .elementor-element-4d8dfa6f > .e-con-inner {

    position: relative;

    z-index: 1;

}



/* heading */

.page-id-8886 .elementor-element-6696b3df .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-8886 .elementor-element-6696b3df:hover .colorTxt {

    background-position: 100% 0%;

}



/* text card */

.page-id-8886 .elementor-element-2099154d {

    position: relative;

    overflow: hidden;

    box-sizing: border-box;

    align-self: center;

    padding: 28px 26px 26px !important;

    border: 1px solid rgba(97, 82, 173, 0.14);

    border-radius: 22px;

    background: rgba(255, 255, 255, 0.82);

    -webkit-backdrop-filter: blur(10px);

    backdrop-filter: blur(10px);

    box-shadow: 0 26px 44px -28px rgba(45, 36, 99, 0.5);

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease, border-color 0.4s ease;

}

.page-id-8886 .elementor-element-2099154d:hover {

    transform: translateY(-6px);

    border-color: rgba(97, 82, 173, 0.4);

    box-shadow: 0 34px 52px -26px rgba(97, 82, 173, 0.6), 0 0 30px -8px rgba(152, 128, 244, 0.4);

}

.page-id-8886 .elementor-element-2099154d::before {

    content: '';

    position: absolute;

    left: 24px;

    right: 24px;

    top: 0;

    bottom: auto;

    width: auto;

    height: 4px;

    opacity: 1;

    border-radius: 0 0 4px 4px;

    background: linear-gradient(90deg, #6152AD, #B9A8FF, #bc1888);

}

.page-id-8886 .elementor-element-2099154d > * {

    position: relative;

    z-index: 1;

}

.page-id-8886 .elementor-element-2099154d > p {

    color: #1d1b2e;

}

.page-id-8886 .elementor-element-7386ef05 a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-8886 .elementor-element-7386ef05 a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-8886 .elementor-element-7386ef05 a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-8886 .elementor-element-7386ef05 a:hover::before {

    left: 130%;

}

.page-id-8886 .elementor-element-7386ef05 .elementor-button-icon {

    animation: noBob 1.8s ease-in-out infinite;

}



/* ---------- reels: zig-zag clips ---------- */

.page-id-8886 .elementor-element-ad14838 {

    align-items: center;

    padding: 24px 0;

}

.page-id-8886 .elementor-element-6227d3e7,

.page-id-8886 .elementor-element-2a359d5e,

.page-id-8886 .elementor-element-27a3ae85 {

    --ty: 0px;

    --sc: 1;

    position: relative;

    z-index: 1;

    transform: translateY(var(--ty)) scale(var(--sc));

    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.45s ease, filter 0.45s ease;

}

.page-id-8886 .elementor-element-6227d3e7 { --ty: -22px; }

.page-id-8886 .elementor-element-2a359d5e { --ty: 24px; }

.page-id-8886 .elementor-element-27a3ae85 { --ty: -22px; }

.page-id-8886 .elementor-element-6227d3e7.no-act,

.page-id-8886 .elementor-element-2a359d5e.no-act,

.page-id-8886 .elementor-element-27a3ae85.no-act,

.page-id-8886 .elementor-element-6227d3e7:hover,

.page-id-8886 .elementor-element-2a359d5e:hover,

.page-id-8886 .elementor-element-27a3ae85:hover {

    --sc: 1.06;

    z-index: 3;

}

.page-id-8886 .elementor-element-6227d3e7.no-act,

.page-id-8886 .elementor-element-6227d3e7:hover { --ty: -34px; }

.page-id-8886 .elementor-element-2a359d5e.no-act,

.page-id-8886 .elementor-element-2a359d5e:hover { --ty: 12px; }

.page-id-8886 .elementor-element-27a3ae85.no-act,

.page-id-8886 .elementor-element-27a3ae85:hover { --ty: -34px; }

.page-id-8886 .elementor-element-ad14838.no-has-act > *:not(.no-act):not(:hover) {

    opacity: 0.75;

    filter: saturate(0.8);

}

.page-id-8886 .elementor-element-ad14838:hover > *:not(:hover) {

    opacity: 0.62;

    filter: saturate(0.7);

}

.page-id-8886 .elementor-element-ad14838 a {

    position: relative;

    display: block;

    overflow: hidden;

    border: 5px solid #ffffff;

    border-radius: 26px;

    box-shadow: 0 28px 40px -22px rgba(45, 36, 99, 0.6), 0 0 0 1px rgba(97, 82, 173, 0.14);

    transition: box-shadow 0.45s ease;

}

.page-id-8886 .elementor-element-6227d3e7.no-act a,

.page-id-8886 .elementor-element-2a359d5e.no-act a,

.page-id-8886 .elementor-element-27a3ae85.no-act a,

.page-id-8886 .elementor-element-6227d3e7:hover a,

.page-id-8886 .elementor-element-2a359d5e:hover a,

.page-id-8886 .elementor-element-27a3ae85:hover a {

    box-shadow: 0 38px 52px -22px rgba(97, 82, 173, 0.75), 0 0 36px -4px rgba(152, 128, 244, 0.6), 0 0 0 2px rgba(152, 128, 244, 0.55);

}

.page-id-8886 .elementor-element-ad14838 a img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-8886 .elementor-element-ad14838 .elementor-widget:hover a img,

.page-id-8886 .elementor-element-ad14838 .no-act a img {

    transform: scale(1.06);

}

/* play button */

.page-id-8886 .elementor-element-ad14838 a::before {

    content: '';

    position: absolute;

    left: 50%;

    top: 50%;

    width: 58px;

    height: 58px;

    margin: -29px 0 0 -29px;

    border-radius: 50%;

    background:

        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5.14v14l11-7z'/%3E%3C/svg%3E") 54% center / 26px 26px no-repeat,

        #6152AD;

    box-shadow: 0 10px 30px rgba(97, 82, 173, 0.55), 0 0 0 0 rgba(152, 128, 244, 0.6);

    z-index: 3;

    animation: msPlayRing 2s ease-out infinite;

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-8886 .elementor-element-ad14838 .elementor-widget:hover a::before,

.page-id-8886 .elementor-element-ad14838 .no-act a::before {

    transform: scale(1.18);

}

/* sheen */

.page-id-8886 .elementor-element-ad14838 a::after {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 4;

    pointer-events: none;

    background: linear-gradient(115deg, transparent 38%, rgba(255, 255, 255, 0.4) 50%, transparent 62%);

    transform: translateX(-130%);

}

.page-id-8886 .elementor-element-ad14838 .elementor-widget:hover a::after {

    transform: translateX(130%);

    transition: transform 0.9s ease;

}

/* CLIP chip */

.page-id-8886 .elementor-element-ad14838 > .elementor-widget::before {

    content: 'CLIP 01';

    position: absolute;

    top: 18px;

    left: 18px;

    z-index: 5;

    padding: 5px 13px;

    border-radius: 999px;

    background: linear-gradient(135deg, #6152AD, #9880F4);

    box-shadow: 0 10px 18px -8px rgba(97, 82, 173, 0.7);

    color: #ffffff;

    font-size: 1.2rem;

    font-weight: 700;

    letter-spacing: 0.12em;

    pointer-events: none;

}

.page-id-8886 .elementor-element-ad14838 > .elementor-element-2a359d5e.elementor-widget::before { content: 'CLIP 02'; }

.page-id-8886 .elementor-element-ad14838 > .elementor-element-27a3ae85.elementor-widget::before { content: 'CLIP 03'; }



/* background icons (built in JS) */

.page-id-8886 .no-bgicons-c {

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    overflow: hidden;

}

.page-id-8886 .no-bgi-c {

    position: absolute;

    display: block;

    transform: translate3d(calc(var(--bx, 0) * var(--d, 10) * 1px), calc(var(--by, 0) * var(--d, 10) * 1px), 0) rotate(var(--r, 0deg));

    transition: transform 0.5s ease-out;

}

.page-id-8886 .no-bgi-c svg {

    display: block;

    width: 100%;

    height: auto;

    fill: none;

    stroke: #6152AD;

    stroke-opacity: 0.22;

    stroke-width: 1.4;

    stroke-linecap: round;

    stroke-linejoin: round;

    animation: noBgiFloat 6s ease-in-out infinite;

    animation-delay: var(--t, 0s);

}



/* reveal */

.page-id-8886 .elementor-element-41321be4.ms-in {

    animation: msFadeUp2 0.8s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8886 .elementor-element-2099154d.ms-in {

    animation: msSlideRight 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.1s backwards;

}

.page-id-8886 .elementor-element-ad14838.ms-in > * {

    animation: noReelIn 0.9s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-8886 .elementor-element-ad14838.ms-in > *:nth-child(1) { animation-delay: 0.2s; }

.page-id-8886 .elementor-element-ad14838.ms-in > *:nth-child(2) { animation-delay: 0.4s; }

.page-id-8886 .elementor-element-ad14838.ms-in > *:nth-child(3) { animation-delay: 0.6s; }





/* the "Useful Resources" button fits on one line inside the narrow text card */

.page-id-8886 .elementor-element-7386ef05 a {

    padding-left: 16px;

    padding-right: 16px;

    white-space: nowrap;

}

.page-id-8886 .elementor-element-7386ef05 .elementor-button-content-wrapper {

    gap: 8px;

    flex-wrap: nowrap;

}

.page-id-8886 .elementor-element-2099154d {

    padding-left: 22px !important;

    padding-right: 22px !important;

}





/* =========================================================================

   INNOVATION IN NORWAY - "THE INVITATION" restyled to match the 2nd section ("The Idea") of the No Dumb Questions Journal Club page:

   - a soft purple glow behind the photo and a shape-following drop shadow (no white frame, no tilt, no coordinate chip / tag)

   - two light icon badges (a map pin = Oslo, peach; a light bulb = innovation, lavender) with a pastel disc + white ring that drift slowly

   - copy: the first paragraph calmer, the second stronger with a solid purple left line (no tinted boxes, no hover slide)

   - plain lavender / peach wash behind the section (no snow); the heading is back to its normal colours

   These rules come after - and so replace - the earlier Invitation rules in this file.

   ========================================================================= */

.page-id-8886 .elementor-element-294f83c9::before {

    content: none;

    display: none;

    animation: none;

}

.page-id-8886 .elementor-element.elementor-element-294f83c9:not(.elementor-motion-effects-element-type-background) {

    background:

        radial-gradient(ellipse 45% 70% at 18% 60%, rgba(185, 168, 255, 0.22) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 55% at 96% 15%, rgba(255, 214, 180, 0.20) 0%, rgba(255, 214, 180, 0) 70%),

        #ffffff !important;

}



/* photo column: glow behind (explicit sizes: .e-con::before defaults to a full-size overlay) */

.page-id-8886 .elementor-element-7ca53e3::before {

    content: '';

    position: absolute;

    z-index: 0;

    left: 6%;

    right: auto;

    top: 18%;

    bottom: auto;

    width: 88%;

    height: auto;

    aspect-ratio: 1;

    padding: 0;

    border-radius: 50%;

    background: radial-gradient(circle, rgba(97, 82, 173, 0.32) 0%, rgba(97, 82, 173, 0) 70%);

    box-shadow: none;

    filter: blur(28px);

    opacity: 1;

    animation: none;

    transition: none;

    pointer-events: none;

}

.page-id-8886 .elementor-element-7ca53e3::after {

    content: none;

    display: none;

    animation: none;

}

.page-id-8886 .elementor-element-7ca53e3 .elementor-element-56f5a28c,

.page-id-8886 .elementor-element-7ca53e3:hover .elementor-element-56f5a28c {

    position: relative;

    z-index: 1;

    overflow: visible;

    border: 0;

    border-radius: 0;

    box-shadow: none;

    transform: none;

    transition: none;

}

.page-id-8886 .elementor-element-7ca53e3 .elementor-element-56f5a28c img {

    display: block;

    width: 100%;

    height: auto;

    border-radius: 22px;

    filter: drop-shadow(0 22px 26px rgba(45, 36, 99, 0.28));

    transform: none;

}

.page-id-8886 .elementor-element-7ca53e3:hover .elementor-element-56f5a28c img {

    transform: none;

}

/* two light icon badges (map pin, light bulb): pastel disc + white ring, line icon as an inline SVG; they drift slowly */

.page-id-8886 .elementor-element-7ca53e3 .elementor-element-56f5a28c::before,

.page-id-8886 .elementor-element-7ca53e3 .elementor-element-56f5a28c::after {

    content: '';

    position: absolute;

    z-index: 2;

    width: 54px;

    height: 54px;

    border-radius: 50%;

    background-repeat: no-repeat;

    background-position: center;

    background-size: 26px 26px;

    box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.9), 0 12px 24px -10px rgba(97, 82, 173, 0.45);

    pointer-events: none;

    animation: noIdeaIcon 6s ease-in-out infinite;

}

/* map pin - left of the photo, peach */

.page-id-8886 .elementor-element-7ca53e3 .elementor-element-56f5a28c::before {

    left: -7%;

    top: 20%;

    background-color: #FFF0E5;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E8993D' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-6-5.3-6-10a6 6 0 0 1 12 0c0 4.7-6 10-6 10z'/%3E%3Ccircle cx='12' cy='11' r='2.2'/%3E%3C/svg%3E");

}

/* light bulb - lower right of the photo, lavender */

.page-id-8886 .elementor-element-7ca53e3 .elementor-element-56f5a28c::after {

    right: -2%;

    bottom: 22%;

    background-color: #F0ECFF;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238F7CE6' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-4 10.5c.7.7 1 1.5 1 2.5h6c0-1 .3-1.8 1-2.5A6 6 0 0 0 12 3z'/%3E%3C/svg%3E");

    animation-delay: -3s;

}

@keyframes noIdeaIcon {

    0%, 100% { transform: translateY(0) rotate(0deg); }

    50%      { transform: translateY(-9px) rotate(-4deg); }

}



/* copy: first paragraph calmer, second stronger with a solid purple left line */

.page-id-8886 .elementor-element-31b893ba > p {

    padding: 0;

    margin: 0 0 20px;

    border-radius: 0;

    background: transparent;

    box-shadow: none;

    transform: none;

    transition: none;

}

.page-id-8886 .elementor-element-31b893ba > p::before {

    content: none;

    display: none;

}

.page-id-8886 .elementor-element-31b893ba > p:first-of-type {

    background: transparent;

    color: #3a3752;

}

.page-id-8886 .elementor-element-31b893ba > p:last-of-type,

.page-id-8886 .elementor-element-31b893ba > p:last-of-type:hover {

    position: relative;

    padding-left: 22px;

    margin-bottom: 0;

    background: transparent;

    color: #1d1b2e;

    font-weight: 500;

    box-shadow: none;

    transform: none;

}

.page-id-8886 .elementor-element-31b893ba > p:last-of-type::before {

    content: '';

    display: block;

    position: absolute;

    left: 0;

    top: 4px;

    bottom: 4px;

    width: 4px;

    height: auto;

    border-radius: 0 4px 4px 0;

    background: #6152AD;

}

.page-id-8886 .elementor-element-4f68b969 .colorTxt {

    background: none;

    -webkit-text-fill-color: currentColor;

}





/* =========================================================================

   ADJUSTMENTS (Innovation in Norway)

   1) "The Invitation": the photo frame is back as before (white rounded frame, glow, 3D tilt); the two icon badges stay.

   2) Banner: the compass above the eyebrow is removed.

   3) "In Conversation": no background icons, plain white background, the slider arrows sit in the middle (left / right of the slides).

   4) Last section: background = Rectangle-182.jpg (copied in this site's uploads); its background icons are removed.

   ========================================================================= */



/* 1) photo frame like before - the frame is on the image itself so the badges (on the widget) are not clipped */

.page-id-8886 .elementor-element-7ca53e3 .elementor-element-56f5a28c {

    transform: perspective(1000px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));

    transition: transform 0.3s ease-out;

}

.page-id-8886 .elementor-element-7ca53e3:hover .elementor-element-56f5a28c {

    transform: perspective(1000px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));

}

.page-id-8886 .elementor-element-7ca53e3 .elementor-element-56f5a28c img {

    border: 6px solid #ffffff;

    border-radius: 26px;

    filter: none;

    box-shadow: 0 30px 50px -28px rgba(45, 36, 99, 0.6), 0 0 0 1px rgba(97, 82, 173, 0.14), 0 0 40px -6px rgba(152, 128, 244, 0.45);

    transition: box-shadow 0.4s ease;

}

.page-id-8886 .elementor-element-7ca53e3:hover .elementor-element-56f5a28c img {

    box-shadow: 0 40px 60px -28px rgba(97, 82, 173, 0.75), 0 0 0 2px rgba(152, 128, 244, 0.5), 0 0 50px -4px rgba(152, 128, 244, 0.6);

}



/* 2) no compass */

.page-id-8886 .elementor-element-35e65471::before {

    content: none;

    display: none;

}



/* 3) In Conversation: no icons, white background, arrows in the middle */

.page-id-8886 .no-bgicons-l {

    display: none;

}

.page-id-8886 .elementor-element.elementor-element-1c2cf520:not(.elementor-motion-effects-element-type-background) {

    background: #ffffff !important;

}

.page-id-8886 .elementor-element-343b8509 .oslo-slider {

    position: relative;

}

.page-id-8886 .elementor-element-343b8509 .slick-arrow {

    position: absolute;

    top: 150px;

    bottom: auto;

    margin: -23px 0 0 0;

    z-index: 10;

}

.page-id-8886 .elementor-element-343b8509 .slick-prev {

    left: -14px;

    right: auto;

}

.page-id-8886 .elementor-element-343b8509 .slick-next {

    right: -14px;

    left: auto;

}



/* 4) last section: Rectangle-182.jpg background, no icons */

.page-id-8886 .no-bgicons-c {

    display: none;

}

.page-id-8886 .elementor-element.elementor-element-4d8dfa6f:not(.elementor-motion-effects-element-type-background) {

    background: #F7F2FF url("../../../uploads/2026/05/Rectangle-182.jpg") center / cover no-repeat !important;

}



/* tablet / phone: centre the Invitation photo and let it use the column width (it was shrink-wrapped to the left) */





/* tablet / phone: the last section's clips are stacked or in a row at full width - no lift / scale, so the lit one never pokes past the screen edge */





/* In Conversation (2nd last section): the slider arrows sit centred BELOW the video cards (replaces the side-arrows rule above) */

.page-id-8886 .elementor-element-343b8509 {

    padding-bottom: 64px;

}

.page-id-8886 .elementor-element-343b8509 .slick-arrow {

    position: absolute;

    top: auto;

    bottom: -64px;

    margin: 0;

}

.page-id-8886 .elementor-element-343b8509 .slick-prev {

    left: calc(50% - 56px);

    right: auto;

}

.page-id-8886 .elementor-element-343b8509 .slick-next {

    left: calc(50% + 10px);

    right: auto;

}





/* =========================================================================

   BIOTECHTV PAGE (page-id-4910) - BANNER

   Hero #40ff1f4 (photo = background image, right), content col #bcb6ab6: eyebrow #eafe7ae, heading #352d636 (h1.banner-inner-heading),

   paragraph .banner-subheading, buttons row #8ab3a66 = #ccbc460 (purple "Watch The Latest Episode") + #a0a4513 (black "Follow Chloe On

   Instagram").

   A "science on air" treatment: a blinking "ON AIR" chip above the eyebrow, a slowly travelling DNA double-helix strip down the left edge

   (echoing the model in the photo), a soft lavender / peach glow that follows the cursor behind the copy, the accent words in the heading shimmering,

   a glowing primary button and an Instagram button that turns purple-to-pink on hover. Theme colours only. One fold on desktop.

   ========================================================================= */

.page-id-4910 .elementor-element-40ff1f4 {

    position: relative;

    overflow: hidden;

}

/* glow that follows the pointer (--mx / --my / --px / --py are set in customjs/custom-changes.js) */

.page-id-4910 .elementor-element-40ff1f4::after {

    content: '';

    position: absolute;

    top: 0;

    bottom: 0;

    left: 0;

    width: 68%;

    z-index: 1;

    pointer-events: none;

    background:

        radial-gradient(circle 260px at var(--mx, 30%) var(--my, 50%), rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0) 70%),

        radial-gradient(ellipse 50% 55% at 14% 18%, rgba(185, 168, 255, 0.50) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 50% 45% at 30% 100%, rgba(255, 214, 180, 0.55) 0%, rgba(255, 214, 180, 0) 70%),

        radial-gradient(ellipse 36% 50% at 66% 40%, rgba(188, 24, 136, 0.10) 0%, rgba(188, 24, 136, 0) 70%);

    -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 60%, transparent 100%);

    mask-image: linear-gradient(90deg, #000 0%, #000 60%, transparent 100%);

    transform: translate3d(calc(var(--px, 0) * -16px), calc(var(--py, 0) * -10px), 0);

}

/* DNA double-helix strip: two strands crossing with rungs, scrolling slowly downwards */

.page-id-4910 .elementor-element-40ff1f4::before {

    content: '';

    position: absolute;

    left: 3.2%;

    top: 14%;

    bottom: 14%;

    right: auto;

    width: 46px;

    height: auto;

    z-index: 1;

    opacity: 0.55;

    pointer-events: none;

    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='92' viewBox='0 0 46 92'%3E%3Cg fill='none' stroke-linecap='round'%3E%3Cpath d='M6 0C6 23 40 23 40 46S6 69 6 92' stroke='%236152AD' stroke-width='2.2'/%3E%3Cpath d='M40 0C40 23 6 23 6 46S40 69 40 92' stroke='%239880F4' stroke-width='2.2'/%3E%3Cpath d='M12 11.5h22M9 23h28M12 34.5h22M12 57.5h22M9 69h28M12 80.5h22' stroke='%23B9A8FF' stroke-width='1.6'/%3E%3C/g%3E%3C/svg%3E") center top / 46px 92px repeat-y;

    -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 78%, transparent 100%);

    mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 78%, transparent 100%);

    transform: translate3d(calc(var(--px, 0) * 8px), 0, 0);

    animation: btHelix 7s linear infinite;

}

@keyframes btHelix {

    from { background-position: center 0; }

    to   { background-position: center 92px; }

}

.page-id-4910 .elementor-element-40ff1f4 > .e-con-inner {

    position: relative;

    z-index: 2;

}



/* staggered entrance */

.page-id-4910 .elementor-element-bcb6ab6::before,

.page-id-4910 .elementor-element-eafe7ae,

.page-id-4910 .elementor-element-352d636,

.page-id-4910 .elementor-element-bcb6ab6 > p,

.page-id-4910 .elementor-element-8ab3a66 {

    opacity: 0;

    animation: jcHeroFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-4910 .elementor-element-bcb6ab6::before { animation-delay: 0.1s; }

.page-id-4910 .elementor-element-eafe7ae { animation-delay: 0.25s; }

.page-id-4910 .elementor-element-352d636 { animation-delay: 0.4s; }

.page-id-4910 .elementor-element-bcb6ab6 > p { animation-delay: 0.55s; }

.page-id-4910 .elementor-element-8ab3a66 { animation-delay: 0.7s; }



/* "ON AIR" chip with a blinking dot (the column's ::before, reset from Elementor's overlay box) */

.page-id-4910 .elementor-element-bcb6ab6::before {

    content: 'ON AIR';

    position: relative;

    inset: auto;

    display: inline-flex;

    align-self: flex-start;

    align-items: center;

    width: auto;

    height: auto;

    margin: 0 0 14px 10px;

    padding: 6px 14px 6px 30px;

    border-radius: 999px;

    border: 1px solid rgba(188, 24, 136, 0.35);

    background:

        radial-gradient(circle, #bc1888 0 5px, rgba(188, 24, 136, 0) 6px) 12px center / 14px 14px no-repeat,

        rgba(255, 255, 255, 0.75);

    box-shadow: 0 12px 22px -14px rgba(188, 24, 136, 0.5);

    color: #bc1888;

    font-size: 1.2rem;

    font-weight: 800;

    letter-spacing: 0.18em;

    line-height: 1.4;

    opacity: 1;

    z-index: 3;

    pointer-events: none;

    animation: btOnAir 1.4s ease-in-out infinite;

}

@keyframes btOnAir {

    0%, 100% { background-size: 14px 14px, auto; box-shadow: 0 12px 22px -14px rgba(188, 24, 136, 0.5); }

    50%      { background-size: 7px 7px, auto;  box-shadow: 0 12px 26px -10px rgba(188, 24, 136, 0.8); }

}



/* heading accent: shimmer on hover */

.page-id-4910 .elementor-element-352d636 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-4910 .elementor-element-352d636:hover .colorTxt {

    background-position: 100% 0%;

}

.page-id-4910 .elementor-element-bcb6ab6 > p {

    transition: color 0.3s ease;

}

.page-id-4910 .elementor-element-bcb6ab6:hover > p {

    color: #2b2745;

}



/* primary button: glowing lift + light sweep */

.page-id-4910 .elementor-element-ccbc460 a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-4910 .elementor-element-ccbc460 a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-4910 .elementor-element-ccbc460 a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-4910 .elementor-element-ccbc460 a:hover::before {

    left: 130%;

}

.page-id-4910 .elementor-element-ccbc460 .elementor-button-icon {

    animation: btNudge 1.8s ease-in-out infinite;

}

@keyframes btNudge {

    0%, 100% { transform: translateX(0); }

    50%      { transform: translateX(5px); }

}

/* Instagram button: turns purple -> pink on hover, the icon wiggles */

.page-id-4910 .elementor-element-a0a4513 a {

    position: relative;

    overflow: hidden;

    background-image: linear-gradient(100deg, #000000 0%, #000000 45%, #6152AD 75%, #bc1888 100%);

    background-size: 260% 100%;

    background-position: 0% 0;

    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease, background-position 0.7s ease;

}

.page-id-4910 .elementor-element-a0a4513 a:hover {

    background-position: 100% 0;

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(188, 24, 136, 0.4);

}

.page-id-4910 .elementor-element-a0a4513 a:hover .elementor-button-icon {

    animation: btWiggle 0.7s ease-in-out;

}

@keyframes btWiggle {

    0%, 100% { transform: rotate(0deg); }

    25% { transform: rotate(-14deg) scale(1.15); }

    75% { transform: rotate(14deg) scale(1.15); }

}



/* one fold on desktop */





@media (prefers-reduced-motion: reduce) and (min-width: 99999px) {

    .page-id-4910 .elementor-element-40ff1f4::before,

    .page-id-4910 .elementor-element-bcb6ab6::before,

    .page-id-4910 .elementor-element-ccbc460 .elementor-button-icon {

        animation: none;

    }

    .page-id-4910 .elementor-element-eafe7ae,

    .page-id-4910 .elementor-element-352d636,

    .page-id-4910 .elementor-element-bcb6ab6 > p,

    .page-id-4910 .elementor-element-8ab3a66 {

        opacity: 1;

        animation: none;

    }

}



/* BIOTECHTV - 2nd section ("The Show", #99372aa): the description text gets a left border */

.page-id-4910 .elementor-element-7ca5389 > p {

    position: relative;

    padding-left: 22px;

}

.page-id-4910 .elementor-element-7ca5389 > p::before {

    content: '';

    position: absolute;

    left: 0;

    top: 4px;

    bottom: 4px;

    width: 4px;

    border-radius: 4px;

    background: linear-gradient(180deg, #6152AD, #B9A8FF);

    transition: width 0.3s ease, top 0.3s ease, bottom 0.3s ease;

}

.page-id-4910 .elementor-element-7ca5389 > p:hover::before {

    width: 7px;

    top: 0;

    bottom: 0;

}



/* BiotechTV banner: the "ON AIR" chip is removed */

.page-id-4910 .elementor-element-bcb6ab6::before {

    content: none;

    display: none;

    animation: none;

}





/* =========================================================================

   BIOTECHTV - "HIT PLAY" (section #b1b464e, dark: left #801bdfb = eyebrow #dea089e, heading #ad54e4f "Watch the Latest Episodes", sub-line

   #4bb4b2e, button #c4fef76 "Watch On Instagram"; right #11e8ce7 > Swiper .ck-biotechtv-swiper of .ck-reel-card = .ck-reel-thumbnail (still + play

   button) + .ck-reel-content (title + text)).

   A glowing black stage with outline "science TV" icons at random places (TV, mic, flask, DNA, camera, play, atom ...) that float and drift

   with the pointer. The episode cards become dark glass cards with a lavender gradient hairline, a fixed-height still, a pulsing play button and

   a sheen on hover (the card lifts + glows, the still zooms, the title turns lavender). Text on dark, gradient accent words, glowing button.

   Theme colours only. One fold.

   ========================================================================= */

.page-id-4910 .elementor-element.elementor-element-b1b464e:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 55% 55% at 50% 118%, rgba(152, 128, 244, 0.42) 0%, rgba(152, 128, 244, 0) 70%),

        radial-gradient(ellipse 34% 60% at 4% 18%, rgba(97, 82, 173, 0.36) 0%, rgba(97, 82, 173, 0) 70%),

        radial-gradient(ellipse 34% 60% at 98% 12%, rgba(188, 24, 136, 0.24) 0%, rgba(188, 24, 136, 0) 70%),

        #05070C !important;

}

.page-id-4910 .elementor-element-b1b464e > .e-con-inner {

    position: relative;

    z-index: 1;

}

/* text on dark */

.page-id-4910 .elementor-element-dea089e .elementor-heading-title {

    color: #C9BEFF !important;

}

.page-id-4910 .elementor-element-ad54e4f .section-heading {

    color: #ffffff !important;

}

.page-id-4910 .elementor-element-ad54e4f .colorTxt {

    background: linear-gradient(100deg, #B9A8FF 0%, #F29BD0 100%);

    background-size: 200% 100%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    color: transparent !important;

    transition: background-position 0.9s ease;

}

.page-id-4910 .elementor-element-ad54e4f:hover .colorTxt {

    background-position: 100% 0;

}

.page-id-4910 .elementor-element-4bb4b2e .elementor-heading-title {

    color: rgba(255, 255, 255, 0.8) !important;

}

/* button: glowing lift + light sweep */

.page-id-4910 .elementor-element-c4fef76 a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.45);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-4910 .elementor-element-c4fef76 a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(152, 128, 244, 0.6);

}

.page-id-4910 .elementor-element-c4fef76 a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-4910 .elementor-element-c4fef76 a:hover::before {

    left: 130%;

}

.page-id-4910 .elementor-element-c4fef76 a:hover .elementor-button-icon {

    animation: btWiggle 0.7s ease-in-out;

}



/* ---------- episode cards ---------- */

.page-id-4910 .elementor-element-b1b464e .ck-biotechtv-swiper {

    padding-top: 22px;

    padding-bottom: 46px;

}

.page-id-4910 .elementor-element-b1b464e .ck-biotechtv-swiper .swiper-slide {

    height: auto;

}

.page-id-4910 .elementor-element-b1b464e .ck-reel-card {

    position: relative;

    display: flex;

    flex-direction: column;

    height: 100%;

    overflow: hidden;

    border: 1px solid transparent;

    border-radius: 22px;

    background:

        linear-gradient(160deg, #161c3f 0%, #0c1030 100%) padding-box,

        linear-gradient(140deg, rgba(185, 168, 255, 0.85) 0%, rgba(255, 255, 255, 0.08) 55%, rgba(152, 128, 244, 0.7) 100%) border-box;

    box-shadow: 0 24px 38px -26px rgba(0, 0, 0, 0.9);

    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease;

}

.page-id-4910 .elementor-element-b1b464e .ck-reel-card:hover {

    transform: translateY(-10px);

    box-shadow: 0 32px 46px -24px rgba(152, 128, 244, 0.7), 0 0 34px -4px rgba(152, 128, 244, 0.5);

}

.page-id-4910 .elementor-element-b1b464e .ck-reel-thumbnail {

    height: 190px;

    background: #1b2352;

}

.page-id-4910 .elementor-element-b1b464e .ck-reel-thumbnail img {

    height: 100%;

    object-position: center top;

    transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-4910 .elementor-element-b1b464e .ck-reel-card:hover .ck-reel-thumbnail img {

    transform: scale(1.08);

}

/* play button: pulsing ring, pops on hover */

.page-id-4910 .elementor-element-b1b464e .ck-play-btn {

    background: #6152AD;

    animation: msPlayRing 2s ease-out infinite;

}

.page-id-4910 .elementor-element-b1b464e .ck-reel-card:hover .ck-play-btn {

    transform: translate(-50%, -50%) scale(1.18);

    background: #7a68d4;

}

/* sheen on hover */

.page-id-4910 .elementor-element-b1b464e .ck-reel-thumbnail::before {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 4;

    pointer-events: none;

    background: linear-gradient(115deg, transparent 38%, rgba(255, 255, 255, 0.35) 50%, transparent 62%);

    transform: translateX(-130%);

}

.page-id-4910 .elementor-element-b1b464e .ck-reel-card:hover .ck-reel-thumbnail::before {

    transform: translateX(130%);

    transition: transform 0.9s ease;

}

.page-id-4910 .elementor-element-b1b464e .ck-reel-content {

    flex: 1 1 auto;

}

.page-id-4910 .elementor-element-b1b464e .ck-reel-content h3 {

    color: #ffffff;

    transition: color 0.3s ease;

}

.page-id-4910 .elementor-element-b1b464e .ck-reel-card:hover .ck-reel-content h3 {

    color: #C9BEFF;

}

.page-id-4910 .elementor-element-b1b464e .ck-reel-content p {

    color: rgba(255, 255, 255, 0.7);

}

.page-id-4910 .elementor-element-b1b464e .ck-biotechtv-swiper .swiper-pagination-bullet {

    background: #5b4f9e !important;

    opacity: 1;

}

.page-id-4910 .elementor-element-b1b464e .ck-biotechtv-swiper .swiper-pagination-bullet-active {

    background: linear-gradient(90deg, #B9A8FF, #F29BD0) !important;

    width: 24px;

    border-radius: 20px;

}



/* ---------- background icons (built in JS), shared by the two sections ---------- */

.page-id-4910 .bt-bgicons {

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    overflow: hidden;

}

.page-id-4910 .bt-bgi {

    position: absolute;

    display: block;

    transform: translate3d(calc(var(--bx, 0) * var(--d, 10) * 1px), calc(var(--by, 0) * var(--d, 10) * 1px), 0) rotate(var(--r, 0deg));

    transition: transform 0.5s ease-out;

}

.page-id-4910 .bt-bgi svg {

    display: block;

    width: 100%;

    height: auto;

    fill: none;

    stroke: #6152AD;

    stroke-opacity: 0.2;

    stroke-width: 1.4;

    stroke-linecap: round;

    stroke-linejoin: round;

    animation: noBgiFloat 6s ease-in-out infinite;

    animation-delay: var(--t, 0s);

}

.page-id-4910 .bt-bgicons.bt-dark .bt-bgi svg {

    stroke: #B9A8FF;

    stroke-opacity: 0.3;

    filter: drop-shadow(0 0 6px rgba(152, 128, 244, 0.55));

}



/* reveal */

.page-id-4910 .elementor-element-801bdfb.ms-in {

    animation: msFadeUp2 0.9s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-4910 .elementor-element-11e8ce7.ms-in {

    animation: msSlideLeft 1s cubic-bezier(0.22, 1, 0.36, 1) 0.15s backwards;

}





/* =========================================================================

   BIOTECHTV - "THE PLATFORM" (section #4ab7beb: left #e223f57 = eyebrow #8576e47, heading #7b1e1a1 ("About" + BiotechTV logo image), button #0550e2b

   "Visit BiotechTV"; middle #8700a78 > screenshot image; right #edf30bf = paragraph + five social icons #281d857).

   Lavender / peach wash with faint outline TV / science icons at random places. The platform screenshot becomes a little "screen": a white

   frame with a window bar (three dots) and a glow that floats gently; the paragraph has a left border; the social icons lift, tilt and glow on hover

   and pop in one after another. Button: glowing lift + light sweep. One fold.

   ========================================================================= */

.page-id-4910 .elementor-element.elementor-element-4ab7beb:not(.elementor-motion-effects-element-type-background) {

    position: relative;

    overflow: hidden;

    background:

        radial-gradient(ellipse 40% 70% at 4% 30%, rgba(185, 168, 255, 0.40) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 40% 70% at 98% 80%, rgba(255, 214, 180, 0.52) 0%, rgba(255, 214, 180, 0) 70%),

        linear-gradient(180deg, #FFFFFF 0%, #F6F1FF 100%) !important;

}

.page-id-4910 .elementor-element-4ab7beb > .e-con-inner {

    position: relative;

    z-index: 1;

}

/* the screenshot as a screen */

.page-id-4910 .elementor-element-4bf6177 {

    position: relative;

    overflow: hidden;

    border: 6px solid #ffffff;

    border-radius: 22px;

    box-shadow: 0 30px 46px -26px rgba(45, 36, 99, 0.6), 0 0 0 1px rgba(97, 82, 173, 0.14), 0 0 40px -6px rgba(152, 128, 244, 0.45);

    animation: btFloat 6s ease-in-out infinite;

    transition: box-shadow 0.4s ease;

}

.page-id-4910 .elementor-element-4bf6177:hover {

    box-shadow: 0 40px 56px -26px rgba(97, 82, 173, 0.75), 0 0 0 2px rgba(152, 128, 244, 0.5), 0 0 50px -4px rgba(152, 128, 244, 0.6);

}

@keyframes btFloat {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-9px); }

}

.page-id-4910 .elementor-element-4bf6177 img {

    display: block;

    width: 100%;

    transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-4910 .elementor-element-4bf6177:hover img {

    transform: scale(1.06);

}

/* window bar with three dots */

.page-id-4910 .elementor-element-4bf6177::before {

    content: '';

    position: absolute;

    left: 0;

    right: 0;

    top: 0;

    height: 24px;

    z-index: 2;

    background:

        radial-gradient(circle, #bc1888 0 3.5px, transparent 4px) 12px center / 8px 8px no-repeat,

        radial-gradient(circle, #FFB88C 0 3.5px, transparent 4px) 26px center / 8px 8px no-repeat,

        radial-gradient(circle, #9880F4 0 3.5px, transparent 4px) 40px center / 8px 8px no-repeat,

        rgba(255, 255, 255, 0.88);

    pointer-events: none;

}

/* paragraph: left border */

.page-id-4910 .elementor-element-edf30bf > p {

    position: relative;

    padding-left: 22px;

    color: #1d1b2e;

}

.page-id-4910 .elementor-element-edf30bf > p::before {

    content: '';

    position: absolute;

    left: 0;

    top: 4px;

    bottom: 4px;

    width: 4px;

    border-radius: 4px;

    background: linear-gradient(180deg, #6152AD, #B9A8FF);

    transition: width 0.3s ease, top 0.3s ease, bottom 0.3s ease;

}

.page-id-4910 .elementor-element-edf30bf > p:hover::before {

    width: 7px;

    top: 0;

    bottom: 0;

}

/* social icons */

.page-id-4910 .elementor-element-281d857 a {

    display: block;

    border-radius: 12px;

    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-4910 .elementor-element-281d857 a:hover {

    transform: translateY(-7px) rotate(-8deg) scale(1.15);

    box-shadow: 0 16px 24px -10px rgba(97, 82, 173, 0.65), 0 0 22px -4px rgba(152, 128, 244, 0.6);

}

/* button */

.page-id-4910 .elementor-element-0550e2b a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-4910 .elementor-element-0550e2b a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-4910 .elementor-element-0550e2b a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-4910 .elementor-element-0550e2b a:hover::before {

    left: 130%;

}

.page-id-4910 .elementor-element-0550e2b .elementor-button-icon {

    animation: btNudge 1.8s ease-in-out infinite;

}

.page-id-4910 .elementor-element-62ca88d .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}



/* reveal */

.page-id-4910 .elementor-element-e223f57.ms-in {

    animation: msSlideRight 0.9s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-4910 .elementor-element-8700a78.ms-in {

    animation: msFadeUp2 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.15s backwards;

}

.page-id-4910 .elementor-element-edf30bf.ms-in {

    animation: msSlideLeft 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.25s backwards;

}

.page-id-4910 .elementor-element-edf30bf.ms-in .elementor-element-281d857 > * {

    animation: noReelIn 0.7s cubic-bezier(0.34, 1.56, 0.64, 1) backwards;

}

.page-id-4910 .elementor-element-edf30bf.ms-in .elementor-element-281d857 > *:nth-child(1) { animation-delay: 0.6s; }

.page-id-4910 .elementor-element-edf30bf.ms-in .elementor-element-281d857 > *:nth-child(2) { animation-delay: 0.7s; }

.page-id-4910 .elementor-element-edf30bf.ms-in .elementor-element-281d857 > *:nth-child(3) { animation-delay: 0.8s; }

.page-id-4910 .elementor-element-edf30bf.ms-in .elementor-element-281d857 > *:nth-child(4) { animation-delay: 0.9s; }

.page-id-4910 .elementor-element-edf30bf.ms-in .elementor-element-281d857 > *:nth-child(5) { animation-delay: 1s; }





/* BiotechTV - "The Platform" (last section): no background icons, plain white background */

.page-id-4910 .elementor-element-4ab7beb .bt-bgicons {

    display: none;

}

.page-id-4910 .elementor-element.elementor-element-4ab7beb:not(.elementor-motion-effects-element-type-background) {

    background: #ffffff !important;

}





/* =========================================================================

   ACADEMICS - "LET ME SHARE YOUR SCIENCE" PAGE (page-id-3537) - BANNER

   Hero #e6c642e (photo = background image, right), content col #de0c536: eyebrow #6e0664c, heading #9168a46 (h1.banner-inner-heading), paragraph

   .banner-subheading, CTA #d7cea4a "Let's Get Started".

   Same treatment as the BiotechTV banner: a slowly travelling DNA double-helix strip down the left edge, a soft lavender / peach glow behind the

   copy that follows the cursor (and drifts against it), a shimmering heading accent, staggered entrance - plus a SHINY CTA: a light streak glides

   across the button all the time (faster on hover), with a glowing lift and a nudging arrow. Theme colours only. One fold on desktop.

   ========================================================================= */

.page-id-3537 .elementor-element-e6c642e {

    position: relative;

    overflow: hidden;

}

.page-id-3537 .elementor-element-e6c642e::after {

    content: '';

    position: absolute;

    top: 0;

    bottom: 0;

    left: 0;

    width: 68%;

    z-index: 1;

    pointer-events: none;

    background:

        radial-gradient(circle 260px at var(--mx, 30%) var(--my, 50%), rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0) 70%),

        radial-gradient(ellipse 50% 55% at 14% 18%, rgba(185, 168, 255, 0.50) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 50% 45% at 30% 100%, rgba(255, 214, 180, 0.55) 0%, rgba(255, 214, 180, 0) 70%),

        radial-gradient(ellipse 36% 50% at 66% 40%, rgba(188, 24, 136, 0.10) 0%, rgba(188, 24, 136, 0) 70%);

    -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 60%, transparent 100%);

    mask-image: linear-gradient(90deg, #000 0%, #000 60%, transparent 100%);

    transform: translate3d(calc(var(--px, 0) * -16px), calc(var(--py, 0) * -10px), 0);

}

.page-id-3537 .elementor-element-e6c642e::before {

    content: '';

    position: absolute;

    left: 3.2%;

    top: 14%;

    bottom: 14%;

    right: auto;

    width: 46px;

    height: auto;

    z-index: 1;

    opacity: 0.55;

    pointer-events: none;

    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='92' viewBox='0 0 46 92'%3E%3Cg fill='none' stroke-linecap='round'%3E%3Cpath d='M6 0C6 23 40 23 40 46S6 69 6 92' stroke='%236152AD' stroke-width='2.2'/%3E%3Cpath d='M40 0C40 23 6 23 6 46S40 69 40 92' stroke='%239880F4' stroke-width='2.2'/%3E%3Cpath d='M12 11.5h22M9 23h28M12 34.5h22M12 57.5h22M9 69h28M12 80.5h22' stroke='%23B9A8FF' stroke-width='1.6'/%3E%3C/g%3E%3C/svg%3E") center top / 46px 92px repeat-y;

    -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 78%, transparent 100%);

    mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 78%, transparent 100%);

    transform: translate3d(calc(var(--px, 0) * 8px), 0, 0);

    animation: btHelix 7s linear infinite;

}

.page-id-3537 .elementor-element-e6c642e > .e-con-inner {

    position: relative;

    z-index: 2;

}



/* staggered entrance */

.page-id-3537 .elementor-element-6e0664c,

.page-id-3537 .elementor-element-9168a46,

.page-id-3537 .elementor-element-de0c536 > p,

.page-id-3537 .elementor-element-d7cea4a {

    opacity: 0;

    animation: jcHeroFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-3537 .elementor-element-6e0664c { animation-delay: 0.15s; }

.page-id-3537 .elementor-element-9168a46 { animation-delay: 0.3s; }

.page-id-3537 .elementor-element-de0c536 > p { animation-delay: 0.45s; }

.page-id-3537 .elementor-element-d7cea4a { animation-delay: 0.6s; }



.page-id-3537 .elementor-element-9168a46 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-3537 .elementor-element-9168a46:hover .colorTxt {

    background-position: 100% 0%;

}



/* shiny CTA: a light streak glides across all the time, faster + brighter on hover; glowing lift; nudging arrow */

.page-id-3537 .elementor-element-d7cea4a a {

    position: relative;

    overflow: hidden;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-3537 .elementor-element-d7cea4a a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -70%;

    width: 45%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.55), transparent);

    transform: skewX(-20deg);

    animation: acShine 3.2s ease-in-out infinite;

}

.page-id-3537 .elementor-element-d7cea4a a:hover::before {

    animation-duration: 1.1s;

}

@keyframes acShine {

    0%        { left: -70%; }

    55%, 100% { left: 140%; }

}

.page-id-3537 .elementor-element-d7cea4a a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.5), 0 0 22px rgba(152, 128, 244, 0.45);

}

.page-id-3537 .elementor-element-d7cea4a .elementor-button-icon {

    animation: btBob2 1.8s ease-in-out infinite;

}

@keyframes btBob2 {

    0%, 100% { transform: translateY(-2px); }

    50%      { transform: translateY(3px); }

}





@media (prefers-reduced-motion: reduce) and (min-width: 99999px) {

    .page-id-3537 .elementor-element-e6c642e::before,

    .page-id-3537 .elementor-element-d7cea4a a::before,

    .page-id-3537 .elementor-element-d7cea4a .elementor-button-icon {

        animation: none;

    }

    .page-id-3537 .elementor-element-6e0664c,

    .page-id-3537 .elementor-element-9168a46,

    .page-id-3537 .elementor-element-de0c536 > p,

    .page-id-3537 .elementor-element-d7cea4a {

        opacity: 1;

        animation: none;

    }

}



/* =========================================================================

   ACADEMICS - "THE PROBLEM" (section #ac90b15; left #a418c4b = eyebrow #f804b35, heading #4d2a772, sub-line #f654350; photo #a601f34;

   right #3655fa9 = four rows #8836ca3 / #ec25c05 / #7a3405b / #0a42d3b, each an image-box: icon + one sentence).

   No background colour and no background icons: the section stays plain. What changes: the four problems become numbered cards (hairline

   purple border, a gradient accent bar on the left, soft shadow) that lift, slide and light up on hover, the photo gets a soft shadow and

   floats gently, the sub-line has a left border, the heading accent shimmers, and everything slides in on scroll (the cards one by one).

   ========================================================================= */

.page-id-3537 .elementor-element-4d2a772 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

}

.page-id-3537 .elementor-element-4d2a772:hover .colorTxt {

    background-position: 100% 0%;

}

.page-id-3537 .elementor-element-f654350 .elementor-heading-title {

    position: relative;

    padding-left: 20px;

}

.page-id-3537 .elementor-element-f654350 .elementor-heading-title::before {

    content: '';

    position: absolute;

    left: 0;

    top: 4px;

    bottom: 4px;

    width: 4px;

    border-radius: 4px;

    background: linear-gradient(180deg, #6152AD, #B9A8FF);

}

/* photo: soft shadow that follows the cut-out, gentle float */

.page-id-3537 .elementor-element-6863c61 img {

    filter: drop-shadow(0 22px 26px rgba(45, 36, 99, 0.25));

    animation: acFloat 7s ease-in-out infinite;

}

@keyframes acFloat {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-10px); }

}



/* numbered problem cards */

.page-id-3537 .elementor-element-3655fa9 {

    counter-reset: acp;

    gap: 14px;

}

.page-id-3537 .elementor-element-8836ca3,

.page-id-3537 .elementor-element-ec25c05,

.page-id-3537 .elementor-element-7a3405b,

.page-id-3537 .elementor-element-0a42d3b {

    counter-increment: acp;

    position: relative;

    box-sizing: border-box;

    overflow: hidden;

    border: 1px solid rgba(97, 82, 173, 0.16);

    border-radius: 20px;

    background: #ffffff;

    box-shadow: 0 14px 24px -18px rgba(45, 36, 99, 0.5);

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease, border-color 0.4s ease;

}

/* left accent bar (::after - ::before is Elementor's overlay on containers) */

.page-id-3537 .elementor-element-8836ca3::after,

.page-id-3537 .elementor-element-ec25c05::after,

.page-id-3537 .elementor-element-7a3405b::after,

.page-id-3537 .elementor-element-0a42d3b::after {

    content: '';

    position: absolute;

    left: 0;

    top: 0;

    bottom: 0;

    width: 5px;

    background: linear-gradient(180deg, #6152AD 0%, #B9A8FF 100%);

    transition: width 0.35s ease;

    pointer-events: none;

}

.page-id-3537 .elementor-element-8836ca3:hover,

.page-id-3537 .elementor-element-ec25c05:hover,

.page-id-3537 .elementor-element-7a3405b:hover,

.page-id-3537 .elementor-element-0a42d3b:hover {

    transform: translateX(-8px);

    border-color: rgba(97, 82, 173, 0.5);

    box-shadow: 0 22px 34px -18px rgba(97, 82, 173, 0.6), 0 0 26px -8px rgba(152, 128, 244, 0.45);

}

.page-id-3537 .elementor-element-8836ca3:hover::after,

.page-id-3537 .elementor-element-ec25c05:hover::after,

.page-id-3537 .elementor-element-7a3405b:hover::after,

.page-id-3537 .elementor-element-0a42d3b:hover::after {

    width: 9px;

}

/* card number */

.page-id-3537 .elementor-element-3655fa9 .elementor-image-box-content::before {

    content: counter(acp, decimal-leading-zero);

    display: block;

    margin-bottom: 2px;

    color: #9880F4;

    font-size: 1.2rem;

    font-weight: 800;

    letter-spacing: 0.16em;

    transition: color 0.3s ease, transform 0.35s ease;

}

.page-id-3537 .elementor-element-8836ca3:hover .elementor-image-box-content::before,

.page-id-3537 .elementor-element-ec25c05:hover .elementor-image-box-content::before,

.page-id-3537 .elementor-element-7a3405b:hover .elementor-image-box-content::before,

.page-id-3537 .elementor-element-0a42d3b:hover .elementor-image-box-content::before {

    color: #6152AD;

    transform: translateX(6px);

}

.page-id-3537 .elementor-element-3655fa9 .elementor-image-box-img img {

    transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3537 .elementor-element-8836ca3:hover .elementor-image-box-img img,

.page-id-3537 .elementor-element-ec25c05:hover .elementor-image-box-img img,

.page-id-3537 .elementor-element-7a3405b:hover .elementor-image-box-img img,

.page-id-3537 .elementor-element-0a42d3b:hover .elementor-image-box-img img {

    transform: scale(1.12) rotate(-6deg);

}



/* reveal */

.page-id-3537 .elementor-element-a418c4b.ms-in {

    animation: msSlideRight 0.9s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-3537 .elementor-element-a601f34.ms-in {

    animation: msFadeUp2 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.15s backwards;

}

.page-id-3537 .elementor-element-3655fa9.ms-in > * {

    animation: msSlideLeft 0.8s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-3537 .elementor-element-3655fa9.ms-in > *:nth-child(1) { animation-delay: 0.2s; }

.page-id-3537 .elementor-element-3655fa9.ms-in > *:nth-child(2) { animation-delay: 0.35s; }

.page-id-3537 .elementor-element-3655fa9.ms-in > *:nth-child(3) { animation-delay: 0.5s; }

.page-id-3537 .elementor-element-3655fa9.ms-in > *:nth-child(4) { animation-delay: 0.65s; }





/* =========================================================================

   ACADEMICS PAGE (page-id-3537) - 3rd section "WHAT CHLOE DOES": STICKY SCROLL-DRIVEN STEPS (desktop, 1025px and up)

   Section #15f254d, row #7100dd2: left #2ea499d (photo column) | right #7ef95b7 = eyebrow, heading, sub-line, then five step cards

   (#bb074ed, #1f6a71f, #8843527, #a0e7773, #0b1dd5d), each = number node (first child) + text + icon.

   - the photo column is sticky (stays under the header while the steps scroll past) with a glass "STEP 02 / 05" chip that follows the active step;

   - the steps are spread out so the page scroll moves through them; the card at the middle of the screen is ACTIVE: it slides out and glows,

     the others dim; cards the line has already passed keep their node lit;

   - one dotted line joins the nodes: grey dots + a lit, glowing dotted fill that grows from top to bottom with the scroll, ending in a glowing

     head dot. (The old per-card dashed connectors are hidden.) Built / driven by customjs/custom-changes.js (--ac-* variables, .ac-* classes).

   ========================================================================= */



.page-id-3537 .elementor-element-bb074ed::before,

.page-id-3537 .elementor-element-1f6a71f::before,

.page-id-3537 .elementor-element-8843527::before,

.page-id-3537 .elementor-element-a0e7773::before,

.page-id-3537 .elementor-element-0b1dd5d::before {

    display: none !important;

}



/* cards */

.page-id-3537 .elementor-element-bb074ed,

.page-id-3537 .elementor-element-1f6a71f,

.page-id-3537 .elementor-element-8843527,

.page-id-3537 .elementor-element-a0e7773,

.page-id-3537 .elementor-element-0b1dd5d {

    position: relative;

    z-index: 1;

    border: 1px solid rgba(97, 82, 173, 0.14) !important;

    border-radius: 20px !important;

    box-shadow: 0 14px 24px -18px rgba(45, 36, 99, 0.5) !important;

    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.5s ease, box-shadow 0.5s ease, border-color 0.5s ease, background 0.5s ease;

}

.page-id-3537 .ac-js .elementor-element-bb074ed,

.page-id-3537 .ac-js .elementor-element-1f6a71f,

.page-id-3537 .ac-js .elementor-element-8843527,

.page-id-3537 .ac-js .elementor-element-a0e7773,

.page-id-3537 .ac-js .elementor-element-0b1dd5d {

    opacity: 0.5;

    transform: scale(0.97);

}

.page-id-3537 .ac-js .ac-active {

    opacity: 1 !important;

    transform: translateX(12px) scale(1.02) !important;

    border-color: rgba(97, 82, 173, 0.55) !important;

    background: linear-gradient(135deg, #FFFFFF 0%, #F1ECFF 100%) !important;

    box-shadow:

        0 0 0 1px rgba(152, 128, 244, 0.5),

        0 0 36px -2px rgba(152, 128, 244, 0.65),

        0 28px 42px -22px rgba(97, 82, 173, 0.65) !important;

}

.page-id-3537 .ac-js .ac-reached:not(.ac-active) {

    opacity: 0.75;

}

/* node (first child of a card) */

.page-id-3537 .ac-card-node {

    transition: box-shadow 0.4s ease, background 0.4s ease, transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);

    border-radius: 50%;

}

.page-id-3537 .ac-reached .ac-card-node {

    box-shadow: 0 0 0 4px rgba(152, 128, 244, 0.28);

    background: #F1ECFF;

}

.page-id-3537 .ac-active .ac-card-node {

    transform: scale(1.12);

    animation: acNodePulse 1.6s ease-out infinite;

}

@keyframes acNodePulse {

    0%   { box-shadow: 0 0 0 4px rgba(152, 128, 244, 0.45); }

    100% { box-shadow: 0 0 0 16px rgba(152, 128, 244, 0); }

}

.page-id-3537 .ac-card-icon img {

    transition: transform 0.55s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3537 .ac-active .ac-card-icon img {

    transform: scale(1.15) rotate(-8deg);

}



/* the dotted line (created by JS): grey dots + a lit, glowing dotted fill + a head dot */

.page-id-3537 .ac-line {

    position: absolute;

    z-index: 0;

    width: 10px;

    margin-left: -5px;

    pointer-events: none;

    background: radial-gradient(circle, rgba(97, 82, 173, 0.32) 0 2px, transparent 2.6px) center top / 10px 14px repeat-y;

}

.page-id-3537 .ac-line-fill {

    position: absolute;

    left: 0;

    top: 0;

    width: 100%;

    height: 0;

    overflow: hidden;

    background: radial-gradient(circle, #6152AD 0 2.5px, transparent 3.1px) center top / 10px 14px repeat-y;

    filter: drop-shadow(0 0 5px rgba(152, 128, 244, 0.95));

    transition: height 0.12s linear;

}

.page-id-3537 .ac-line-head {

    position: absolute;

    left: 50%;

    top: 0;

    width: 16px;

    height: 16px;

    margin: -8px 0 0 -8px;

    box-sizing: border-box;

    border-radius: 50%;

    background: #ffffff;

    border: 3px solid #6152AD;

    box-shadow: 0 0 0 5px rgba(152, 128, 244, 0.25), 0 0 16px rgba(152, 128, 244, 0.9);

    transition: top 0.12s linear;

}



/* sticky photo column + step chip */

.page-id-3537 .ac-step {

    display: none;

}





/* =========================================================================

   ACADEMICS PAGE - 4th section "WHY CHLOE" (dark glow background unchanged): attractive cards + outline icons at random places.

   Section #67f10f0; heading block #971b825; grid #07d167f of four cards #110dfe6 / #6c5eb7f / #b45b3d6 / #68db3d0 (photo on top + icon + title + text).

   Cards: dark glass with a lavender gradient hairline, 22px radius, a "01-04" chip on the photo, a sheen sweeping over the photo and a zooming

   image on hover, the card lifting with a violet glow, the icon popping and the title turning lavender; they rise in one after another.

   Faint outline icons (book, graduation cap, flask, mic, chat, atom ...) float at random-looking places and drift with the pointer.

   ========================================================================= */

.page-id-3537 .elementor-element-67f10f0 {

    position: relative;

    overflow: hidden;

}

.page-id-3537 .elementor-element-67f10f0 > .e-con-inner {

    position: relative;

    z-index: 1;

}

.page-id-3537 .elementor-element-07d167f {

    padding: 14px 0 20px;

}

.page-id-3537 .elementor-element-110dfe6,

.page-id-3537 .elementor-element-6c5eb7f,

.page-id-3537 .elementor-element-b45b3d6,

.page-id-3537 .elementor-element-68db3d0 {

    position: relative;

    overflow: hidden;

    box-sizing: border-box;

    border: 1px solid transparent !important;

    border-radius: 22px !important;

    background:

        linear-gradient(160deg, #161c3f 0%, #0c1030 100%) padding-box,

        linear-gradient(140deg, rgba(185, 168, 255, 0.85) 0%, rgba(255, 255, 255, 0.08) 55%, rgba(152, 128, 244, 0.7) 100%) border-box !important;

    box-shadow: 0 24px 38px -26px rgba(0, 0, 0, 0.9) !important;

    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.45s ease;

}

.page-id-3537 .elementor-element-110dfe6:hover,

.page-id-3537 .elementor-element-6c5eb7f:hover,

.page-id-3537 .elementor-element-b45b3d6:hover,

.page-id-3537 .elementor-element-68db3d0:hover {

    transform: translateY(-10px);

    box-shadow: 0 32px 46px -24px rgba(152, 128, 244, 0.7), 0 0 34px -4px rgba(152, 128, 244, 0.5) !important;

}

/* photo on top: zoom + sheen + number chip */

.page-id-3537 .elementor-element-fca2105,

.page-id-3537 .elementor-element-1e2b141,

.page-id-3537 .elementor-element-6d10f07,

.page-id-3537 .elementor-element-8f08cf0 {

    position: relative;

    overflow: hidden;

}

.page-id-3537 .elementor-element-fca2105 img,

.page-id-3537 .elementor-element-1e2b141 img,

.page-id-3537 .elementor-element-6d10f07 img,

.page-id-3537 .elementor-element-8f08cf0 img {

    transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3537 .elementor-element-110dfe6:hover img,

.page-id-3537 .elementor-element-6c5eb7f:hover img,

.page-id-3537 .elementor-element-b45b3d6:hover img,

.page-id-3537 .elementor-element-68db3d0:hover img {

    transform: scale(1.07);

}

.page-id-3537 .elementor-element-110dfe6::after,

.page-id-3537 .elementor-element-6c5eb7f::after,

.page-id-3537 .elementor-element-b45b3d6::after,

.page-id-3537 .elementor-element-68db3d0::after {

    content: '';

    position: absolute;

    left: 0;

    right: 0;

    top: 0;

    height: 184px;

    z-index: 4;

    pointer-events: none;

    background: linear-gradient(115deg, transparent 38%, rgba(255, 255, 255, 0.3) 50%, transparent 62%);

    transform: translateX(-130%);

}

.page-id-3537 .elementor-element-110dfe6:hover::after,

.page-id-3537 .elementor-element-6c5eb7f:hover::after,

.page-id-3537 .elementor-element-b45b3d6:hover::after,

.page-id-3537 .elementor-element-68db3d0:hover::after {

    transform: translateX(130%);

    transition: transform 0.9s ease;

}

.page-id-3537 .elementor-element-fca2105::before,

.page-id-3537 .elementor-element-1e2b141::before,

.page-id-3537 .elementor-element-6d10f07::before,

.page-id-3537 .elementor-element-8f08cf0::before {

    content: '01';

    position: absolute;

    top: 14px;

    left: 14px;

    z-index: 5;

    padding: 4px 11px;

    border-radius: 999px;

    background: linear-gradient(135deg, #6152AD, #9880F4);

    box-shadow: 0 10px 18px -8px rgba(97, 82, 173, 0.7);

    color: #ffffff;

    font-size: 1.2rem;

    font-weight: 800;

    letter-spacing: 0.14em;

    pointer-events: none;

}

.page-id-3537 .elementor-element-1e2b141::before { content: '02'; }

.page-id-3537 .elementor-element-6d10f07::before { content: '03'; }

.page-id-3537 .elementor-element-8f08cf0::before { content: '04'; }

/* icon + title */

.page-id-3537 .elementor-element-07d167f .elementor-image-box-img img {

    transition: transform 0.55s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3537 .elementor-element-110dfe6:hover .elementor-image-box-img img,

.page-id-3537 .elementor-element-6c5eb7f:hover .elementor-image-box-img img,

.page-id-3537 .elementor-element-b45b3d6:hover .elementor-image-box-img img,

.page-id-3537 .elementor-element-68db3d0:hover .elementor-image-box-img img {

    transform: scale(1.14) rotate(-8deg);

}

.page-id-3537 .elementor-element-07d167f .elementor-image-box-title {

    transition: color 0.3s ease;

}

.page-id-3537 .elementor-element-110dfe6:hover .elementor-image-box-title,

.page-id-3537 .elementor-element-6c5eb7f:hover .elementor-image-box-title,

.page-id-3537 .elementor-element-b45b3d6:hover .elementor-image-box-title,

.page-id-3537 .elementor-element-68db3d0:hover .elementor-image-box-title {

    color: #C9BEFF !important;

}

/* cards rise in */

.page-id-3537 .elementor-element-07d167f.ms-in > * {

    animation: noReelIn 0.9s cubic-bezier(0.22, 1, 0.36, 1) backwards;

}

.page-id-3537 .elementor-element-07d167f.ms-in > *:nth-child(1) { animation-delay: 0.1s; }

.page-id-3537 .elementor-element-07d167f.ms-in > *:nth-child(2) { animation-delay: 0.25s; }

.page-id-3537 .elementor-element-07d167f.ms-in > *:nth-child(3) { animation-delay: 0.4s; }

.page-id-3537 .elementor-element-07d167f.ms-in > *:nth-child(4) { animation-delay: 0.55s; }

/* outline icons */

.page-id-3537 .ac-bgicons {

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    overflow: hidden;

}

.page-id-3537 .ac-bgi {

    position: absolute;

    display: block;

    transform: translate3d(calc(var(--bx, 0) * var(--d, 10) * 1px), calc(var(--by, 0) * var(--d, 10) * 1px), 0) rotate(var(--r, 0deg));

    transition: transform 0.5s ease-out;

}

.page-id-3537 .ac-bgi svg {

    display: block;

    width: 100%;

    height: auto;

    fill: none;

    stroke: #B9A8FF;

    stroke-opacity: 0.3;

    stroke-width: 1.4;

    stroke-linecap: round;

    stroke-linejoin: round;

    filter: drop-shadow(0 0 6px rgba(152, 128, 244, 0.55));

    animation: noBgiFloat 6s ease-in-out infinite;

    animation-delay: var(--t, 0s);

}



/* 3rd section (Academics): the photo is the SECTION's background (Group-1000015725.jpg, "cover"), which would stretch now that the section is taller.

   On desktop it is pinned to the viewport instead, so the photo stays put (like the sticky column) while the steps scroll, at its original scale. */





/* Academics 3rd section: leave room on the right so the active card's slide-out never pushes the page wider than the screen */





/* Academics 4th section: the "Why Chloe" eyebrow stays on one line */

.page-id-3537 .elementor-element-758d54d {

    width: auto !important;

}

.page-id-3537 .elementor-element-758d54d .elementor-heading-title {

    white-space: nowrap;

}



/* =========================================================================

   CHAT WITH YOUR CLASS PAGE (page-id-3540) - 2nd section "WHAT THIS SPACE IS ABOUT": pointer cards with a peach -> lavender gradient (left to right)

   Cards #2fdc9a5 / #432ac0a / #38328fe / #b58d45a (inside #66c0cd3).

   ========================================================================= */

.page-id-3540 .elementor-element-2fdc9a5,

.page-id-3540 .elementor-element-432ac0a,

.page-id-3540 .elementor-element-38328fe,

.page-id-3540 .elementor-element-b58d45a {

    background: linear-gradient(90deg, #FFF0E5 0%, #F3ECFD 100%) !important;

    border: 1px solid rgba(97, 82, 173, 0.14) !important;

    border-radius: 16px !important;

    box-shadow: 0 14px 24px -18px rgba(45, 36, 99, 0.45) !important;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease, border-color 0.4s ease;

}

.page-id-3540 .elementor-element-2fdc9a5:hover,

.page-id-3540 .elementor-element-432ac0a:hover,

.page-id-3540 .elementor-element-38328fe:hover,

.page-id-3540 .elementor-element-b58d45a:hover {

    transform: translateX(8px);

    border-color: rgba(97, 82, 173, 0.4) !important;

    box-shadow: 0 18px 28px -16px rgba(152, 128, 244, 0.6) !important;

}



/* =========================================================================

   CHAT WITH YOUR CLASS PAGE (page-id-3540) - 3rd section "RESOURCES / HERE'S EXACTLY WHAT YOUR CLASS GETS" (dark glow background unchanged)

   Section #ca214ed; the five "what you get" cards #32ab57b / #e561f67 / #a5424e7 / #67e50db / #c8cd81e live in the list #95fd567.

   Cards: dark glass with a lavender gradient hairline, a numbered "01-05" badge, a dotted line joining the badges, a sheen + glow + slide

   on hover (the badge pops, the title turns lavender); they slide in one after another as the section scrolls into view.

   ========================================================================= */

.page-id-3540 .elementor-element-95fd567 {

    position: relative;

    counter-reset: cwc;

    gap: 14px !important;

}

.page-id-3540 .elementor-element-32ab57b,

.page-id-3540 .elementor-element-e561f67,

.page-id-3540 .elementor-element-a5424e7,

.page-id-3540 .elementor-element-67e50db,

.page-id-3540 .elementor-element-c8cd81e {

    counter-increment: cwc;

    position: relative;

    z-index: 1;

    box-sizing: border-box;

    padding: 14px 20px 14px 76px !important;

    border: 1px solid transparent !important;

    border-radius: 18px !important;

    background:

        linear-gradient(160deg, rgba(28, 30, 70, 0.92) 0%, rgba(12, 16, 40, 0.92) 100%) padding-box,

        linear-gradient(130deg, rgba(185, 168, 255, 0.8) 0%, rgba(255, 255, 255, 0.07) 55%, rgba(152, 128, 244, 0.6) 100%) border-box !important;

    box-shadow: 0 18px 28px -22px rgba(0, 0, 0, 0.9) !important;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;

}

/* number badge */

.page-id-3540 .elementor-element-32ab57b::before,

.page-id-3540 .elementor-element-e561f67::before,

.page-id-3540 .elementor-element-a5424e7::before,

.page-id-3540 .elementor-element-67e50db::before,

.page-id-3540 .elementor-element-c8cd81e::before {

    content: counter(cwc, decimal-leading-zero);

    position: absolute;

    z-index: 2;

    left: 16px;

    top: 50%;

    width: 40px;

    height: 40px;

    margin-top: -20px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: linear-gradient(135deg, #6152AD, #9880F4);

    box-shadow: 0 0 0 4px rgba(152, 128, 244, 0.2), 0 10px 18px -8px rgba(97, 82, 173, 0.8);

    color: #ffffff;

    font-size: 1.4rem;

    font-weight: 800;

    letter-spacing: 0.04em;

    transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.4s ease;

}

/* sheen */

.page-id-3540 .elementor-element-32ab57b::after,

.page-id-3540 .elementor-element-e561f67::after,

.page-id-3540 .elementor-element-a5424e7::after,

.page-id-3540 .elementor-element-67e50db::after,

.page-id-3540 .elementor-element-c8cd81e::after {

    content: '';

    position: absolute;

    inset: 0;

    border-radius: inherit;

    pointer-events: none;

    background: linear-gradient(115deg, transparent 38%, rgba(255, 255, 255, 0.12) 50%, transparent 62%) no-repeat;

    background-size: 300% 100%;

    background-position: 130% 0;

}

.page-id-3540 .elementor-element-32ab57b:hover,

.page-id-3540 .elementor-element-e561f67:hover,

.page-id-3540 .elementor-element-a5424e7:hover,

.page-id-3540 .elementor-element-67e50db:hover,

.page-id-3540 .elementor-element-c8cd81e:hover {

    transform: translateX(-8px);

    box-shadow: 0 22px 34px -20px rgba(152, 128, 244, 0.7), 0 0 28px -4px rgba(152, 128, 244, 0.45) !important;

}

.page-id-3540 .elementor-element-32ab57b:hover::after,

.page-id-3540 .elementor-element-e561f67:hover::after,

.page-id-3540 .elementor-element-a5424e7:hover::after,

.page-id-3540 .elementor-element-67e50db:hover::after,

.page-id-3540 .elementor-element-c8cd81e:hover::after {

    background-position: -30% 0;

    transition: background-position 0.9s ease;

}

.page-id-3540 .elementor-element-32ab57b:hover::before,

.page-id-3540 .elementor-element-e561f67:hover::before,

.page-id-3540 .elementor-element-a5424e7:hover::before,

.page-id-3540 .elementor-element-67e50db:hover::before,

.page-id-3540 .elementor-element-c8cd81e:hover::before {

    transform: scale(1.14) rotate(-8deg);

    box-shadow: 0 0 0 6px rgba(152, 128, 244, 0.32), 0 12px 22px -8px rgba(97, 82, 173, 0.9);

}

.page-id-3540 .elementor-element-95fd567 .elementor-widget-image-box {

    width: 100% !important;

}

.page-id-3540 .elementor-element-95fd567 .elementor-image-box-title {

    margin: 0 0 3px !important;

    transition: color 0.3s ease;

}

.page-id-3540 .elementor-element-95fd567 .elementor-image-box-description {

    margin: 0 !important;

    color: #CFC6F2 !important;

}

.page-id-3540 .elementor-element-95fd567 > .elementor-element:hover .elementor-image-box-title {

    color: #C9BEFF !important;

}

/* slide in one after another on scroll */

@keyframes cwcIn {

    from { opacity: 0; transform: translateX(40px); }

    to { opacity: 1; transform: none; }

}

@supports (animation-timeline: view()) {

    .page-id-3540 .elementor-element-95fd567 > .elementor-element {

        animation: cwcIn 1s cubic-bezier(0.22, 1, 0.36, 1) both;

        animation-timeline: view();

        animation-range: entry 0% entry 55%;

    }

}



@media (prefers-reduced-motion: reduce) {

    .page-id-3540 .elementor-element-95fd567 > .elementor-element { animation: none !important; }

}



/* 3rd section as 2 columns: left = eyebrow, heading, sub-heading, then the photo at the bottom; right = the five pointers */



/* dotted connector between the badges: a piece above and a piece below each badge, none before the first / after the last card */

.page-id-3540 .elementor-element-95fd567 .elementor-widget-image-box {

    position: static !important;

}

.page-id-3540 .elementor-element-95fd567 > .elementor-element:not(:first-child) .elementor-widget-image-box::before,

.page-id-3540 .elementor-element-95fd567 > .elementor-element:not(:last-child) .elementor-widget-image-box::after {

    content: '';

    position: absolute;

    left: 35px;

    width: 0;

    border-left: 2px dotted rgba(185, 168, 255, 0.5);

    z-index: 1;

    pointer-events: none;

}

.page-id-3540 .elementor-element-95fd567 > .elementor-element:not(:first-child) .elementor-widget-image-box::before {

    top: -1px;

    bottom: calc(50% + 25px);

}

.page-id-3540 .elementor-element-95fd567 > .elementor-element:not(:last-child) .elementor-widget-image-box::after {

    top: calc(50% + 25px);

    bottom: -14px;

}





/* =========================================================================

   CHAT WITH YOUR CLASS PAGE (page-id-3540) - 4th section "COMMUNITY & IMPACT": hover on the four cards

   Cards #9b0a8c9 / #f6e3743 / #c23387f / #5cc745f: they lift and glow (lavender) while hovering, the icon pops and a lavender sheen sweeps across.

   ========================================================================= */

.page-id-3540 .elementor-element-9b0a8c9,

.page-id-3540 .elementor-element-f6e3743,

.page-id-3540 .elementor-element-c23387f,

.page-id-3540 .elementor-element-5cc745f {

    position: relative;

    overflow: hidden;

    border: 1px solid rgba(97, 82, 173, 0.14) !important;

    border-radius: 16px !important;

    background: #ffffff;

    cursor: default;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease, border-color 0.4s ease;

}

.page-id-3540 .elementor-element-9b0a8c9::after,

.page-id-3540 .elementor-element-f6e3743::after,

.page-id-3540 .elementor-element-c23387f::after,

.page-id-3540 .elementor-element-5cc745f::after {

    content: '';

    position: absolute;

    inset: 0;

    border-radius: inherit;

    pointer-events: none;

    background: linear-gradient(115deg, transparent 38%, rgba(152, 128, 244, 0.16) 50%, transparent 62%) no-repeat;

    background-size: 300% 100%;

    background-position: 130% 0;

}

.page-id-3540 .elementor-element-9b0a8c9:hover,

.page-id-3540 .elementor-element-f6e3743:hover,

.page-id-3540 .elementor-element-c23387f:hover,

.page-id-3540 .elementor-element-5cc745f:hover {

    transform: translateY(-6px);

    border-color: rgba(97, 82, 173, 0.45) !important;

    box-shadow: 0 16px 28px -14px rgba(97, 82, 173, 0.45), 0 0 26px 2px rgba(152, 128, 244, 0.4) !important;

}

.page-id-3540 .elementor-element-9b0a8c9:hover::after,

.page-id-3540 .elementor-element-f6e3743:hover::after,

.page-id-3540 .elementor-element-c23387f:hover::after,

.page-id-3540 .elementor-element-5cc745f:hover::after {

    background-position: -30% 0;

    transition: background-position 0.9s ease;

}

.page-id-3540 .elementor-element-94e3c08 .elementor-image-box-img img {

    transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3540 .elementor-element-9b0a8c9:hover .elementor-image-box-img img,

.page-id-3540 .elementor-element-f6e3743:hover .elementor-image-box-img img,

.page-id-3540 .elementor-element-c23387f:hover .elementor-image-box-img img,

.page-id-3540 .elementor-element-5cc745f:hover .elementor-image-box-img img {

    transform: scale(1.14) rotate(-8deg);

}



/* =========================================================================

   CHAT WITH YOUR CLASS PAGE (page-id-3540) - 5th (last) section "WHAT'S NEXT": colourful floating icons in the background (built by customjs),

   the photo (background of #f3975e6) touches the bottom of the section, and the form is vertically compact.

   ========================================================================= */

.page-id-3540 .elementor-element-53f6636 {

    position: relative;

    overflow: hidden;

    padding-bottom: 0 !important;

}

.page-id-3540 .elementor-element-53f6636 > .e-con-inner {

    position: relative;

    z-index: 1;

    padding-bottom: 0 !important;

}

.page-id-3540 .elementor-element-4dca3c4 {

    align-items: stretch;

}

.page-id-3540 .elementor-element-f3975e6:not(.elementor-motion-effects-element-type-background) {

    background-position: center bottom !important;

    background-size: contain !important;

}

.page-id-3540 .elementor-element-265eb70 {

    align-self: center;

    padding-bottom: 30px !important;

}

.page-id-3540 .wn-bgicons {

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    overflow: hidden;

}

.page-id-3540 .wn-bgi {

    position: absolute;

    display: block;

    transform: translate3d(calc(var(--bx, 0) * var(--d, 10) * 1px), calc(var(--by, 0) * var(--d, 10) * 1px), 0) rotate(var(--r, 0deg));

    transition: transform 0.5s ease-out;

}

.page-id-3540 .wn-bgi svg {

    display: block;

    width: 100%;

    height: auto;

    fill: var(--c);

    fill-opacity: 0.16;

    stroke: var(--c);

    stroke-opacity: 0.85;

    stroke-width: 1.6;

    stroke-linecap: round;

    stroke-linejoin: round;

    filter: drop-shadow(0 6px 10px color-mix(in srgb, var(--c) 35%, transparent));

    animation: noBgiFloat 6s ease-in-out infinite;

    animation-delay: var(--t, 0s);

    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), fill-opacity 0.3s ease;

}

.page-id-3540 .wn-bgi.wn-near svg {

    transform: scale(1.35) rotate(10deg);

    fill-opacity: 0.35;

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3540 .wn-bgi svg { animation: none; }

}



/* =========================================================================

   CONTACT FORM LOOK = ABOUT ME PAGE FORM  (pages with the in-page form 5043 / .collaborate-contact-form: TV & Media Highlights page-id-4908,

   Academics page-id-3537, Chat With Your Class page-id-3540, Collaborate With Me page-id-3543, Speaking / Book Me page-id-3520; the Discovered at Microsoft / Innovation in Norway / BiotechTV pages have no form section).

   Same values as the About Me page (page-id-3490, widget #e009f65): compact card with a soft frame and shadow, smaller row gaps, purple semi-bold labels,

   46px fields with an 11px radius, an 84px message box, a purple focus ring, the select arrow re-centred, a 50px button with a hover lift, a small note line.

   ========================================================================= */

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form {

    padding: 24px 26px !important;

    border-radius: 18px !important;

    border: 1px solid rgba(97, 82, 173, 0.14) !important;

    box-shadow: 0 16px 34px -24px rgba(60, 40, 140, 0.5) !important;

}

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form .collaborate-cf7-row,

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form .collaborate-cf7-full {

    margin-bottom: 12px !important;

}

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form label {

    font-size: clamp(1.4rem, 0.9rem + 0.3vw, 1.6rem) !important;

    margin-bottom: 6px !important;

    font-weight: 600 !important;

    line-height: 1.4 !important;

    color: #2b2470 !important;

}

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form input[type="text"],

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form input[type="email"],

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form select {

    height: 46px !important;

    min-height: 0 !important;

    padding: 10px 14px !important;

    border-radius: 11px !important;

    font-size: 1.5rem !important;

}

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form select {

    padding-right: 44px !important;

}

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form textarea {

    height: 84px !important;

    min-height: 0 !important;

    padding: 10px 14px !important;

    border-radius: 11px !important;

    font-size: 1.5rem !important;

}

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form input:focus,

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form textarea:focus,

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form select:focus {

    border-color: #6152AD !important;

    box-shadow: 0 0 0 3px rgba(97, 82, 173, 0.14) !important;

}

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form .collaborate-cf7-select-wrap::after {

    top: 62% !important;

}

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form input[type="submit"],

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form button[type="submit"] {

    height: 50px !important;

    min-width: 0 !important;

    padding: 0 30px !important;

    border-radius: 11px !important;

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;

}

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form input[type="submit"]:hover,

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form button[type="submit"]:hover {

    transform: translateY(-3px);

    box-shadow: 0 14px 22px -12px rgba(97, 82, 173, 0.85) !important;

}

body:is(.page-id-4908, .page-id-3537, .page-id-3540, .page-id-3543, .page-id-3520) .collaborate-contact-form .collaborate-cf7-note {

    margin-top: 10px !important;

    font-size: 1.3rem !important;

}





/* =========================================================================

   CHAT WITH YOUR CLASS PAGE (page-id-3540) - 3rd section: no bottom horizontal rule, heading on 1-2 lines

   - the section's background photo (Group-388-1.jpg) has a 1px light hairline along its top and bottom edges; it is scaled a touch larger than

     the section so the edges are cropped away and the hairline no longer shows;

   - the heading's accent word ("Exactly") was a block of its own (3 lines); it now runs inline with the rest of the heading.

   ========================================================================= */

.page-id-3540 .elementor-element-ca214ed:not(.elementor-motion-effects-element-type-background) {

    background-size: 104% 106% !important;

    background-position: center center !important;

}

.page-id-3540 .elementor-element-f692334 .section-heading .banner-colorTxt {

    display: inline !important;

}

.page-id-3540 .elementor-element-f692334 .section-heading {

    line-height: 1.25;

}



/* =========================================================================

   COLLABORATE WITH ME PAGE (page-id-3543) - HERO

   Same family as the TV & Media Highlights / Chat With Your Class heroes: a soft drifting colour blob behind the copy, staggered fade-up of

   the copy, a shimmering accent word, a glowing CTA with a sweeping sheen and a nudging arrow, three floating glass "what we collaborate on"

   chips over the photo and the dashed wavy "scroll down" cue (both built in customjs/custom-changes.js).

   Elements: hero #7f14b98, eyebrow #019e10f, heading #3575751, paragraph .banner-subheading, CTA #8339312, next section #becd1c6.

   ========================================================================= */

.page-id-3543 .elementor-element-7f14b98 {

    position: relative;

    overflow: hidden;

}

.page-id-3543 .elementor-element-7f14b98::after {

    content: '';

    position: absolute;

    top: -20%;

    left: -10%;

    width: 46%;

    height: 140%;

    background:

        radial-gradient(circle at 20% 30%, rgba(152, 128, 244, 0.22) 0%, transparent 55%),

        radial-gradient(circle at 70% 75%, rgba(97, 82, 173, 0.16) 0%, transparent 50%);

    filter: blur(10px);

    pointer-events: none;

    z-index: 1;

    animation: jcHeroBlob 12s ease-in-out infinite;

}

.page-id-3543 .elementor-element-7f14b98 > .e-con-inner {

    position: relative;

    z-index: 2;

}

.page-id-3543 .elementor-element-019e10f,

.page-id-3543 .elementor-element-3575751,

.page-id-3543 .elementor-element-8fd69a9 > .banner-subheading,

.page-id-3543 .elementor-element-8339312 {

    opacity: 0;

    animation: jcHeroFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-3543 .elementor-element-019e10f { animation-delay: 0.05s; }

.page-id-3543 .elementor-element-3575751 { animation-delay: 0.18s; }

.page-id-3543 .elementor-element-8fd69a9 > .banner-subheading { animation-delay: 0.32s; }

.page-id-3543 .elementor-element-8339312 { animation-delay: 0.46s; }

.page-id-3543 .elementor-element-3575751 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

    animation: cwmShimmer 5s ease-in-out 1.4s infinite;

}

.page-id-3543 .elementor-element-3575751:hover .colorTxt {

    background-position: 100% 0%;

}

@keyframes cwmShimmer {

    0%, 55%, 100% { background-position: 0% 0%; }

    80% { background-position: 100% 0%; }

}

/* CTA */

.page-id-3543 .elementor-element-8339312 a {

    position: relative;

    overflow: hidden;

    border-radius: 11px;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-3543 .elementor-element-8339312 a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-3543 .elementor-element-8339312 a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-3543 .elementor-element-8339312 a:hover::before {

    left: 130%;

}

.page-id-3543 .elementor-element-8339312 .elementor-button-icon {

    transition: transform 0.3s ease;

}

.page-id-3543 .elementor-element-8339312 a:hover .elementor-button-icon {

    transform: translateX(6px);

}

/* floating glass chips over the photo (desktop) */

.page-id-3543 .cwm-chips {

    display: none;

}



@keyframes cwmChipIn {

    from { opacity: 0; transform: translateY(16px) scale(0.9); }

    to   { opacity: 1; transform: none; }

}

@keyframes cwmChipFloat {

    0%, 100% { translate: 0 0; }

    50%      { translate: 0 -9px; }

}





/* =========================================================================

   COLLABORATE WITH ME PAGE (page-id-3543) - 2nd section "WHY CHLOE / FIND THE COLLABORATION THAT FITS WHAT YOU NEED"

   Section #becd1c6; the five format cards #e083164 / #c1db386 / #8be4dc1 / #9ffd616 / #dbb4267 in the list #cb28e3a; copy + photo in #fc77faf (photo #886ac7f).

   Cards: white card with a lavender gradient hairline, a purple accent bar that grows on hover, the card lifting with a violet glow while a soft

   spotlight follows the pointer (customjs sets --mx / --my), the icon popping and the title turning purple; they slide in one after another.

   Photo: a soft lavender / peach blob behind it and a gentle float. The section gets two faint colour glows in the background.

   ========================================================================= */

.page-id-3543 .elementor-element-becd1c6 {

    position: relative;

    overflow: hidden;

}

.page-id-3543 .elementor-element-becd1c6::before {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    background:

        radial-gradient(circle at 6% 12%, rgba(152, 128, 244, 0.14) 0%, transparent 38%),

        radial-gradient(circle at 96% 88%, rgba(255, 190, 150, 0.18) 0%, transparent 40%);

}

.page-id-3543 .elementor-element-becd1c6 > .e-con-inner {

    position: relative;

    z-index: 1;

}

.page-id-3543 .elementor-element-cb28e3a {

    gap: 14px !important;

}

.page-id-3543 .elementor-element-e083164,

.page-id-3543 .elementor-element-c1db386,

.page-id-3543 .elementor-element-8be4dc1,

.page-id-3543 .elementor-element-9ffd616,

.page-id-3543 .elementor-element-dbb4267 {

    position: relative;

    overflow: hidden;

    box-sizing: border-box;

    border: 1px solid transparent !important;

    border-radius: 16px !important;

    background:

        linear-gradient(#ffffff, #ffffff) padding-box,

        linear-gradient(135deg, rgba(152, 128, 244, 0.55) 0%, rgba(97, 82, 173, 0.1) 50%, rgba(255, 170, 130, 0.5) 100%) border-box !important;

    box-shadow: 0 12px 22px -18px rgba(60, 40, 140, 0.45) !important;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;

}

/* accent bar */

.page-id-3543 .elementor-element-e083164::before,

.page-id-3543 .elementor-element-c1db386::before,

.page-id-3543 .elementor-element-8be4dc1::before,

.page-id-3543 .elementor-element-9ffd616::before,

.page-id-3543 .elementor-element-dbb4267::before {

    content: '';

    position: absolute;

    left: 0;

    top: 18%;

    bottom: 18%;

    width: 4px;

    border-radius: 0 4px 4px 0;

    background: linear-gradient(180deg, #9880F4, #6152AD);

    transform: scaleY(0.35);

    opacity: 0.55;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.3s ease;

    z-index: 2;

}

/* pointer spotlight */

.page-id-3543 .elementor-element-e083164::after,

.page-id-3543 .elementor-element-c1db386::after,

.page-id-3543 .elementor-element-8be4dc1::after,

.page-id-3543 .elementor-element-9ffd616::after,

.page-id-3543 .elementor-element-dbb4267::after {

    content: '';

    position: absolute;

    inset: 0;

    border-radius: inherit;

    pointer-events: none;

    opacity: 0;

    background: radial-gradient(240px circle at var(--mx, 50%) var(--my, 50%), rgba(152, 128, 244, 0.2), transparent 70%);

    transition: opacity 0.3s ease;

}

.page-id-3543 .elementor-element-e083164:hover,

.page-id-3543 .elementor-element-c1db386:hover,

.page-id-3543 .elementor-element-8be4dc1:hover,

.page-id-3543 .elementor-element-9ffd616:hover,

.page-id-3543 .elementor-element-dbb4267:hover {

    transform: translateY(-5px);

    box-shadow: 0 18px 30px -14px rgba(97, 82, 173, 0.5), 0 0 26px 2px rgba(152, 128, 244, 0.35) !important;

}

.page-id-3543 .elementor-element-e083164:hover::before,

.page-id-3543 .elementor-element-c1db386:hover::before,

.page-id-3543 .elementor-element-8be4dc1:hover::before,

.page-id-3543 .elementor-element-9ffd616:hover::before,

.page-id-3543 .elementor-element-dbb4267:hover::before {

    transform: scaleY(1);

    opacity: 1;

}

.page-id-3543 .elementor-element-e083164:hover::after,

.page-id-3543 .elementor-element-c1db386:hover::after,

.page-id-3543 .elementor-element-8be4dc1:hover::after,

.page-id-3543 .elementor-element-9ffd616:hover::after,

.page-id-3543 .elementor-element-dbb4267:hover::after {

    opacity: 1;

}

/* icon + title */

.page-id-3543 .elementor-element-cb28e3a .elementor-widget-image img {

    transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3543 .elementor-element-e083164:hover .elementor-widget-image img,

.page-id-3543 .elementor-element-c1db386:hover .elementor-widget-image img,

.page-id-3543 .elementor-element-8be4dc1:hover .elementor-widget-image img,

.page-id-3543 .elementor-element-9ffd616:hover .elementor-widget-image img,

.page-id-3543 .elementor-element-dbb4267:hover .elementor-widget-image img {

    transform: scale(1.18) rotate(-8deg);

}

.page-id-3543 .elementor-element-cb28e3a .elementor-heading-title {

    transition: color 0.3s ease;

}

.page-id-3543 .elementor-element-cb28e3a > .elementor-element:hover .elementor-heading-title {

    color: #6152AD !important;

}

/* photo: blob + float */

.page-id-3543 .elementor-element-886ac7f {

    position: relative;

}

.page-id-3543 .elementor-element-886ac7f::before {

    content: '';

    position: absolute;

    left: 6%;

    right: 6%;

    top: 18%;

    bottom: 0;

    z-index: 0;

    border-radius: 50% 50% 24px 24px;

    background: linear-gradient(160deg, #F3ECFD 0%, #FFF0E5 100%);

    box-shadow: 0 0 60px 6px rgba(152, 128, 244, 0.22);

}

.page-id-3543 .elementor-element-886ac7f img {

    position: relative;

    z-index: 1;

    animation: cwmPhotoFloat 7s ease-in-out infinite;

}

@keyframes cwmPhotoFloat {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-8px); }

}

/* cards slide in one after another */

@keyframes cwmCardIn {

    from { opacity: 0; transform: translateX(-34px); }

    to { opacity: 1; transform: none; }

}

@supports (animation-timeline: view()) {

    .page-id-3543 .elementor-element-cb28e3a > .elementor-element {

        animation: cwmCardIn 1s cubic-bezier(0.22, 1, 0.36, 1) both;

        animation-timeline: view();

        animation-range: entry 0% entry 60%;

    }

}



/* =========================================================================

   COLLABORATE WITH ME PAGE (page-id-3543) - 3rd section "TRUSTED BY / BRANDS CHLOE HAS PARTNERED WITH" (background unchanged)

   Logo carousel #61db72d: every logo sits on a frosted glass card of the same height; logos are in full colour and grow a little on hover while the card lifts with a violet glow. Hairline gradient rule under the heading.

   ========================================================================= */

.page-id-3543 .elementor-element-61db72d .swiper-slide {

    height: auto;

    padding: 14px 0 22px;

}

.page-id-3543 .elementor-element-61db72d .swiper-slide-inner {

    box-sizing: border-box;

    height: 96px;

    margin: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 14px 22px;

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.85), rgba(243, 236, 253, 0.55));

    backdrop-filter: blur(12px) saturate(160%);

    -webkit-backdrop-filter: blur(12px) saturate(160%);

    border: 1px solid rgba(97, 82, 173, 0.14);

    border-radius: 16px;

    box-shadow: 0 12px 22px -18px rgba(60, 40, 140, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-3543 .elementor-element-61db72d .swiper-slide-image {

    width: auto;

    height: auto;

    max-width: 100%;

    max-height: 100%;

    object-fit: contain;

    transition: transform 0.35s ease;

}

.page-id-3543 .elementor-element-61db72d .swiper-slide-inner:hover {

    transform: translateY(-6px);

    border-color: rgba(97, 82, 173, 0.45);

    box-shadow: 0 18px 30px -14px rgba(97, 82, 173, 0.5), 0 0 24px 2px rgba(152, 128, 244, 0.35);

}

.page-id-3543 .elementor-element-61db72d .swiper-slide-inner:hover .swiper-slide-image {

    transform: scale(1.06);

}

.page-id-3543 .elementor-element-9f1ac44 {

    position: relative;

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3543 .elementor-element-886ac7f img { animation: none; }

}



/* Collaborate With Me 3rd section: the "Trusted By" eyebrow stays on one line */

.page-id-3543 .elementor-element-efe87fa,

.page-id-3543 .elementor-element-efe87fa .elementor-heading-title {

    width: auto !important;

    white-space: nowrap;

}



/* Collaborate With Me last section: floating icon styles (same as Chat With Your Class) */

.page-id-3543 .wn-bgicons {

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    overflow: hidden;

}

.page-id-3543 .wn-bgi {

    position: absolute;

    display: block;

    transform: translate3d(calc(var(--bx, 0) * var(--d, 10) * 1px), calc(var(--by, 0) * var(--d, 10) * 1px), 0) rotate(var(--r, 0deg));

    transition: transform 0.5s ease-out;

}

.page-id-3543 .wn-bgi svg {

    display: block;

    width: 100%;

    height: auto;

    fill: var(--c);

    fill-opacity: 0.16;

    stroke: var(--c);

    stroke-opacity: 0.85;

    stroke-width: 1.6;

    stroke-linecap: round;

    stroke-linejoin: round;

    filter: drop-shadow(0 6px 10px color-mix(in srgb, var(--c) 35%, transparent));

    animation: noBgiFloat 6s ease-in-out infinite;

    animation-delay: var(--t, 0s);

    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), fill-opacity 0.3s ease;

}

.page-id-3543 .wn-bgi.wn-near svg {

    transform: scale(1.35) rotate(10deg);

    fill-opacity: 0.35;

}



/* =========================================================================

   COLLABORATE WITH ME PAGE (page-id-3543) - 4th section "WHY CHLOE / THE SCIENTIST BRANDS WISH THEY'D FOUND SOONER"

   Section #2f2b41d; the four cards #1831c2c / #5590add / #8106149 / #07503d6 (copy + photo each) in the grid #7e92e39; big photo #df50486 on the right.

   Cards: white with a lavender / peach gradient hairline, lifting with a violet glow on hover while a soft spotlight follows the pointer

   (customjs sets --mx / --my), a purple accent bar growing on the left, the copy turning purple; they rise in one after another.

   Photo: rounded with a soft glow, a gentle float and a slight zoom on hover.

   ========================================================================= */

.page-id-3543 .elementor-element-2f2b41d {

    position: relative;

    overflow: hidden;

}

.page-id-3543 .elementor-element-2f2b41d::before {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    background:

        radial-gradient(circle at 94% 10%, rgba(152, 128, 244, 0.14) 0%, transparent 36%),

        radial-gradient(circle at 4% 92%, rgba(255, 190, 150, 0.16) 0%, transparent 38%);

}

.page-id-3543 .elementor-element-2f2b41d > .e-con-inner {

    position: relative;

    z-index: 1;

}

.page-id-3543 .elementor-element-1831c2c,

.page-id-3543 .elementor-element-5590add,

.page-id-3543 .elementor-element-8106149,

.page-id-3543 .elementor-element-07503d6 {

    position: relative;

    overflow: hidden;

    box-sizing: border-box;

    border: 1px solid transparent !important;

    border-radius: 18px !important;

    background:

        linear-gradient(#ffffff, #ffffff) padding-box,

        linear-gradient(135deg, rgba(152, 128, 244, 0.55) 0%, rgba(97, 82, 173, 0.1) 50%, rgba(255, 170, 130, 0.5) 100%) border-box !important;

    box-shadow: 0 12px 22px -18px rgba(60, 40, 140, 0.45) !important;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;

}

.page-id-3543 .elementor-element-1831c2c::before,

.page-id-3543 .elementor-element-5590add::before,

.page-id-3543 .elementor-element-8106149::before,

.page-id-3543 .elementor-element-07503d6::before {

    content: '';

    position: absolute;

    left: 0;

    top: 18%;

    bottom: 18%;

    width: 4px;

    border-radius: 0 4px 4px 0;

    background: linear-gradient(180deg, #9880F4, #6152AD);

    transform: scaleY(0.35);

    opacity: 0.55;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.3s ease;

    z-index: 2;

}

.page-id-3543 .elementor-element-1831c2c::after,

.page-id-3543 .elementor-element-5590add::after,

.page-id-3543 .elementor-element-8106149::after,

.page-id-3543 .elementor-element-07503d6::after {

    content: '';

    position: absolute;

    inset: 0;

    border-radius: inherit;

    pointer-events: none;

    opacity: 0;

    background: radial-gradient(240px circle at var(--mx, 50%) var(--my, 50%), rgba(152, 128, 244, 0.2), transparent 70%);

    transition: opacity 0.3s ease;

}

.page-id-3543 .elementor-element-1831c2c:hover,

.page-id-3543 .elementor-element-5590add:hover,

.page-id-3543 .elementor-element-8106149:hover,

.page-id-3543 .elementor-element-07503d6:hover {

    transform: translateY(-6px);

    box-shadow: 0 18px 30px -14px rgba(97, 82, 173, 0.5), 0 0 26px 2px rgba(152, 128, 244, 0.35) !important;

}

.page-id-3543 .elementor-element-1831c2c:hover::before,

.page-id-3543 .elementor-element-5590add:hover::before,

.page-id-3543 .elementor-element-8106149:hover::before,

.page-id-3543 .elementor-element-07503d6:hover::before {

    transform: scaleY(1);

    opacity: 1;

}

.page-id-3543 .elementor-element-1831c2c:hover::after,

.page-id-3543 .elementor-element-5590add:hover::after,

.page-id-3543 .elementor-element-8106149:hover::after,

.page-id-3543 .elementor-element-07503d6:hover::after {

    opacity: 1;

}

.page-id-3543 .elementor-element-7e92e39 p {

    transition: color 0.3s ease;

}

.page-id-3543 .elementor-element-7e92e39 > .elementor-element:hover p {

    color: #4a3d99;

}

/* cards rise in one after another */

@keyframes cwmRiseIn {

    from { opacity: 0; transform: translateY(34px); }

    to { opacity: 1; transform: none; }

}

@supports (animation-timeline: view()) {

    .page-id-3543 .elementor-element-7e92e39 > .elementor-element {

        animation: cwmRiseIn 1s cubic-bezier(0.22, 1, 0.36, 1) both;

        animation-timeline: view();

        animation-range: entry 0% entry 60%;

    }

}

/* photo */

.page-id-3543 .elementor-element-df50486 {

    border-radius: 24px !important;

    box-shadow: 0 30px 50px -26px rgba(60, 40, 140, 0.55), 0 0 40px -6px rgba(152, 128, 244, 0.35);

    animation: cwmPhotoFloat 7s ease-in-out infinite;

    transition: box-shadow 0.4s ease;

}

.page-id-3543 .elementor-element-df50486:hover {

    box-shadow: 0 34px 56px -24px rgba(97, 82, 173, 0.6), 0 0 54px -2px rgba(152, 128, 244, 0.55);

}



/* =========================================================================

   COLLABORATE WITH ME PAGE (page-id-3543) - 5th section "QUICK CUTS / DOCUMENTING DISPARITIES, CELEBRATING EXCELLENCE" (video reels slider)

   The reel cards (.ck-diversity-card) become white cards with a lavender / peach gradient hairline; they lift with a violet glow on hover, the

   cover zooms a little, the play button pulses with a ring; the pagination dots are purple.

   ========================================================================= */

.page-id-3543 .ck-diversity-swiper .swiper-slide {

    height: auto;

}

.page-id-3543 .ck-diversity-card {

    box-sizing: border-box;

    border: 1px solid transparent !important;

    border-radius: 22px !important;

    background:

        linear-gradient(#ffffff, #ffffff) padding-box,

        linear-gradient(135deg, rgba(152, 128, 244, 0.55) 0%, rgba(97, 82, 173, 0.1) 50%, rgba(255, 170, 130, 0.5) 100%) border-box !important;

    box-shadow: 0 14px 24px -18px rgba(60, 40, 140, 0.5);

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease !important;

}

.page-id-3543 .ck-diversity-card:hover {

    transform: translateY(-8px);

    box-shadow: 0 22px 34px -16px rgba(97, 82, 173, 0.55), 0 0 30px 2px rgba(152, 128, 244, 0.35);

}

.page-id-3543 .ck-diversity-thumbnail img {

    transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3543 .ck-diversity-card:hover .ck-diversity-thumbnail img {

    transform: scale(1.07);

}

.page-id-3543 .ck-diversity-thumbnail:after {

    background: linear-gradient(to top, rgba(34, 22, 90, 0.55), rgba(34, 22, 90, 0.05)) !important;

}

.page-id-3543 .ck-play-btn {

    background: linear-gradient(135deg, #6152AD, #9880F4) !important;

}

.page-id-3543 .ck-play-btn::before {

    content: '';

    position: absolute;

    inset: -8px;

    border-radius: 50%;

    border: 2px solid rgba(255, 255, 255, 0.7);

    animation: cwmPlayRing 2s ease-out infinite;

}

@keyframes cwmPlayRing {

    0% { transform: scale(0.85); opacity: 0.9; }

    100% { transform: scale(1.35); opacity: 0; }

}

.page-id-3543 .ck-diversity-content h3 {

    transition: color 0.3s ease;

}

.page-id-3543 .ck-diversity-card:hover .ck-diversity-content h3 {

    color: #6152AD;

}

.page-id-3543 .ck-diversity-swiper .swiper-pagination-bullet {

    background: #9880F4;

    transition: width 0.3s ease, background 0.3s ease;

}

.page-id-3543 .ck-diversity-swiper .swiper-pagination-bullet-active {

    background: #6152AD;

    width: 26px;

    border-radius: 6px;

}



/* =========================================================================

   COLLABORATE WITH ME PAGE (page-id-3543) - 6th (last) section "LETS TALK": colourful floating icons in the background (customjs), photo touching the

   bottom of the section; the form takes the About Me form look (see "CONTACT FORM LOOK" above).

   ========================================================================= */

.page-id-3543 .elementor-element-38324c2 {

    position: relative;

    overflow: hidden;

    padding-bottom: 0 !important;

}

.page-id-3543 .elementor-element-38324c2 > .e-con-inner {

    position: relative;

    z-index: 1;

    padding-bottom: 0 !important;

}

.page-id-3543 .elementor-element-700bdbe {

    align-items: stretch;

}

.page-id-3543 .elementor-element-41dea80:not(.elementor-motion-effects-element-type-background) {

    background-position: center bottom !important;

    background-size: contain !important;

}

.page-id-3543 .elementor-element-ef46c5b {

    align-self: center;

    padding-bottom: 30px !important;

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3543 .elementor-element-df50486,

    .page-id-3543 .ck-play-btn::before { animation: none; }

}



/* Collaborate With Me 5th section: one-sided (left) accent border on the reel card's text block */

.page-id-3543 .ck-diversity-content {

    position: relative;

    margin: 14px 16px 16px;

    padding: 4px 4px 4px 16px !important;

    border-left: 4px solid #9880F4;

    border-image: linear-gradient(180deg, #9880F4, #6152AD) 1;

    transition: border-color 0.3s ease;

}

.page-id-3543 .ck-diversity-card:hover .ck-diversity-content {

    border-image: linear-gradient(180deg, #6152AD, #F2709C) 1;

}



/* =========================================================================

   SPEAKING / BOOK ME PAGE (page-id-3520) - HERO

   Same family as the TV & Media Highlights / Chat With Your Class / Collaborate With Me heroes: a soft drifting colour blob behind the copy, staggered fade-up of

   the copy, a shimmering accent word, a glowing CTA with a sweeping sheen and a nudging arrow, three floating glass "what we collaborate on"

   chips over the photo and the dashed wavy "scroll down" cue (both built in customjs/custom-changes.js).

   Elements: hero #20f1cd7, eyebrow #d82c188, heading #3f4df44, paragraph .banner-subheading (in #5948c50), CTA #e1eeb09, next section #d822c62.

   ========================================================================= */

.page-id-3520 .elementor-element-20f1cd7 {

    position: relative;

    overflow: hidden;

}

.page-id-3520 .elementor-element-20f1cd7::after {

    content: '';

    position: absolute;

    top: -20%;

    left: -10%;

    width: 46%;

    height: 140%;

    background:

        radial-gradient(circle at 20% 30%, rgba(152, 128, 244, 0.22) 0%, transparent 55%),

        radial-gradient(circle at 70% 75%, rgba(97, 82, 173, 0.16) 0%, transparent 50%);

    filter: blur(10px);

    pointer-events: none;

    z-index: 1;

    animation: jcHeroBlob 12s ease-in-out infinite;

}

.page-id-3520 .elementor-element-20f1cd7 > .e-con-inner {

    position: relative;

    z-index: 2;

}

.page-id-3520 .elementor-element-d82c188,

.page-id-3520 .elementor-element-3f4df44,

.page-id-3520 .elementor-element-5948c50 > .banner-subheading,

.page-id-3520 .elementor-element-e1eeb09 {

    opacity: 0;

    animation: jcHeroFadeUp 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;

}

.page-id-3520 .elementor-element-d82c188 { animation-delay: 0.05s; }

.page-id-3520 .elementor-element-3f4df44 { animation-delay: 0.18s; }

.page-id-3520 .elementor-element-5948c50 > .banner-subheading { animation-delay: 0.32s; }

.page-id-3520 .elementor-element-e1eeb09 { animation-delay: 0.46s; }

.page-id-3520 .elementor-element-3f4df44 .colorTxt {

    background: linear-gradient(100deg, #223973 40%, #9880F4 50%, #223973 60%);

    background-size: 250% 100%;

    background-position: 0% 0%;

    -webkit-background-clip: text;

    background-clip: text;

    -webkit-text-fill-color: transparent;

    transition: background-position 0.9s ease;

    animation: spkShimmer 5s ease-in-out 1.4s infinite;

}

.page-id-3520 .elementor-element-3f4df44:hover .colorTxt {

    background-position: 100% 0%;

}

@keyframes spkShimmer {

    0%, 55%, 100% { background-position: 0% 0%; }

    80% { background-position: 100% 0%; }

}

/* CTA */

.page-id-3520 .elementor-element-e1eeb09 a {

    position: relative;

    overflow: hidden;

    border-radius: 11px;

    box-shadow: 0 6px 18px rgba(97, 82, 173, 0.28);

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-3520 .elementor-element-e1eeb09 a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-3520 .elementor-element-e1eeb09 a:hover {

    transform: translateY(-3px) scale(1.035);

    box-shadow: 0 14px 32px rgba(97, 82, 173, 0.45);

}

.page-id-3520 .elementor-element-e1eeb09 a:hover::before {

    left: 130%;

}

.page-id-3520 .elementor-element-e1eeb09 .elementor-button-icon {

    transition: transform 0.3s ease;

}

.page-id-3520 .elementor-element-e1eeb09 a:hover .elementor-button-icon {

    transform: translateX(6px);

}





/* =========================================================================

   SPEAKING / BOOK ME PAGE (page-id-3520) - 2nd section "FOR RESEARCHERS / YOUR RESEARCH DESERVES A BIGGER AUDIENCE"

   Section #d822c62, row #2418c29: copy card #f09693a | photo #bde549a | four link cards #a8d341e / #be3fd86 / #9cdcf02 / #888c9be (grid #789650c).

   Link cards: white with a lavender / peach gradient hairline, a purple accent bar growing on the left, lifting with a violet glow on hover while

   a soft spotlight follows the pointer (customjs sets --mx / --my), the icon popping and the copy turning purple; they rise in one by one.

   Copy card: rounded with a soft glow, lifting on hover; the button gets a sweeping sheen. Photo: a soft glow and a gentle float.

   ========================================================================= */

.page-id-3520 .elementor-element-d822c62 {

    position: relative;

    overflow: hidden;

}

.page-id-3520 .elementor-element-d822c62::before {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    background:

        radial-gradient(circle at 5% 15%, rgba(152, 128, 244, 0.13) 0%, transparent 36%),

        radial-gradient(circle at 96% 90%, rgba(255, 190, 150, 0.16) 0%, transparent 38%);

}

.page-id-3520 .elementor-element-d822c62 > .e-con-inner {

    position: relative;

    z-index: 1;

}

.page-id-3520 .elementor-element-a8d341e,

.page-id-3520 .elementor-element-be3fd86,

.page-id-3520 .elementor-element-9cdcf02,

.page-id-3520 .elementor-element-888c9be {

    position: relative;

    overflow: hidden;

    box-sizing: border-box;

    border: 1px solid transparent !important;

    border-radius: 16px !important;

    background:

        linear-gradient(#ffffff, #ffffff) padding-box,

        linear-gradient(135deg, rgba(152, 128, 244, 0.55) 0%, rgba(97, 82, 173, 0.1) 50%, rgba(255, 170, 130, 0.5) 100%) border-box !important;

    box-shadow: 0 12px 22px -18px rgba(60, 40, 140, 0.45) !important;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;

}

.page-id-3520 .elementor-element-a8d341e::before,

.page-id-3520 .elementor-element-be3fd86::before,

.page-id-3520 .elementor-element-9cdcf02::before,

.page-id-3520 .elementor-element-888c9be::before {

    content: '';

    position: absolute;

    left: 0;

    top: 18%;

    bottom: 18%;

    width: 4px;

    border-radius: 0 4px 4px 0;

    background: linear-gradient(180deg, #9880F4, #6152AD);

    transform: scaleY(0.35);

    opacity: 0.55;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.3s ease;

    z-index: 2;

}

.page-id-3520 .elementor-element-a8d341e::after,

.page-id-3520 .elementor-element-be3fd86::after,

.page-id-3520 .elementor-element-9cdcf02::after,

.page-id-3520 .elementor-element-888c9be::after {

    content: '';

    position: absolute;

    inset: 0;

    border-radius: inherit;

    pointer-events: none;

    opacity: 0;

    background: radial-gradient(220px circle at var(--mx, 50%) var(--my, 50%), rgba(152, 128, 244, 0.2), transparent 70%);

    transition: opacity 0.3s ease;

}

.page-id-3520 .elementor-element-a8d341e:hover,

.page-id-3520 .elementor-element-be3fd86:hover,

.page-id-3520 .elementor-element-9cdcf02:hover,

.page-id-3520 .elementor-element-888c9be:hover {

    transform: translateY(-6px);

    box-shadow: 0 18px 30px -14px rgba(97, 82, 173, 0.5), 0 0 26px 2px rgba(152, 128, 244, 0.35) !important;

}

.page-id-3520 .elementor-element-a8d341e:hover::before,

.page-id-3520 .elementor-element-be3fd86:hover::before,

.page-id-3520 .elementor-element-9cdcf02:hover::before,

.page-id-3520 .elementor-element-888c9be:hover::before {

    transform: scaleY(1);

    opacity: 1;

}

.page-id-3520 .elementor-element-a8d341e:hover::after,

.page-id-3520 .elementor-element-be3fd86:hover::after,

.page-id-3520 .elementor-element-9cdcf02:hover::after,

.page-id-3520 .elementor-element-888c9be:hover::after {

    opacity: 1;

}

.page-id-3520 .elementor-element-789650c img {

    transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3520 .elementor-element-789650c > .elementor-element:hover img {

    transform: scale(1.18) rotate(-8deg);

}

.page-id-3520 .elementor-element-789650c .elementor-image-box-title,

.page-id-3520 .elementor-element-789650c .elementor-image-box-description,

.page-id-3520 .elementor-element-789650c p {

    transition: color 0.3s ease;

}

.page-id-3520 .elementor-element-789650c > .elementor-element:hover .elementor-image-box-title,

.page-id-3520 .elementor-element-789650c > .elementor-element:hover p {

    color: #4a3d99;

}

@keyframes spkRiseIn {

    from { opacity: 0; transform: translateY(32px); }

    to { opacity: 1; transform: none; }

}

@supports (animation-timeline: view()) {

    .page-id-3520 .elementor-element-789650c > .elementor-element {

        animation: spkRiseIn 1s cubic-bezier(0.22, 1, 0.36, 1) both;

        animation-timeline: view();

        animation-range: entry 0% entry 60%;

    }

}

/* copy card + button */

.page-id-3520 .elementor-element-f09693a {

    border-radius: 22px !important;

    box-shadow: 0 22px 36px -24px rgba(97, 82, 173, 0.55);

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;

}

.page-id-3520 .elementor-element-f09693a:hover {

    transform: translateY(-6px);

    box-shadow: 0 26px 40px -20px rgba(97, 82, 173, 0.6), 0 0 30px 0 rgba(152, 128, 244, 0.3);

}

.page-id-3520 .elementor-element-00348c8 a,

.page-id-3520 .elementor-element-d9ff639 a {

    position: relative;

    overflow: hidden;

    border-radius: 11px;

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-3520 .elementor-element-00348c8 a::before,

.page-id-3520 .elementor-element-d9ff639 a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-3520 .elementor-element-00348c8 a:hover,

.page-id-3520 .elementor-element-d9ff639 a:hover {

    transform: translateY(-3px) scale(1.04);

    box-shadow: 0 14px 28px rgba(97, 82, 173, 0.45);

}

.page-id-3520 .elementor-element-00348c8 a:hover::before,

.page-id-3520 .elementor-element-d9ff639 a:hover::before {

    left: 130%;

}

.page-id-3520 .elementor-element-00348c8 .elementor-button-icon,

.page-id-3520 .elementor-element-d9ff639 .elementor-button-icon {

    transition: transform 0.3s ease;

}

.page-id-3520 .elementor-element-00348c8 a:hover .elementor-button-icon,

.page-id-3520 .elementor-element-d9ff639 a:hover .elementor-button-icon {

    transform: translateX(6px);

}

/* photo */

.page-id-3520 .elementor-element-50661bf img {

    filter: drop-shadow(0 22px 26px rgba(97, 82, 173, 0.28));

    animation: spkPhotoFloat 7s ease-in-out infinite;

}

@keyframes spkPhotoFloat {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-8px); }

}



/* =========================================================================

   SPEAKING / BOOK ME PAGE (page-id-3520) - 3rd section "FOR BRANDS / BRING A REAL SCIENTIST INTO YOUR CLASSROOM" (dark background + photo unchanged)

   Section #a76340f; the four rows #885dcb6 / #bb4ff2f / #8e9183d / #fa228c8 in the list #b5d2673 become dark glass cards with a lavender gradient

   hairline: they slide left with a violet glow on hover, a spotlight follows the pointer, the icon ring pops and the copy turns lavender; they slide in

   one after another.

   ========================================================================= */

.page-id-3520 .elementor-element-885dcb6,

.page-id-3520 .elementor-element-bb4ff2f,

.page-id-3520 .elementor-element-8e9183d,

.page-id-3520 .elementor-element-fa228c8 {

    position: relative;

    overflow: hidden;

    box-sizing: border-box;

    border: 1px solid transparent !important;

    border-radius: 16px !important;

    background:

        linear-gradient(160deg, rgba(28, 30, 70, 0.75) 0%, rgba(12, 16, 40, 0.75) 100%) padding-box,

        linear-gradient(130deg, rgba(185, 168, 255, 0.7) 0%, rgba(255, 255, 255, 0.07) 55%, rgba(152, 128, 244, 0.55) 100%) border-box !important;

    box-shadow: 0 16px 26px -20px rgba(0, 0, 0, 0.9) !important;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;

}

.page-id-3520 .elementor-element-885dcb6::after,

.page-id-3520 .elementor-element-bb4ff2f::after,

.page-id-3520 .elementor-element-8e9183d::after,

.page-id-3520 .elementor-element-fa228c8::after {

    content: '';

    position: absolute;

    inset: 0;

    border-radius: inherit;

    pointer-events: none;

    opacity: 0;

    background: radial-gradient(220px circle at var(--mx, 50%) var(--my, 50%), rgba(152, 128, 244, 0.28), transparent 70%);

    transition: opacity 0.3s ease;

}

.page-id-3520 .elementor-element-885dcb6:hover,

.page-id-3520 .elementor-element-bb4ff2f:hover,

.page-id-3520 .elementor-element-8e9183d:hover,

.page-id-3520 .elementor-element-fa228c8:hover {

    transform: translateX(-8px);

    box-shadow: 0 22px 34px -20px rgba(152, 128, 244, 0.7), 0 0 28px -4px rgba(152, 128, 244, 0.45) !important;

}

.page-id-3520 .elementor-element-885dcb6:hover::after,

.page-id-3520 .elementor-element-bb4ff2f:hover::after,

.page-id-3520 .elementor-element-8e9183d:hover::after,

.page-id-3520 .elementor-element-fa228c8:hover::after {

    opacity: 1;

}

.page-id-3520 .elementor-element-b5d2673 img {

    transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3520 .elementor-element-b5d2673 > .elementor-element:hover img {

    transform: scale(1.15) rotate(-8deg);

}

.page-id-3520 .elementor-element-b5d2673 .elementor-image-box-title,

.page-id-3520 .elementor-element-b5d2673 .elementor-image-box-description,

.page-id-3520 .elementor-element-b5d2673 p {

    transition: color 0.3s ease;

}

.page-id-3520 .elementor-element-b5d2673 > .elementor-element:hover .elementor-image-box-title,

.page-id-3520 .elementor-element-b5d2673 > .elementor-element:hover .elementor-image-box-description,

.page-id-3520 .elementor-element-b5d2673 > .elementor-element:hover p {

    color: #C9BEFF !important;

}

@keyframes spkSlideIn {

    from { opacity: 0; transform: translateX(40px); }

    to { opacity: 1; transform: none; }

}

@supports (animation-timeline: view()) {

    .page-id-3520 .elementor-element-b5d2673 > .elementor-element {

        animation: spkSlideIn 1s cubic-bezier(0.22, 1, 0.36, 1) both;

        animation-timeline: view();

        animation-range: entry 0% entry 60%;

    }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3520 .elementor-element-50661bf img { animation: none; }

}



/* Speaking 3rd section: the stray vertical line over the row text (from a generic image-box rule) is hidden */

.page-id-3520 .elementor-element-b5d2673 .elementor-widget-image-box::before {

    display: none !important;

}

.page-id-3520 .elementor-element-b5d2673 .elementor-image-box-content {

    padding-left: 12px;

}



/* Speaking 2nd section: the "For Researchers" eyebrow stays on one line */

.page-id-3520 .elementor-element-2ffc3d9,

.page-id-3520 .elementor-element-2ffc3d9 .elementor-heading-title {

    width: auto !important;

    white-space: nowrap;

}



/* Speaking / Book Me last section: floating icon styles (same as Chat With Your Class) */

.page-id-3520 .wn-bgicons {

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    overflow: hidden;

}

.page-id-3520 .wn-bgi {

    position: absolute;

    display: block;

    transform: translate3d(calc(var(--bx, 0) * var(--d, 10) * 1px), calc(var(--by, 0) * var(--d, 10) * 1px), 0) rotate(var(--r, 0deg));

    transition: transform 0.5s ease-out;

}

.page-id-3520 .wn-bgi svg {

    display: block;

    width: 100%;

    height: auto;

    fill: var(--c);

    fill-opacity: 0.16;

    stroke: var(--c);

    stroke-opacity: 0.85;

    stroke-width: 1.6;

    stroke-linecap: round;

    stroke-linejoin: round;

    filter: drop-shadow(0 6px 10px color-mix(in srgb, var(--c) 35%, transparent));

    animation: noBgiFloat 6s ease-in-out infinite;

    animation-delay: var(--t, 0s);

    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), fill-opacity 0.3s ease;

}

.page-id-3520 .wn-bgi.wn-near svg {

    transform: scale(1.35) rotate(10deg);

    fill-opacity: 0.35;

}



/* =========================================================================

   SPEAKING / BOOK ME PAGE (page-id-3520) - 4th section "FOR BRANDS / THE SCIENCE-CREDIBLE COLLABORATOR EVERY BRAND IS LOOKING FOR"

   Section #eba8493; the four rows #fb542d7 / #df82ae0 / #31ddca5 / #6add014 in the list #043ffa8; photo #7a68144 (widget #cb81b09); button #84160db.

   Rows: white cards with a lavender / peach gradient hairline, a purple accent bar growing on the left, lifting with a violet glow on hover while a

   soft spotlight follows the pointer (customjs sets --mx / --my), the icon popping and the copy turning purple; they slide in one after another.

   Photo: soft glow behind and a gentle float. Two faint colour glows in the section background.

   ========================================================================= */

.page-id-3520 .elementor-element-eba8493 {

    position: relative;

    overflow: hidden;

}

.page-id-3520 .elementor-element-eba8493::before {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 0;

    pointer-events: none;

    background:

        radial-gradient(circle at 95% 12%, rgba(152, 128, 244, 0.14) 0%, transparent 36%),

        radial-gradient(circle at 4% 90%, rgba(255, 190, 150, 0.16) 0%, transparent 38%);

}

.page-id-3520 .elementor-element-eba8493 > .e-con-inner {

    position: relative;

    z-index: 1;

}

.page-id-3520 .elementor-element-043ffa8 {

    gap: 14px !important;

}

.page-id-3520 .elementor-element-fb542d7,

.page-id-3520 .elementor-element-df82ae0,

.page-id-3520 .elementor-element-31ddca5,

.page-id-3520 .elementor-element-6add014 {

    position: relative;

    overflow: hidden;

    box-sizing: border-box;

    border: 1px solid transparent !important;

    border-radius: 16px !important;

    background:

        linear-gradient(#ffffff, #ffffff) padding-box,

        linear-gradient(135deg, rgba(152, 128, 244, 0.55) 0%, rgba(97, 82, 173, 0.1) 50%, rgba(255, 170, 130, 0.5) 100%) border-box !important;

    box-shadow: 0 12px 22px -18px rgba(60, 40, 140, 0.45) !important;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;

}

.page-id-3520 .elementor-element-fb542d7::before,

.page-id-3520 .elementor-element-df82ae0::before,

.page-id-3520 .elementor-element-31ddca5::before,

.page-id-3520 .elementor-element-6add014::before {

    content: '';

    position: absolute;

    left: 0;

    top: 18%;

    bottom: 18%;

    width: 4px;

    border-radius: 0 4px 4px 0;

    background: linear-gradient(180deg, #9880F4, #6152AD);

    transform: scaleY(0.35);

    opacity: 0.55;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.3s ease;

    z-index: 2;

}

.page-id-3520 .elementor-element-fb542d7::after,

.page-id-3520 .elementor-element-df82ae0::after,

.page-id-3520 .elementor-element-31ddca5::after,

.page-id-3520 .elementor-element-6add014::after {

    content: '';

    position: absolute;

    inset: 0;

    border-radius: inherit;

    pointer-events: none;

    opacity: 0;

    background: radial-gradient(240px circle at var(--mx, 50%) var(--my, 50%), rgba(152, 128, 244, 0.2), transparent 70%);

    transition: opacity 0.3s ease;

}

.page-id-3520 .elementor-element-fb542d7:hover,

.page-id-3520 .elementor-element-df82ae0:hover,

.page-id-3520 .elementor-element-31ddca5:hover,

.page-id-3520 .elementor-element-6add014:hover {

    transform: translateY(-5px);

    box-shadow: 0 18px 30px -14px rgba(97, 82, 173, 0.5), 0 0 26px 2px rgba(152, 128, 244, 0.35) !important;

}

.page-id-3520 .elementor-element-fb542d7:hover::before,

.page-id-3520 .elementor-element-df82ae0:hover::before,

.page-id-3520 .elementor-element-31ddca5:hover::before,

.page-id-3520 .elementor-element-6add014:hover::before {

    transform: scaleY(1);

    opacity: 1;

}

.page-id-3520 .elementor-element-fb542d7:hover::after,

.page-id-3520 .elementor-element-df82ae0:hover::after,

.page-id-3520 .elementor-element-31ddca5:hover::after,

.page-id-3520 .elementor-element-6add014:hover::after {

    opacity: 1;

}

.page-id-3520 .elementor-element-043ffa8 .elementor-widget-image-box::before {

    display: none !important;

}

.page-id-3520 .elementor-element-043ffa8 img {

    transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3520 .elementor-element-043ffa8 > .elementor-element:hover img {

    transform: scale(1.18) rotate(-8deg);

}

.page-id-3520 .elementor-element-043ffa8 .elementor-image-box-title,

.page-id-3520 .elementor-element-043ffa8 .elementor-image-box-description,

.page-id-3520 .elementor-element-043ffa8 p {

    transition: color 0.3s ease;

}

.page-id-3520 .elementor-element-043ffa8 > .elementor-element:hover .elementor-image-box-title,

.page-id-3520 .elementor-element-043ffa8 > .elementor-element:hover p {

    color: #4a3d99;

}

@keyframes spkRowIn {

    from { opacity: 0; transform: translateX(-34px); }

    to { opacity: 1; transform: none; }

}

@supports (animation-timeline: view()) {

    .page-id-3520 .elementor-element-043ffa8 > .elementor-element:not(.elementor-widget-button) {

        animation: spkRowIn 1s cubic-bezier(0.22, 1, 0.36, 1) both;

        animation-timeline: view();

        animation-range: entry 0% entry 60%;

    }

}

.page-id-3520 .elementor-element-84160db a {

    position: relative;

    overflow: hidden;

    border-radius: 11px;

    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease;

}

.page-id-3520 .elementor-element-84160db a::before {

    content: '';

    position: absolute;

    top: 0;

    left: -60%;

    width: 40%;

    height: 100%;

    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.35), transparent);

    transform: skewX(-20deg);

    transition: left 0.6s ease;

}

.page-id-3520 .elementor-element-84160db a:hover {

    transform: translateY(-3px) scale(1.04);

    box-shadow: 0 14px 28px rgba(97, 82, 173, 0.45);

}

.page-id-3520 .elementor-element-84160db a:hover::before {

    left: 130%;

}

.page-id-3520 .elementor-element-cb81b09 {

    position: relative;

}

.page-id-3520 .elementor-element-cb81b09::before {

    content: '';

    position: absolute;

    inset: 8% 6% 0;

    z-index: 0;

    border-radius: 50%;

    background: linear-gradient(160deg, #F3ECFD 0%, #FFF0E5 100%);

    box-shadow: 0 0 60px 6px rgba(152, 128, 244, 0.22);

}

.page-id-3520 .elementor-element-cb81b09 img {

    position: relative;

    z-index: 1;

    animation: spkPhotoFloat 7s ease-in-out infinite;

}



/* =========================================================================

   SPEAKING / BOOK ME PAGE (page-id-3520) - 5th section "TRUSTED BY / BRANDS CHLOE HAS PARTNERED WITH" (background unchanged)

   Logo carousel #c8fae14: every logo sits on a frosted glass card of the same height, in full colour; hovering lifts the card with a violet glow

   and grows the logo. The "Trusted By" eyebrow stays on one line.

   ========================================================================= */

.page-id-3520 .elementor-element-52e15ad,

.page-id-3520 .elementor-element-52e15ad .elementor-heading-title {

    width: auto !important;

    white-space: nowrap;

}

.page-id-3520 .elementor-element-c8fae14 .swiper-slide {

    height: auto;

    padding: 14px 0 22px;

}

.page-id-3520 .elementor-element-c8fae14 .swiper-slide-inner {

    box-sizing: border-box;

    height: 96px;

    margin: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 14px 22px;

    background: linear-gradient(135deg, rgba(255, 255, 255, 0.85), rgba(243, 236, 253, 0.55));

    backdrop-filter: blur(12px) saturate(160%);

    -webkit-backdrop-filter: blur(12px) saturate(160%);

    border: 1px solid rgba(97, 82, 173, 0.14);

    border-radius: 16px;

    box-shadow: 0 12px 22px -18px rgba(60, 40, 140, 0.45);

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;

}

.page-id-3520 .elementor-element-c8fae14 .swiper-slide-image {

    width: auto;

    height: auto;

    max-width: 100%;

    max-height: 100%;

    object-fit: contain;

    transition: transform 0.35s ease;

}

.page-id-3520 .elementor-element-c8fae14 .swiper-slide-inner:hover {

    transform: translateY(-6px);

    border-color: rgba(97, 82, 173, 0.45);

    box-shadow: 0 18px 30px -14px rgba(97, 82, 173, 0.5), 0 0 24px 2px rgba(152, 128, 244, 0.35);

}

.page-id-3520 .elementor-element-c8fae14 .swiper-slide-inner:hover .swiper-slide-image {

    transform: scale(1.06);

}



/* =========================================================================

   SPEAKING / BOOK ME PAGE (page-id-3520) - 6th (last) section "WHAT'S NEXT": colourful floating icons in the background (customjs), photo

   (background of #93cf0d6) touching the bottom of the section; the form takes the About Me form look (see "CONTACT FORM LOOK").

   ========================================================================= */

.page-id-3520 .elementor-element-3517e54 {

    position: relative;

    overflow: hidden;

    padding-bottom: 0 !important;

}

.page-id-3520 .elementor-element-3517e54 > .e-con-inner {

    position: relative;

    z-index: 1;

    padding-bottom: 0 !important;

}

.page-id-3520 .elementor-element-4d4ddf4 {

    align-items: stretch;

}

.page-id-3520 .elementor-element-93cf0d6:not(.elementor-motion-effects-element-type-background) {

    background-position: center bottom !important;

    background-size: contain !important;

}

.page-id-3520 .elementor-element-a1ebdc7 {

    align-self: center;

    padding-bottom: 30px !important;

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3520 .elementor-element-cb81b09 img { animation: none; }

}



/* =========================================================================

   SPEAKING / BOOK ME PAGE (page-id-3520) - refinements

   1) 2nd section link cards: the left border (accent bar) is complete by default - full height, fully visible (it was a short bar that grew on hover).

   2) 4th section rows take the About Me "Beyond the Lab" card look: dark glass cards (hairline border, soft inner highlight), the round icon half outside

      the card's left edge in a lavender ring, lavender title / light text, the card sliding right with a violet glow on hover and the icon turning a little.

   3) 5th section "Trusted By": more compact vertically.

   ========================================================================= */

.page-id-3520 .elementor-element-a8d341e::before,

.page-id-3520 .elementor-element-be3fd86::before,

.page-id-3520 .elementor-element-9cdcf02::before,

.page-id-3520 .elementor-element-888c9be::before {

    top: 0;

    bottom: 0;

    border-radius: 0;

    transform: none;

    opacity: 1;

}

.page-id-3520 .elementor-element-a8d341e:hover::before,

.page-id-3520 .elementor-element-be3fd86:hover::before,

.page-id-3520 .elementor-element-9cdcf02:hover::before,

.page-id-3520 .elementor-element-888c9be:hover::before {

    transform: none;

    width: 6px;

}



/* 4th section rows - Beyond the Lab style */

.page-id-3520 .elementor-element-043ffa8 {

    padding-left: 40px !important;

    gap: 22px !important;

}

.page-id-3520 .elementor-element-fb542d7,

.page-id-3520 .elementor-element-df82ae0,

.page-id-3520 .elementor-element-31ddca5,

.page-id-3520 .elementor-element-6add014 {

    overflow: visible !important;

    padding: 14px 22px 14px 66px !important;

    border: 1px solid rgba(154, 134, 236, 0.35) !important;

    border-radius: 16px !important;

    background:

        linear-gradient(135deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.02)),

        linear-gradient(160deg, #1c2150 0%, #0e1233 100%) !important;

    box-shadow: 0 16px 30px -20px rgba(20, 14, 70, 0.8), inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;

}

.page-id-3520 .elementor-element-fb542d7::before,

.page-id-3520 .elementor-element-df82ae0::before,

.page-id-3520 .elementor-element-31ddca5::before,

.page-id-3520 .elementor-element-6add014::before {

    display: none;

}

.page-id-3520 .elementor-element-fb542d7:hover,

.page-id-3520 .elementor-element-df82ae0:hover,

.page-id-3520 .elementor-element-31ddca5:hover,

.page-id-3520 .elementor-element-6add014:hover {

    transform: translateX(6px);

    border-color: rgba(154, 134, 236, 0.75) !important;

    box-shadow: 0 20px 34px -18px rgba(97, 82, 173, 0.85), 0 0 26px -2px rgba(152, 128, 244, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;

}

.page-id-3520 .elementor-element-043ffa8 .elementor-image-box-wrapper {

    display: block;

}

.page-id-3520 .elementor-element-043ffa8 .elementor-image-box-img {

    position: absolute;

    left: -32px;

    top: 50%;

    width: 64px !important;

    height: 64px;

    margin: 0 !important;

    transform: translateY(-50%);

    z-index: 3;

    border-radius: 50%;

    background: #ffffff;

    border: 3px solid #9a86ec;

    box-shadow: 0 0 0 5px rgba(154, 134, 236, 0.22), 0 10px 18px -8px rgba(20, 14, 70, 0.7);

    display: flex;

    align-items: center;

    justify-content: center;

    transition: rotate 0.45s cubic-bezier(0.34, 1.56, 0.64, 1), scale 0.45s ease;

}

.page-id-3520 .elementor-element-043ffa8 .elementor-image-box-img img {

    width: 34px !important;

    height: 34px !important;

    object-fit: contain;

}

.page-id-3520 .elementor-element-043ffa8 > .elementor-element:hover .elementor-image-box-img {

    rotate: -6deg;

    scale: 1.08;

}

.page-id-3520 .elementor-element-043ffa8 > .elementor-element:hover .elementor-image-box-img img {

    transform: none;

}

.page-id-3520 .elementor-element-043ffa8 .elementor-image-box-content {

    padding-left: 0;

}

.page-id-3520 .elementor-element-043ffa8 .elementor-image-box-title,

.page-id-3520 .elementor-element-043ffa8 .elementor-image-box-description,

.page-id-3520 .elementor-element-043ffa8 p {

    color: #dfe1f2 !important;

}

.page-id-3520 .elementor-element-043ffa8 > .elementor-element:hover .elementor-image-box-title,

.page-id-3520 .elementor-element-043ffa8 > .elementor-element:hover .elementor-image-box-description,

.page-id-3520 .elementor-element-043ffa8 > .elementor-element:hover p {

    color: #c9bcff !important;

}

.page-id-3520 .elementor-element-fb542d7 .elementor-widget-image-box,

.page-id-3520 .elementor-element-df82ae0 .elementor-widget-image-box,

.page-id-3520 .elementor-element-31ddca5 .elementor-widget-image-box,

.page-id-3520 .elementor-element-6add014 .elementor-widget-image-box {

    position: static !important;

}



/* 5th section "Trusted By" - compact */

.page-id-3520 .elementor-element-7476d04 > .e-con-inner {

    padding-top: 28px !important;

    padding-bottom: 20px !important;

}

.page-id-3520 .elementor-element-04583d2 {

    gap: 6px !important;

    padding-top: 0 !important;

    padding-bottom: 0 !important;

}

.page-id-3520 .elementor-element-f21f1fa {

    margin-top: 0 !important;

}

.page-id-3520 .elementor-element-c8fae14 .swiper-slide {

    padding: 6px 0 10px;

}

.page-id-3520 .elementor-element-c8fae14 .swiper-slide-inner {

    height: 76px;

    padding: 10px 20px;

}



/* =========================================================================

   SPEAKING / BOOK ME PAGE (page-id-3520) - new icons + lighter cards

   3rd section (dark): lavender line icons in a glowing dark ring; the ring pulses and the icon turns on hover.

   4th section: white line icons on a purple gradient disc (half outside the card as before); the cards use a light peach -> lavender gradient

   (linear-gradient(135deg, #FFF0E5, #F3ECFD)) with a lavender hairline and dark text.

   ========================================================================= */

.page-id-3520 .elementor-element-b5d2673 .spk-ico-wrap {

    width: 56px !important;

    height: 56px;

    flex: 0 0 56px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: radial-gradient(circle at 30% 25%, #4a3d99 0%, #1c1f55 55%, #0b0e2a 100%);

    border: 2px solid rgba(185, 168, 255, 0.75);

    box-shadow: 0 0 0 5px rgba(152, 128, 244, 0.16), 0 0 22px rgba(152, 128, 244, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.25);

    transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.4s ease;

}

.page-id-3520 .elementor-element-b5d2673 .spk-ico-wrap img {

    display: none;

}

.page-id-3520 .elementor-element-b5d2673 .spk-ico {

    width: 28px;

    height: 28px;

    fill: none;

    stroke: #C9BEFF;

    stroke-width: 1.7;

    stroke-linecap: round;

    stroke-linejoin: round;

    filter: drop-shadow(0 0 6px rgba(185, 168, 255, 0.8));

    transition: stroke 0.3s ease, transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);

}

.page-id-3520 .elementor-element-b5d2673 > .elementor-element:hover .spk-ico-wrap {

    transform: scale(1.1) rotate(-6deg);

    box-shadow: 0 0 0 7px rgba(152, 128, 244, 0.26), 0 0 30px rgba(152, 128, 244, 0.85), inset 0 1px 0 rgba(255, 255, 255, 0.3);

}

.page-id-3520 .elementor-element-b5d2673 > .elementor-element:hover .spk-ico {

    stroke: #ffffff;

    transform: scale(1.08);

}

/* 4th section */

.page-id-3520 .elementor-element-043ffa8 .spk-ico-wrap {

    background: linear-gradient(135deg, #6152AD, #9880F4) !important;

    border: 3px solid #ffffff !important;

    box-shadow: 0 0 0 4px rgba(154, 134, 236, 0.3), 0 12px 20px -8px rgba(97, 82, 173, 0.7) !important;

}

.page-id-3520 .elementor-element-043ffa8 .spk-ico-wrap img {

    display: none;

}

.page-id-3520 .elementor-element-043ffa8 .spk-ico {

    width: 28px;

    height: 28px;

    fill: none;

    stroke: #ffffff;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;

}

.page-id-3520 .elementor-element-fb542d7,

.page-id-3520 .elementor-element-df82ae0,

.page-id-3520 .elementor-element-31ddca5,

.page-id-3520 .elementor-element-6add014 {

    border: 1px solid rgba(154, 134, 236, 0.45) !important;

    background: linear-gradient(135deg, #FFF0E5 0%, #F3ECFD 100%) !important;

    box-shadow: 0 14px 26px -20px rgba(97, 82, 173, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;

}

.page-id-3520 .elementor-element-fb542d7:hover,

.page-id-3520 .elementor-element-df82ae0:hover,

.page-id-3520 .elementor-element-31ddca5:hover,

.page-id-3520 .elementor-element-6add014:hover {

    border-color: rgba(97, 82, 173, 0.7) !important;

    box-shadow: 0 18px 30px -16px rgba(97, 82, 173, 0.6), 0 0 24px -2px rgba(152, 128, 244, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;

}

.page-id-3520 .elementor-element-043ffa8 .elementor-image-box-title,

.page-id-3520 .elementor-element-043ffa8 .elementor-image-box-description,

.page-id-3520 .elementor-element-043ffa8 p {

    color: #2b2470 !important;

}

.page-id-3520 .elementor-element-043ffa8 > .elementor-element:hover .elementor-image-box-title,

.page-id-3520 .elementor-element-043ffa8 > .elementor-element:hover .elementor-image-box-description,

.page-id-3520 .elementor-element-043ffa8 > .elementor-element:hover p {

    color: #6152AD !important;

}



/* Speaking 4th section: black line icons (on a white disc with the lavender ring so they stay readable) */

.page-id-3520 .elementor-element-043ffa8 .spk-ico-wrap {

    background: #ffffff !important;

    border: 3px solid #9a86ec !important;

    box-shadow: 0 0 0 4px rgba(154, 134, 236, 0.22), 0 12px 20px -8px rgba(97, 82, 173, 0.5) !important;

}

.page-id-3520 .elementor-element-043ffa8 .spk-ico {

    stroke: #111111;

}



/* Speaking last section: lighter floating background icons */

.page-id-3520 .wn-bgi svg {

    fill-opacity: 0.07;

    stroke-opacity: 0.4;

    filter: drop-shadow(0 4px 8px color-mix(in srgb, var(--c) 18%, transparent));

}

.page-id-3520 .wn-bgi.wn-near svg {

    fill-opacity: 0.16;

    stroke-opacity: 0.7;

}



/* =========================================================================

   TV & MEDIA HIGHLIGHTS (page-id-4908) - fixes

   Video Features: the card's rounded corners stay visible while it lifts / the thumbnail zooms on hover (the zoom + transform made the browser drop the

   clip, so the corners looked square): the card is its own compositing layer and the thumbnail carries the same rounded top corners.

   On the Mic: "Load More" removed (the rest of the episodes are loaded automatically by customjs), the empty space between the sub-heading and the

   cards removed (customjs: the first card starts right under it), the pink wash in the background glow is now purple, and 3 floating elements

   (mic, headphones, sound wave) float at random places on the background (built by customjs, desktop only).

   ========================================================================= */

.page-id-4908 .elementor-element-fa63e55 .cvp-card {

    border-radius: 18px;

    isolation: isolate;

    transform: translateZ(0);

    -webkit-mask-image: -webkit-radial-gradient(white, black);

}

.page-id-4908 .elementor-element-fa63e55 .cvp-thumb {

    border-radius: 18px 18px 0 0;

    isolation: isolate;

    transform: translateZ(0);

}

.page-id-4908 .elementor-element-fa63e55 .cvp-card:hover {

    transform: translateY(-8px) translateZ(0);

}

.page-id-4908 .media-highlights-load-more-wrap {

    display: block;

    margin-top: 22px;

    text-align: left;

}

.page-id-4908 .media-highlights-load-more-btn {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    padding: 13px 28px;

    border: 1px solid rgba(255, 255, 255, 0.35);

    border-radius: 50px;

    background: linear-gradient(135deg, #6152ad, #8b78e6);

    color: #ffffff;

    font-size: 14px;

    font-weight: 700;

    letter-spacing: 0.04em;

    box-shadow: 0 14px 26px -14px rgba(97, 82, 173, 0.9);

    transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;

}

.page-id-4908 .media-highlights-load-more-btn::after {

    content: "\2192";

    font-size: 16px;

    transition: transform 0.3s ease;

}

.page-id-4908 .media-highlights-load-more-btn:hover {

    opacity: 1;

    transform: translateY(-3px);

    box-shadow: 0 20px 30px -14px rgba(139, 120, 230, 0.95);

}

.page-id-4908 .media-highlights-load-more-btn:hover::after {

    transform: translateX(4px);

}



@keyframes tvFloaterBob {

    0%, 100% { transform: translateY(0) rotate(0deg); }

    50%      { transform: translateY(-14px) rotate(4deg); }

}





/* =========================================================================

   TV & MEDIA HIGHLIGHTS (page-id-4908) - second round

   1) Video Features: the swiper clips (overflow hidden) the top of a card that lifts on hover, which cut its rounded top corners - the slider gets room above.

   2) Pagination: the active dot is a dark purple gradient (was purple -> magenta) - changed above in the two pagination rules.

   3) Recognition & Reach (section #7e238f6; the three sliders of .ck-press-card): the cards become richer - a soft white -> lavender face with a lavender / peach

      gradient hairline, a purple accent line that draws across the top on hover, the card lifting with a violet glow while a spotlight follows the pointer

      (customjs sets --mx / --my), the image zooming under a gradient wash with the arrow chip, the title getting a gradient underline, and a "Read story ->"

      line whose arrow slides. Cards sit on a soft shadow with room below them.

   ========================================================================= */

.page-id-4908 .elementor-element-fa63e55 .swiper {

    padding-top: 18px;

    padding-bottom: 6px;

}

.page-id-4908 .elementor-element-7e238f6 .swiper {

    padding-top: 18px;

    padding-bottom: 14px;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card {

    position: relative;

    overflow: hidden;

    isolation: isolate;

    border: 1px solid transparent;

    border-radius: 22px;

    background:

        linear-gradient(180deg, #ffffff 0%, #f6f2ff 100%) padding-box,

        linear-gradient(135deg, rgba(152, 128, 244, 0.65) 0%, rgba(97, 82, 173, 0.12) 50%, rgba(255, 170, 130, 0.55) 100%) border-box;

    box-shadow: 0 16px 26px -20px rgba(60, 40, 140, 0.55);

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card::before {

    content: '';

    position: absolute;

    left: 0;

    right: 0;

    top: 0;

    height: 4px;

    z-index: 3;

    background: linear-gradient(90deg, #3f3490, #9880F4, #FFB48A);

    transform: scaleX(0);

    transform-origin: left center;

    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card::after {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 2;

    border-radius: inherit;

    pointer-events: none;

    opacity: 0;

    background: radial-gradient(260px circle at var(--mx, 50%) var(--my, 50%), rgba(152, 128, 244, 0.2), transparent 70%);

    transition: opacity 0.3s ease;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover {

    transform: translateY(-8px);

    border-color: transparent;

    box-shadow: 0 24px 36px -16px rgba(97, 82, 173, 0.6), 0 0 30px 2px rgba(152, 128, 244, 0.35);

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover::before {

    transform: scaleX(1);

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover::after {

    opacity: 1;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-image::before {

    content: '';

    position: absolute;

    inset: 0;

    z-index: 1;

    pointer-events: none;

    background: linear-gradient(180deg, rgba(34, 22, 90, 0) 45%, rgba(34, 22, 90, 0.55) 100%);

    opacity: 0.55;

    transition: opacity 0.4s ease;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover .ck-press-image::before {

    opacity: 1;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-image::after {

    z-index: 2;

    background: linear-gradient(135deg, #6152AD, #9880F4);

    color: #ffffff;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-title {

    background: linear-gradient(90deg, #6152AD, #9880F4) no-repeat 0 100% / 0 2px;

    transition: color 0.3s ease, background-size 0.45s ease;

    padding-bottom: 4px;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover .ck-press-title {

    background-size: 100% 2px;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-content::after {

    content: 'Read story';

    display: block;

    width: fit-content;

    margin-top: 12px;

    padding-right: 30px;

    color: #6152AD;

    font-size: 1.4rem;

    font-weight: 700;

    letter-spacing: 0.04em;

    text-transform: uppercase;

    opacity: 0.8;

    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='14' viewBox='0 0 22 14' fill='none' stroke='%236152AD' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 7h19M14 1l6 6-6 6'/%3E%3C/svg%3E") no-repeat right center;

    background-size: 20px 12px;

    transition: padding-right 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.3s ease;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover .ck-press-content::after {

    padding-right: 40px;

    opacity: 1;

}



/* On the Mic: the floating-elements layer must be positioned over the whole stage (the generic stage-children rule would make it relative) */





/* =========================================================================

   TV & MEDIA HIGHLIGHTS (page-id-4908) - third round

   1) Recognition & Reach cards: the hover gradient effects are removed (the gradient line drawn across the top, the pointer spotlight, the gradient

      underline under the title and the darkening wash on the image); the cards keep their soft lift + shadow, the image zoom and the arrow chip.

   2) Last section ("Collaborate With Chloe", row #10bb8bb): the form column is wider, like the About Me page's form (52% of the row; photo 38%).

   ========================================================================= */

.page-id-4908 .elementor-element-7e238f6 .ck-press-card::before,

.page-id-4908 .elementor-element-7e238f6 .ck-press-card::after {

    display: none !important;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover {

    box-shadow: 0 20px 32px -18px rgba(60, 40, 140, 0.45);

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-title,

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover .ck-press-title {

    background: none;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-image::before,

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover .ck-press-image::before {

    opacity: 0;

}





/* Recognition & Reach cards: the top border line (drawn across the top of the card on hover) is back; the arrow chip on the image is removed */

.page-id-4908 .elementor-element-7e238f6 .ck-press-card::before {

    display: block !important;

}

.page-id-4908 .elementor-element-7e238f6 .ck-press-image::after,

.page-id-4908 .elementor-element-7e238f6 .ck-press-card:hover .ck-press-image::after {

    display: none !important;

}





/* ==========================================================================

   SCICOM BASICS - SECTION 2 STICKY  (page-id-3506, section #813e2ea, row #186503d)

   Left: the heading block + the arch photo stay put (position: sticky) while the five cards on the right scroll past. The cards are all

   open (heading + description + points at once) and slide in as they come into view; the card nearest the middle of the window is the

   .is-active one (purple border, tinted face, filled number badge). The wrapper .sc-sticky-left is built by customjs/custom.js.

   Responsive: responsive.css (stacked, no sticky, up to 1024px).

   ========================================================================== */

.page-id-3506 .elementor-element-813e2ea > .e-con-inner {

    padding-top: 60px;

    padding-bottom: 80px;

}

.page-id-3506 .elementor-element-813e2ea .elementor-element-186503d {

    display: grid;

    grid-template-columns: minmax(0, 400px) minmax(0, 1fr);

    column-gap: 72px;

    align-items: start;

}

.page-id-3506 .elementor-element-813e2ea .sc-sticky-left {

    position: sticky;

    top: 104px;

    align-self: start;

    z-index: 2;

    display: flex;

    flex-direction: column;

    gap: 22px;

}

.page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-c31484b,

.page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-6c6d705 {

    width: 100%;

    max-width: 100%;

}

.page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-6c6d705 {

    align-self: flex-start;

}

.page-id-3506 .elementor-element-813e2ea .sc-sticky-left .elementor-element-16bf16d img {

    display: block;

    width: auto;

    max-width: 100%;

    height: auto;

    max-height: calc(100vh - 420px);

    min-height: 220px;

}



/* the cards column */

.page-id-3506 .elementor-element-813e2ea .elementor-element-f66a758 {

    width: 100%;

    max-width: none;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion {

    gap: 22px;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item,

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item[open] {

    border: 1px solid rgba(97, 82, 173, 0.16);

    border-radius: 22px;

    background: linear-gradient(160deg, #ffffff 0%, #faf8ff 100%);

    box-shadow: 0 20px 36px -28px rgba(45, 36, 99, 0.5);

    transition: opacity 0.7s ease, transform 0.7s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.35s ease, box-shadow 0.35s ease, background 0.35s ease;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item:hover,

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item[open]:hover {

    transform: none;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item.is-active,

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item.is-active:hover {

    border-color: #6152ad;

    background: linear-gradient(160deg, #ffffff 0%, #f3edff 100%);

    box-shadow: 0 30px 50px -28px rgba(97, 82, 173, 0.75);

}

/* slide-in on scroll */

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item.sc-pre {

    opacity: 0;

    transform: translateY(44px);

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item.sc-pre.sc-in {

    opacity: 1;

    transform: none;

}

/* titles: static (no open / close), number badge */

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title {

    padding: 24px 28px 14px !important;

    cursor: default;

    pointer-events: none;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title-icon {

    display: none;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title::before,

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item[open] .e-n-accordion-item-title::before {

    width: 44px;

    height: 44px;

    background: rgba(97, 82, 173, 0.12);

    color: #6152ad;

    font-size: 1.5rem;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item.is-active .e-n-accordion-item-title::before {

    background: #6152ad;

    color: #ffffff;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item-title-text,

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item[open] .e-n-accordion-item-title-text,

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item:hover .e-n-accordion-item-title-text {

    font-size: 2.1rem;

    color: #223973;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item > .e-con {

    padding: 4px 30px 28px 86px !important;

    margin: 0 !important;

    border-top: 0;

}

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item > .e-con p,

.page-id-3506 .elementor-element-813e2ea .e-n-accordion-item > .e-con li {

    font-size: 1.65rem;

    line-height: 1.65;

}

.page-id-3506 .elementor-element-813e2ea .sc-sticky-left .elementor-element-16bf16d img {

    max-height: calc(100vh - 490px);

}



/* round 2: heading | photo | cards - three columns, the photo in the CENTRE; heading and photo both stick while the cards scroll */

.page-id-3506 .elementor-element-813e2ea .elementor-element-186503d {

    grid-template-columns: minmax(0, 270px) minmax(0, 330px) minmax(0, 1fr);

    column-gap: 56px;

}

.page-id-3506 .elementor-element-813e2ea .sc-sticky-left {

    display: contents;

    position: static;

}

.page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-c31484b,

.page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-6c6d705 {

    position: sticky;

    top: 110px;

    align-self: start;

    width: 100%;

    max-width: 100%;

    z-index: 2;

}

.page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-6c6d705 {

    justify-self: center;

}

.page-id-3506 .elementor-element-813e2ea .sc-sticky-left .elementor-element-16bf16d img {

    width: 100%;

    max-height: calc(100vh - 240px);

    min-height: 260px;

    object-fit: contain;

    object-position: center top;

}



/* round 5: left column = heading + sub-line (the page's own sub-heading style) with the photo BELOW them, all sticky as one block; cards on the right */

@media (min-width: 1025px) {

    .page-id-3506 .elementor-element-813e2ea .elementor-element-186503d {

        grid-template-columns: minmax(0, calc(clamp(2.8rem, 2.2rem + 1.2vw, 4rem) * 11.5)) minmax(0, 1fr);

        column-gap: 64px;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left {

        display: flex;

        flex-direction: column;

        gap: 22px;

        position: sticky;

        top: 104px;

        align-self: start;

        z-index: 2;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-c31484b,

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-6c6d705 {

        position: static;

        grid-column: auto;

        grid-row: auto;

        width: 100%;

        max-width: 100%;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-6c6d705 {

        align-self: flex-start;

        justify-self: auto;

        max-width: 300px;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left .elementor-element-16bf16d img {

        width: auto;

        max-width: 100%;

        max-height: calc(100vh - 430px);

        min-height: 200px;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-f66a758 {

        grid-column: 2;

        grid-row: auto;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-b6cc266 .section-heading {

        white-space: nowrap;

    }

}

@media (min-width: 1025px) {

    .page-id-3506 .elementor-element-813e2ea .elementor-element-f66a758 {

        max-width: 840px;

        justify-self: end;

    }

}

@media (min-width: 1025px) {

    .page-id-3506 .elementor-element-813e2ea .elementor-element-186503d {

        column-gap: 48px;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-f66a758 {

        max-width: none;

        justify-self: stretch;

    }

}





/* round 6: bigger photo under the heading, with patches and icon chips around it so the block feels balanced (>= 1025px; the wrapper is the sticky block) */

@media (min-width: 1025px) {

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left {

        top: 84px;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-6c6d705 {

        max-width: 420px;

        padding-left: 18px;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left .elementor-element-16bf16d img {

        max-height: calc(100vh - 360px);

        min-height: 240px;

    }

    /* dotted patch behind the photo, lower right */

    .page-id-3506 .elementor-element-813e2ea .elementor-element-6c6d705::after {

        content: "";

        position: absolute;

        z-index: 0;

        right: 4%;

        bottom: 6%;

        width: 120px;

        height: 104px;

        background: radial-gradient(circle, #8b78e6 2.4px, transparent 3px) 0 0 / 17px 17px;

        opacity: 0.5;

        pointer-events: none;

    }

    /* icon chips on the right of the photo */

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left::before,

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left::after {

        content: "";

        position: absolute;

        z-index: 3;

        width: 54px;

        height: 54px;

        border-radius: 50%;

        background-color: #ffffff;

        background-repeat: no-repeat;

        background-position: center;

        background-size: 26px 26px;

        border: 1px solid #e6def9;

        box-shadow: 0 16px 26px -14px rgba(67, 54, 143, 0.55);

        pointer-events: none;

        animation: scChipFloat 6.5s ease-in-out infinite;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left::before {

        right: 2%;

        bottom: 36%;

        background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%236152ad'%20stroke-width='1.7'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='9'%20y='3'%20width='6'%20height='11'%20rx='3'/%3E%3Cpath%20d='M5%2011a7%207%200%200%200%2014%200M12%2018v3M8%2021h8'/%3E%3C/svg%3E");

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left::after {

        right: 14%;

        bottom: 12%;

        width: 46px;

        height: 46px;

        background-size: 22px 22px;

        background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%236152ad'%20stroke-width='1.7'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%2020h9'/%3E%3Cpath%20d='M16.5%203.5a2.1%202.1%200%200%201%203%203L7%2019l-4%201%201-4Z'/%3E%3C/svg%3E");

        animation-duration: 7.5s;

        animation-direction: reverse;

    }

}

@keyframes scChipFloat {

    0%, 100% { transform: translateY(0); }

    50%      { transform: translateY(-10px); }

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left::before,

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left::after {

        animation: none;

    }

}





/* ==========================================================================

   SCICOM BASICS - SECTION 2 VERTICAL TABS  (page-id-3506, section #813e2ea, cards column #f66a758)

   The accordion is replaced (by customjs/custom.js) with vertical tabs: a list of five tab buttons on the left (number badge, title, arrow; the

   active one is a filled purple gradient pill with a pointer toward the panel) and ONE content panel on the right (big faint number, title, the

   description and the bullet points as check-mark rows) that switches when a tab is chosen. The heading + photo block on the left stays sticky.

   The original accordion stays untouched in the page and is hidden by .sc-tabs-on. Responsive: responsive.css (tabs become a horizontal strip).

   ========================================================================== */

.page-id-3506 .elementor-element-813e2ea.sc-tabs-on .elementor-element-b98b26a {

    display: none;

}

.page-id-3506 .elementor-element-813e2ea .elementor-element-f66a758 {

    align-self: center;

}

.page-id-3506 .elementor-element-813e2ea .sc-vtabs {

    display: grid;

    grid-template-columns: minmax(0, 290px) minmax(0, 1fr);

    gap: 26px;

    align-items: stretch;

    width: 100%;

}



/* tab list */

.page-id-3506 .elementor-element-813e2ea .sc-tablist {

    display: flex;

    flex-direction: column;

    gap: 12px;

}

.page-id-3506 .elementor-element-813e2ea .sc-tab {

    position: relative;

    display: flex;

    align-items: center;

    gap: 14px;

    width: 100%;

    padding: 15px 16px;

    border: 1px solid rgba(97, 82, 173, 0.16);

    border-radius: 18px;

    background: linear-gradient(160deg, #ffffff 0%, #f8f5ff 100%);

    box-shadow: 0 14px 26px -22px rgba(45, 36, 99, 0.5);

    color: #223973;

    font: inherit;

    text-align: left;

    cursor: pointer;

    transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.3s ease, box-shadow 0.3s ease, background 0.3s ease, color 0.3s ease;

}

.page-id-3506 .elementor-element-813e2ea .sc-tab:hover {

    transform: translateX(5px);

    border-color: rgba(139, 120, 230, 0.7);

}

.page-id-3506 .elementor-element-813e2ea .sc-tab:focus-visible {

    outline: 3px solid rgba(139, 120, 230, 0.55);

    outline-offset: 2px;

}

.page-id-3506 .elementor-element-813e2ea .sc-tab-num {

    flex: 0 0 38px;

    width: 38px;

    height: 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: rgba(97, 82, 173, 0.12);

    color: #6152ad;

    font-size: 1.3rem;

    font-weight: 700;

    transition: background 0.3s ease, color 0.3s ease;

}

.page-id-3506 .elementor-element-813e2ea .sc-tab-title {

    flex: 1 1 auto;

    min-width: 0;

    font-size: 1.6rem;

    font-weight: 700;

    line-height: 1.3;

}

.page-id-3506 .elementor-element-813e2ea .sc-tab-arrow {

    flex: 0 0 auto;

    font-size: 1.8rem;

    line-height: 1;

    opacity: 0;

    transform: translateX(-6px);

    transition: opacity 0.3s ease, transform 0.3s ease;

}

.page-id-3506 .elementor-element-813e2ea .sc-tab.is-active {

    transform: translateX(0);

    border-color: transparent;

    background: linear-gradient(135deg, #223973 0%, #6152ad 60%, #8b78e6 100%);

    box-shadow: 0 22px 34px -18px rgba(97, 82, 173, 0.85);

    color: #ffffff;

}

.page-id-3506 .elementor-element-813e2ea .sc-tab.is-active .sc-tab-num {

    background: rgba(255, 255, 255, 0.22);

    color: #ffffff;

}

.page-id-3506 .elementor-element-813e2ea .sc-tab.is-active .sc-tab-arrow {

    opacity: 1;

    transform: translateX(0);

}

/* pointer from the active tab toward the panel */

.page-id-3506 .elementor-element-813e2ea .sc-tab.is-active::after {

    content: "";

    position: absolute;

    right: -8px;

    top: 50%;

    width: 16px;

    height: 16px;

    margin-top: -8px;

    background: #6152ad;

    transform: rotate(45deg);

    border-radius: 3px;

    z-index: 2;

}



/* panel */

.page-id-3506 .elementor-element-813e2ea .sc-panels {

    position: relative;

    min-width: 0;

}

.page-id-3506 .elementor-element-813e2ea .sc-panel {

    position: relative;

    height: 100%;

    padding: 36px 38px 38px;

    border: 1px solid rgba(97, 82, 173, 0.18);

    border-radius: 26px;

    background: linear-gradient(160deg, #ffffff 0%, #f5f0ff 100%);

    box-shadow: 0 30px 50px -32px rgba(97, 82, 173, 0.6);

    overflow: hidden;

    animation: scPanelIn 0.5s cubic-bezier(0.22, 1, 0.36, 1);

}

.page-id-3506 .elementor-element-813e2ea .sc-panel[hidden] {

    display: none;

}

@keyframes scPanelIn {

    from { opacity: 0; transform: translateX(18px); }

    to   { opacity: 1; transform: none; }

}

.page-id-3506 .elementor-element-813e2ea .sc-panel-num {

    position: absolute;

    right: 24px;

    top: 6px;

    font-size: 9rem;

    font-weight: 800;

    line-height: 1;

    letter-spacing: -0.04em;

    color: rgba(97, 82, 173, 0.08);

    pointer-events: none;

}

.page-id-3506 .elementor-element-813e2ea .sc-panel-title {

    position: relative;

    margin: 0 0 16px;

    padding-right: 90px;

    font-size: clamp(2.2rem, 1.9rem + 0.5vw, 2.8rem);

    font-weight: 700;

    line-height: 1.2;

    color: #223973;

}

.page-id-3506 .elementor-element-813e2ea .sc-panel-title::after {

    content: "";

    display: block;

    width: 54px;

    height: 4px;

    margin-top: 14px;

    border-radius: 4px;

    background: linear-gradient(90deg, #6152ad, #b9a8ff);

}

.page-id-3506 .elementor-element-813e2ea .sc-panel-body {

    position: relative;

}

.page-id-3506 .elementor-element-813e2ea .sc-panel-body p {

    margin: 0 0 14px;

    font-size: 1.7rem;

    line-height: 1.7;

    color: #3a3752;

}

.page-id-3506 .elementor-element-813e2ea .sc-panel-body ul {

    margin: 0;

    padding: 0;

    list-style: none;

}

.page-id-3506 .elementor-element-813e2ea .sc-panel-body li {

    position: relative;

    margin: 0 0 10px;

    padding: 2px 0 2px 36px;

    font-size: 1.65rem;

    line-height: 1.6;

    color: #3a3752;

}

.page-id-3506 .elementor-element-813e2ea .sc-panel-body li::before {

    content: "";

    position: absolute;

    left: 0;

    top: 4px;

    width: 24px;

    height: 24px;

    border-radius: 50%;

    background-color: rgba(97, 82, 173, 0.14);

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236152ad' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E");

    background-repeat: no-repeat;

    background-position: center;

    background-size: 14px 14px;

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3506 .elementor-element-813e2ea .sc-panel {

        animation: none;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-tab,

    .page-id-3506 .elementor-element-813e2ea .sc-tab-arrow,

    .page-id-3506 .elementor-element-813e2ea .sc-tab-num {

        transition: none;

    }

}

.page-id-3506 .elementor-element-813e2ea .sc-tab,

.page-id-3506 .elementor-element-813e2ea .sc-tab span {

    text-transform: none;

    letter-spacing: normal;

}

@media (min-width: 1025px) {

    .page-id-3506 .elementor-element-813e2ea .sc-vtabs {

        grid-template-columns: minmax(0, 250px) minmax(0, 1fr);

        gap: 24px;

    }

}





/* round 7 (>= 1025px): the title block sits on top, centred; underneath, the vertical tabs on the left and the photo on the right (no sticky any more) */

@media (min-width: 1025px) {

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left {

        display: contents;

        position: static;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left::before,

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left::after {

        display: none;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-186503d {

        grid-template-columns: minmax(0, 1fr) minmax(0, clamp(240px, 21vw, 330px));

        column-gap: 44px;

        row-gap: 34px;

        align-items: center;

    }

    /* row 1: heading block, centred */

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-c31484b {

        grid-column: 1 / -1;

        grid-row: 1;

        position: static;

        width: 100%;

        max-width: 860px;

        justify-self: center;

        align-items: center;

        text-align: center;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-c31484b > * {

        width: 100%;

        max-width: 100%;

        text-align: center;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-0a10dc6 {

        width: max-content;

        max-width: 100%;

        margin-left: auto;

        margin-right: auto;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-0a10dc6::before,

    .page-id-3506 .elementor-element-813e2ea .elementor-element-0a10dc6::after {

        left: 50%;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-0a10dc6::after {

        width: 52%;

        transform: translateX(-50%);

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-0a10dc6::before {

        left: 24%;

        width: 16%;

        transform: none;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-b6cc266 .section-heading {

        white-space: normal;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-b6cc266 .section-heading span {

        display: inline;

        margin-left: 0.22em;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-6f10788 .elementor-heading-title {

        max-width: 760px;

        margin: 0 auto;

        text-align: center;

    }

    /* row 2: tabs (left) and photo (right) */

    .page-id-3506 .elementor-element-813e2ea .elementor-element-f66a758 {

        grid-column: 1;

        grid-row: 2;

        align-self: center;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-6c6d705 {

        grid-column: 2;

        grid-row: 2;

        position: relative;

        top: auto;

        width: 100%;

        max-width: 100%;

        padding: 0;

        align-self: center;

        justify-self: center;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left .elementor-element-16bf16d img {

        width: 100%;

        height: auto;

        max-height: 560px;

        min-height: 0;

        object-fit: contain;

    }

    /* icon chips on the photo (drawn as layered backgrounds of the free ::after) */

    .page-id-3506 .elementor-element-813e2ea .elementor-element-6c6d705::after {

        content: "";

        position: absolute;

        z-index: 3;

        inset: 0;

        right: 0;

        bottom: 0;

        width: auto;

        height: auto;

        opacity: 1;

        pointer-events: none;

        background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%236152ad'%20stroke-width='1.7'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='9'%20y='3'%20width='6'%20height='11'%20rx='3'/%3E%3Cpath%20d='M5%2011a7%207%200%200%200%2014%200M12%2018v3M8%2021h8'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%236152ad'%20stroke-width='1.7'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%2020h9'/%3E%3Cpath%20d='M16.5%203.5a2.1%202.1%200%200%201%203%203L7%2019l-4%201%201-4Z'/%3E%3C/svg%3E"), radial-gradient(circle, #ffffff 0, #ffffff 25px, #e2dafa 25.5px, #e2dafa 26.5px, transparent 27px), radial-gradient(circle, #ffffff 0, #ffffff 25px, #e2dafa 25.5px, #e2dafa 26.5px, transparent 27px);

        background-repeat: no-repeat;

        background-size: 26px 26px, 22px 22px, 54px 54px, 54px 54px;

        background-position: calc(100% - 17px) 224px, 34px calc(100% - 106px), calc(100% - 3px) 210px, 18px calc(100% - 90px);

    }

}



/* round 8: short eyebrow line, purple part centred; the tabs + panel and the photo share the same height */

@media (min-width: 1025px) {

    .page-id-3506 .elementor-element-813e2ea .elementor-element-0a10dc6::after {

        width: 96px;

        left: 50%;

        transform: translateX(-50%);

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-0a10dc6::before {

        width: 38px;

        left: 50%;

        transform: translateX(-50%);

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-186503d {

        align-items: stretch;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-c31484b {

        align-self: start;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-f66a758 {

        align-self: stretch;

        display: flex;

    }

    .page-id-3506 .elementor-element-813e2ea .elementor-element-f66a758 .sc-vtabs {

        flex: 1 1 auto;

        min-height: 440px;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-tablist {

        justify-content: space-between;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-tab {

        flex: 1 1 0;

        max-height: 92px;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left > .elementor-element-6c6d705 {

        align-self: stretch;

        display: flex;

        align-items: center;

        justify-content: center;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left .elementor-element-6c6d705 .elementor-element-16bf16d {

        width: 100%;

    }

    .page-id-3506 .elementor-element-813e2ea .sc-sticky-left .elementor-element-16bf16d img {

        max-height: 440px;

    }

}





/* round 9: icons instead of numbers - in the tab badges and as the big faint mark in the panel (icons are masks, so they take the text colour) */

.page-id-3506 .elementor-element-813e2ea .sc-tab-num {

    font-size: 0;

    line-height: 0;

    color: #6152ad;

}

.page-id-3506 .elementor-element-813e2ea .sc-tab.is-active .sc-tab-num {

    color: #ffffff;

}

.page-id-3506 .elementor-element-813e2ea .sc-tab-num::before,

.page-id-3506 .elementor-element-813e2ea .sc-panel-num::before {

    content: "";

    display: block;

    background-color: currentColor;

    -webkit-mask-repeat: no-repeat;

    mask-repeat: no-repeat;

    -webkit-mask-position: center;

    mask-position: center;

    -webkit-mask-size: contain;

    mask-size: contain;

}

.page-id-3506 .elementor-element-813e2ea .sc-tab-num::before {

    width: 20px;

    height: 20px;

}

.page-id-3506 .elementor-element-813e2ea .sc-panel-num {

    font-size: 0;

    line-height: 0;

    top: 22px;

    right: 28px;

    letter-spacing: 0;

    color: rgba(97, 82, 173, 0.1);

}

.page-id-3506 .elementor-element-813e2ea .sc-panel-num::before {

    width: 92px;

    height: 92px;

}

.page-id-3506 .elementor-element-813e2ea .sc-tab:nth-child(1) .sc-tab-num::before,

.page-id-3506 .elementor-element-813e2ea .sc-panel:nth-child(1) .sc-panel-num::before {

    -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='9'%20y='3'%20width='6'%20height='11'%20rx='3'/%3E%3Cpath%20d='M5%2011a7%207%200%200%200%2014%200M12%2018v3M8%2021h8'/%3E%3C/svg%3E");

    mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='9'%20y='3'%20width='6'%20height='11'%20rx='3'/%3E%3Cpath%20d='M5%2011a7%207%200%200%200%2014%200M12%2018v3M8%2021h8'/%3E%3C/svg%3E");

}

.page-id-3506 .elementor-element-813e2ea .sc-tab:nth-child(2) .sc-tab-num::before,

.page-id-3506 .elementor-element-813e2ea .sc-panel:nth-child(2) .sc-panel-num::before {

    -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%2020h9'/%3E%3Cpath%20d='M16.5%203.5a2.1%202.1%200%200%201%203%203L7%2019l-4%201%201-4Z'/%3E%3C/svg%3E");

    mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%2020h9'/%3E%3Cpath%20d='M16.5%203.5a2.1%202.1%200%200%201%203%203L7%2019l-4%201%201-4Z'/%3E%3C/svg%3E");

}

.page-id-3506 .elementor-element-813e2ea .sc-tab:nth-child(3) .sc-tab-num::before,

.page-id-3506 .elementor-element-813e2ea .sc-panel:nth-child(3) .sc-panel-num::before {

    -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='18'%20cy='5'%20r='3'/%3E%3Ccircle%20cx='6'%20cy='12'%20r='3'/%3E%3Ccircle%20cx='18'%20cy='19'%20r='3'/%3E%3Cpath%20d='M8.6%2013.5l6.8%204M15.4%206.5l-6.8%204'/%3E%3C/svg%3E");

    mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='18'%20cy='5'%20r='3'/%3E%3Ccircle%20cx='6'%20cy='12'%20r='3'/%3E%3Ccircle%20cx='18'%20cy='19'%20r='3'/%3E%3Cpath%20d='M8.6%2013.5l6.8%204M15.4%206.5l-6.8%204'/%3E%3C/svg%3E");

}

.page-id-3506 .elementor-element-813e2ea .sc-tab:nth-child(4) .sc-tab-num::before,

.page-id-3506 .elementor-element-813e2ea .sc-panel:nth-child(4) .sc-panel-num::before {

    -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='3'%20y='7'%20width='18'%20height='13'%20rx='2'/%3E%3Cpath%20d='M8%207V5a2%202%200%200%201%202-2h4a2%202%200%200%201%202%202v2M3%2013h18'/%3E%3C/svg%3E");

    mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='3'%20y='7'%20width='18'%20height='13'%20rx='2'/%3E%3Cpath%20d='M8%207V5a2%202%200%200%201%202-2h4a2%202%200%200%201%202%202v2M3%2013h18'/%3E%3C/svg%3E");

}

.page-id-3506 .elementor-element-813e2ea .sc-tab:nth-child(5) .sc-tab-num::before,

.page-id-3506 .elementor-element-813e2ea .sc-panel:nth-child(5) .sc-panel-num::before {

    -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M3%204h18M5%204v10h14V4M12%2014v6M8%2020h8'/%3E%3C/svg%3E");

    mask-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M3%204h18M5%204v10h14V4M12%2014v6M8%2020h8'/%3E%3C/svg%3E");

}





/* ==========================================================================

   SCICOM BASICS PAGE - "BOOKS WORTH READING" REDESIGN  (page-id-3506, section #999296a; header #e6ecf20: eyebrow #621d690, heading #d541713;

   grid #04e7399 of four .houston-image cards: cover column + text column (image-box title + author, description p)).

   New design: a "bookshelf" - the header is centred and the four books are tall cards in ONE row. Each card shows the cover on a soft lavender

   "shelf" panel (the cover slightly tilted, big book shadow, number badge in the corner, a shelf line under it) and the title, the author and the

   description underneath. Hover: the cover straightens and lifts, the card rises and a gradient line fills along its top edge.

   Text, images and links untouched. Responsive: responsive.css (2 columns on tablets, 1 on phones).

   ========================================================================== */

.page-id-3506 .elementor-element-999296a > .e-con-inner {

    padding-top: 56px;

    padding-bottom: 60px;

}



/* header, centred */

.page-id-3506 .elementor-element-999296a .elementor-element-e6ecf20,

.page-id-3506 .elementor-element-999296a .elementor-element-e0343a6 {

    align-items: center;

    text-align: center;

}

.page-id-3506 .elementor-element-999296a .elementor-element-e0343a6 > * {

    width: auto;

    max-width: 100%;

    text-align: center;

}

.page-id-3506 .elementor-element-999296a .elementor-element-621d690 {

    width: max-content;

    margin-left: auto;

    margin-right: auto;

}

.page-id-3506 .elementor-element-999296a .elementor-element-621d690::after {

    left: 50%;

    width: 96px;

    transform: translateX(-50%);

}

.page-id-3506 .elementor-element-999296a .elementor-element-621d690::before {

    left: 50%;

    width: 38px;

    transform: translateX(-50%);

}

.page-id-3506 .elementor-element-999296a .elementor-element-d541713 {

    margin-left: auto;

    margin-right: auto;

}



/* the grid: four books in a row */

.page-id-3506 .elementor-element-999296a .elementor-element-04e7399 {

    grid-template-columns: repeat(4, minmax(0, 1fr));

    gap: 22px;

    align-items: stretch;

}

.page-id-3506 .elementor-element-999296a .houston-image {

    position: relative;

    display: flex;

    flex-direction: column !important;

    align-items: stretch;

    gap: 0;

    width: auto;

    min-width: 0;

    padding: 18px 18px 22px !important;

    border: 1px solid rgba(97, 82, 173, 0.14);

    border-radius: 26px;

    background: linear-gradient(170deg, #ffffff 0%, #f8f5ff 100%);

    box-shadow: 0 24px 40px -30px rgba(45, 36, 99, 0.55);

    overflow: hidden;

    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease, border-color 0.4s ease;

}

.page-id-3506 .elementor-element-999296a .houston-image:hover {

    transform: translateY(-8px);

    border-color: rgba(139, 120, 230, 0.6);

    box-shadow: 0 32px 50px -30px rgba(97, 82, 173, 0.7);

}

.page-id-3506 .elementor-element-999296a .houston-image::before {

    content: "";

    position: absolute;

    left: 0;

    right: 0;

    top: 0;

    bottom: auto;

    width: auto;

    height: 4px;

    border: 0;

    background: linear-gradient(90deg, #223973 0%, #6152ad 55%, #8b78e6 100%);

    transform: scaleX(0.25);

    transform-origin: left;

    opacity: 1;

    transition: transform 0.5s ease;

    z-index: 3;

}

.page-id-3506 .elementor-element-999296a .houston-image:hover::before {

    transform: scaleX(1);

}



/* cover on a shelf panel */

.page-id-3506 .elementor-element-999296a .houston-image > .e-con:first-child {

    position: relative;

    z-index: 1;

    width: 100% !important;

    padding: 26px 12px 30px !important;

    margin: 0 0 18px;

    display: flex;

    justify-content: center;

    align-items: flex-end;

    border-radius: 18px;

    background:

        linear-gradient(180deg, transparent calc(100% - 12px), rgba(97, 82, 173, 0.22) calc(100% - 12px), rgba(97, 82, 173, 0.08) 100%),

        radial-gradient(ellipse 80% 70% at 50% 40%, rgba(185, 168, 255, 0.35) 0%, rgba(185, 168, 255, 0) 75%),

        linear-gradient(180deg, #efe9ff 0%, #e6defb 100%);

}

.page-id-3506 .elementor-element-999296a .houston-image > .e-con:first-child .elementor-widget-image {

    width: auto !important;

    max-width: 100%;

}

.page-id-3506 .elementor-element-999296a .houston-image > .e-con:first-child img {

    display: block;

    width: auto !important;

    max-width: 100%;

    height: clamp(190px, 17vw, 250px) !important;

    object-fit: contain;

    border-radius: 6px 3px 3px 6px;

    transform: rotate(-3deg);

    transform-origin: bottom center;

    box-shadow: 0 22px 30px -12px rgba(34, 24, 92, 0.55), 0 2px 5px rgba(0, 0, 0, 0.25);

    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.5s ease;

}

.page-id-3506 .elementor-element-999296a .houston-image:nth-child(even) > .e-con:first-child img {

    transform: rotate(3deg);

}

.page-id-3506 .elementor-element-999296a .houston-image:hover > .e-con:first-child img {

    transform: translateY(-8px) rotate(0deg) scale(1.04);

    box-shadow: 0 30px 38px -14px rgba(97, 82, 173, 0.7), 0 2px 5px rgba(0, 0, 0, 0.25);

}



/* number badge on the shelf panel */

.page-id-3506 .elementor-element-999296a .houston-image > .e-con:nth-child(2) {

    position: static;

    width: 100% !important;

    padding: 0 4px !important;

    border: 0;

    border-radius: 0 !important;

    background: none !important;

    box-shadow: none !important;

}

.page-id-3506 .elementor-element-999296a .houston-image > .e-con:nth-child(2)::after {

    top: 30px;

    left: 30px;

    right: auto;

    z-index: 4;

    padding: 4px 11px;

    background: #ffffff;

    box-shadow: 0 8px 14px -8px rgba(45, 36, 99, 0.5);

}



/* text */

.page-id-3506 .elementor-element-999296a .houston-image .elementor-image-box-title {

    padding-right: 0;

    margin-bottom: 4px;

    font-size: 1.9rem;

    line-height: 1.25;

    color: #223973;

}

.page-id-3506 .elementor-element-999296a .houston-image .elementor-image-box-description {

    margin-bottom: 10px;

    font-size: 1.45rem;

    font-weight: 600;

    font-style: italic;

    color: #6152ad;

}

.page-id-3506 .elementor-element-999296a .houston-image > .e-con:nth-child(2) > p {

    margin: 0;

    font-size: 1.5rem;

    line-height: 1.65;

    color: #4a4763;

}

.page-id-3506 .elementor-element-999296a .houston-image > .e-con:nth-child(2) .elementor-widget-image-box {

    width: 100% !important;

    max-width: 100% !important;

}

@media (prefers-reduced-motion: reduce) {

    .page-id-3506 .elementor-element-999296a .houston-image,

    .page-id-3506 .elementor-element-999296a .houston-image::before,

    .page-id-3506 .elementor-element-999296a .houston-image > .e-con:first-child img {

        transition: none;

    }

}

.page-id-3506 .elementor-element-999296a .houston-image > .e-con:first-child {

    flex-direction: row !important;

}

/* Books Worth Reading: no 01-04 number badges on the cards */

.page-id-3506 .elementor-element-999296a .houston-image > .e-con:nth-child(2)::after {

    display: none !important;

}

/* Books Worth Reading: one row of books - the Elementor grid kept two (equal) rows, which left about 600px of empty space under the cards */

.page-id-3506 .elementor-element-999296a .elementor-element-04e7399 {

    grid-template-rows: auto;

    grid-auto-rows: auto;

}

.page-id-3506 .elementor-element-999296a {

    contain-intrinsic-size: auto 880px;

}

/* Books Worth Reading: tighter space between the author line and the description */

.page-id-3506 .elementor-element-999296a .houston-image > .e-con:nth-child(2) {

    gap: 2px;

}

.page-id-3506 .elementor-element-999296a .houston-image > .e-con:nth-child(2) > .elementor-widget-image-box,

.page-id-3506 .elementor-element-999296a .houston-image > .e-con:nth-child(2) > .elementor-widget {

    margin-bottom: 0 !important;

}

.page-id-3506 .elementor-element-999296a .houston-image .elementor-image-box-description {

    margin-bottom: 0;

}





/* Media Mentions logo carousel (page-id-4908, #f1884b9): the swiper clips everything outside its box (overflow: hidden) and was exactly as tall as the cards,

   so a hovered card (it lifts 3px) was cut off at the top. The swiper gets 12px of room above / below (compensated with negative margins, so nothing moves),

   and the slide movement is linear so the logos glide continuously. */

.page-id-4908 .elementor-element-f1884b9 .swiper {

    padding-top: 12px;

    padding-bottom: 14px;

    margin-top: -12px;

    margin-bottom: -14px;

}

.page-id-4908 .elementor-element-f1884b9 .swiper-wrapper {

    transition-timing-function: linear !important;

}



/* Video Features ("Chloe on Camera", page-id-4908): less space between the sub-line and the video cards (the header block, the slider container and the

   slider wrapper each added their own top / bottom padding) */

.page-id-4908 .elementor-element-3f3c23a {

    padding-bottom: 0;

}

.page-id-4908 .elementor-element-fa63e55 {

    padding-top: 0;

}

.page-id-4908 .elementor-element-fa63e55 .youtube-highlights-slider-wrapper {

    margin-top: -14px;

}





/* TV & Media "On the Mic": equalizer-bars icon instead of the play triangle on the round button; Load More button removed */

.page-id-4908 .media-play-btn .play-icon,

.page-id-4908 .media-item.is-active .play-icon,

.page-id-4908 .media-play-btn:hover .play-icon {

    width: 20px;

    height: 18px;

    margin: 0;

    border: 0;

    background:

        linear-gradient(#6152ad, #6152ad) 1px 100% / 3px 7px no-repeat,

        linear-gradient(#6152ad, #6152ad) 6px 100% / 3px 16px no-repeat,

        linear-gradient(#6152ad, #6152ad) 11px 100% / 3px 11px no-repeat,

        linear-gradient(#6152ad, #6152ad) 16px 100% / 3px 14px no-repeat;

    border-radius: 0;

}

.page-id-4908 .media-highlights-load-more-wrap {

    display: none !important;

}





/* TV & Media Highlights: the lavender "Recognition & Reach" section (#7e238f6) fades softly into the white section below it instead of ending on a hard edge */

.page-id-4908 .elementor-4908 .elementor-element.elementor-element-7e238f6,

.page-id-4908 .elementor-element-7e238f6 {

    background-image:

        linear-gradient(180deg, rgba(255, 255, 255, 0) calc(100% - 150px), #ffffff 100%),

        radial-gradient(ellipse 40% 60% at 8% 12%, rgba(185, 168, 255, 0.55) 0%, rgba(185, 168, 255, 0) 70%),

        radial-gradient(ellipse 35% 55% at 95% 92%, rgba(255, 214, 180, 0.45) 0%, rgba(255, 214, 180, 0) 70%),

        linear-gradient(135deg, #F4F0FF 0%, #EAE3FF 55%, #F8F4FF 100%) !important;

}





/* Discovered at Microsoft banner: the four-tile Microsoft mark moves from above the eyebrow into the location chip (left of the text); the CTA arrow becomes a round "scroll down" button */

.page-id-8876 .elementor-element-adc7aa8::before {

    display: none !important;

}

.page-id-8876 .elementor-element-fe99467 .elementor-image-box-wrapper {

    padding-left: 58px;

}

.page-id-8876 .elementor-element-fe99467 .elementor-image-box-wrapper::after {

    content: '';

    position: absolute;

    left: 24px;

    top: 50%;

    width: 24px;

    height: 24px;

    margin-top: -12px;

    background:

        linear-gradient(#F25022, #F25022) 0 0 / 11px 11px no-repeat,

        linear-gradient(#7FBA00, #7FBA00) 13px 0 / 11px 11px no-repeat,

        linear-gradient(#00A4EF, #00A4EF) 0 13px / 11px 11px no-repeat,

        linear-gradient(#FFB900, #FFB900) 13px 13px / 11px 11px no-repeat;

    border-radius: 2px;

}

.page-id-8876 .elementor-element-cea66ab .elementor-button-content-wrapper {

    align-items: center;

    gap: 12px;

}

.page-id-8876 .elementor-element-cea66ab .elementor-button-icon {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    width: 30px;

    height: 30px;

    border: 1.5px solid rgba(255, 255, 255, 0.85);

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.16);

}

.page-id-8876 .elementor-element-cea66ab .elementor-button-icon svg {

    width: 12px;

    height: 14px;

}





/* Discovered at Microsoft "Final Thoughts": the rule drawn under the main heading is removed and a few of the background icons are dropped */

.page-id-8876 .elementor-element-4e0405e8::after,

.page-id-8876 .elementor-element-6e342fec.ms-in .elementor-element-4e0405e8::after,

.page-id-8876 .elementor-element-6e342fec:hover .elementor-element-4e0405e8::after {

    display: none;

}

.page-id-8876 .elementor-element-3c6ac56c .ms-bgicons > :nth-child(3n) {

    display: none;

}





/* Discovered at Microsoft banner: the "See What I Found" CTA is removed (the dashed "Scroll down" cue takes its place) */

.page-id-8876 .elementor-element-cea66ab {

    display: none !important;

}





/* Discovered at Microsoft "The Work" (dark): the accent words of the heading use the same lavender -> sky gradient as the other dark sections ("On the Ground") */

.page-id-8876 .elementor-element-54814ff7 .section-heading {

    color: #ffffff !important;

}

.page-id-8876 .elementor-element-54814ff7 .section-heading .colorTxt {

    background-image: linear-gradient(100deg, #B9A8FF 0%, #7FD3FF 100%) !important;

    -webkit-background-clip: text !important;

    background-clip: text !important;

    -webkit-text-fill-color: transparent;

    color: transparent !important;

}



/* Discovered at Microsoft dark sections ("On the Ground", "The Work"): heading colours follow the About Me "Beyond the Lab" dark section - white eyebrow, white heading, solid #9880F4 italic accent words */
.page-id-8876 .elementor-element-cf74ff7 .elementor-heading-title,
.page-id-8876 .elementor-element-a3c0f66 .elementor-heading-title {
    color: #ffffff !important;
}
.page-id-8876 .elementor-element-33b487e0 .colorTxt,
.page-id-8876 .elementor-element-54814ff7 .section-heading .colorTxt {
    background: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
    -webkit-text-fill-color: #9880F4 !important;
    color: #9880F4 !important;
}


/* Discovered at Microsoft "The Work": the big 01 / 02 / 03 numerals are replaced by a small glowing sparkle chip in the card's corner */
.page-id-8876 .elementor-element-16a41eb9::after,
.page-id-8876 .elementor-element-33551c02::after,
.page-id-8876 .elementor-element-2a961620::after {
    content: '\2726';
    right: 20px;
    bottom: 18px;
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--ac);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.06);
    box-shadow: 0 0 16px -2px var(--ac);
    font-size: 1.5rem;
    font-weight: 400;
    color: #ffffff;
    -webkit-text-stroke: 0;
    opacity: 0.55;
}
.page-id-8876 .elementor-element-33551c02::after,
.page-id-8876 .elementor-element-2a961620::after {
    content: '\2726';
}
.page-id-8876 .elementor-element-16a41eb9:hover::after,
.page-id-8876 .elementor-element-33551c02:hover::after,
.page-id-8876 .elementor-element-2a961620:hover::after {
    opacity: 1;
}


/* Innovation in Norway banner: the "Watch The Highlights" CTA is removed (the dashed scroll cue, labelled "Watch the highlights", takes its place) */
.page-id-8886 .elementor-element-7ec73e15 {
    display: none !important;
}


/* Innovation in Norway dark sections ("On the Ground" #5edc92a9, "Oslo in Frames" #4834ea43): heading colours follow the About Me "Beyond the Lab" dark section - white eyebrow, white heading, solid #9880F4 italic accent words */
.page-id-8886 :is(.elementor-element-5edc92a9, .elementor-element-4834ea43) .purple-heading .elementor-heading-title {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}
.page-id-8886 :is(.elementor-element-5edc92a9, .elementor-element-4834ea43) .section-heading {
    color: #ffffff !important;
}
.page-id-8886 :is(.elementor-element-5edc92a9, .elementor-element-4834ea43) .section-heading :is(.colorTxt, .banner-colorTxt) {
    background: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
    -webkit-text-fill-color: #9880F4 !important;
    color: #9880F4 !important;
}
.page-id-8886 .elementor-element-4834ea43 .elementor-widget-heading:not(.elementor-widget-html) h2.elementor-heading-title {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}




/* Innovation in Norway "What I Took Away": the big outlined 01 / 02 / 03 numeral under the heading is replaced by three progress dots (the active one stretches into a pill and follows the active card); the two columns are centred vertically against each other */

.page-id-8886 .elementor-element-a643dd2 {

    align-items: center;

}

.page-id-8886 .elementor-element-3c382466 {

    align-self: center;

}

.page-id-8886 .elementor-element-3c382466::after {

    content: '';

    width: 78px;

    height: 10px;

    margin-top: 26px;

    font-size: 0;

    border: 0;

    -webkit-text-stroke: 0;

    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 78 10'%3E%3Cdefs%3E%3ClinearGradient id='g'%3E%3Cstop offset='0' stop-color='%236152AD'/%3E%3Cstop offset='1' stop-color='%239880F4'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect x='0' y='0' width='38' height='10' rx='5' fill='url(%23g)'/%3E%3Crect x='48' y='0' width='10' height='10' rx='5' fill='%23cdbff9'/%3E%3Crect x='68' y='0' width='10' height='10' rx='5' fill='%23cdbff9'/%3E%3C/svg%3E") no-repeat 0 0 / 78px 10px;

}

.page-id-8886 .elementor-element-3c382466[data-n="02"]::after {

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 78 10'%3E%3Cdefs%3E%3ClinearGradient id='g'%3E%3Cstop offset='0' stop-color='%236152AD'/%3E%3Cstop offset='1' stop-color='%239880F4'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect x='0' y='0' width='10' height='10' rx='5' fill='%23cdbff9'/%3E%3Crect x='20' y='0' width='38' height='10' rx='5' fill='url(%23g)'/%3E%3Crect x='68' y='0' width='10' height='10' rx='5' fill='%23cdbff9'/%3E%3C/svg%3E");

}

.page-id-8886 .elementor-element-3c382466[data-n="03"]::after {

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 78 10'%3E%3Cdefs%3E%3ClinearGradient id='g'%3E%3Cstop offset='0' stop-color='%236152AD'/%3E%3Cstop offset='1' stop-color='%239880F4'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect x='0' y='0' width='10' height='10' rx='5' fill='%23cdbff9'/%3E%3Crect x='20' y='0' width='10' height='10' rx='5' fill='%23cdbff9'/%3E%3Crect x='40' y='0' width='38' height='10' rx='5' fill='url(%23g)'/%3E%3C/svg%3E");

}



/* Innovation in Norway "On the Ground" (#5edc92a9): the "Watch On Instagram" CTA gets Instagram's colours, five of the background icons are dropped and the text column + reels column are centred vertically against each other */
.page-id-8886 .elementor-element-57ea791d a,
.page-id-8886 .elementor-element-57ea791d a:hover {
    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%) !important;
    border-color: transparent !important;
    box-shadow: 0 10px 24px -10px rgba(220, 39, 67, 0.7);
}
.page-id-8886 .elementor-element-57ea791d a:hover {
    box-shadow: 0 16px 30px -10px rgba(220, 39, 67, 0.9);
}
.page-id-8886 .elementor-element-5edc92a9 .no-bgicons > :is(:nth-child(2), :nth-child(3), :nth-child(6), :nth-child(9), :nth-child(12)) {
    display: none;
}
.page-id-8886 .elementor-element-30a55df {
    align-items: center;
}
.page-id-8886 .elementor-element-30a55df > .elementor-element {
    align-self: center;
}


/* Innovation in Norway "Day by day in Oslo" (#4f470826): the reels column and the text column are centred vertically against each other */
.page-id-8886 .elementor-element-4ccd03ef {
    align-items: center;
}
.page-id-8886 .elementor-element-4ccd03ef > .elementor-element {
    align-self: center;
}


/* Innovation in Norway "In Conversation" (#1c2cf520): the space under the slider arrows is trimmed so the top and bottom padding of the section are equal */
.page-id-8886 .elementor-element-343b8509 {
    padding-bottom: 0 !important;
}
.page-id-8886 .elementor-element-343b8509 .slick-initialized {
    margin-bottom: 64px !important;
}





/* ###########################################################################

   LATEST CHANGES - 5 Oct 2026 (merged from custom-changes.css)

   ########################################################################### */

/* New custom changes go here */

/* =========================================================================
   SCIENCE READS PAGE (page-id-3495) - fixes
   ========================================================================= */

/* No horizontal scrollbar at any width: decorative pseudo-elements / rings
   (e.g. the "Behind the List" ::after, the slider track) poke past the right
   edge, which also widens the layout viewport on mobile. Clip them. */
body.page-id-3495 .elementor-3495 {
    overflow-x: clip;
}

/* Featured Reads cards: identical size at every screen width.
   Two equal columns, every row the same height (grid-auto-rows: 1fr), and the
   card fills its link so the glass panel is always the same size. */
body.page-id-3495 .featured-books-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 1fr;
    justify-content: normal;
    gap: 14px;
}
body.page-id-3495 .featured-books-grid .featured-book-link {
    display: flex;
    width: auto;
    min-width: 0;
}
body.page-id-3495 .featured-books-grid .featured-book-card {
    flex: 1 1 auto;
    width: 100%;
    box-sizing: border-box;
}


/* =========================================================================
   NON-TRADITIONAL SCIENCE CAREERS PAGE (page-id-3499)
   ========================================================================= */

/* No horizontal scrollbar at any width (decorative pseudo-elements poke out) */
body.page-id-3499 .elementor-3499 {
    overflow-x: clip;
}


/* =========================================================================
   BLOGS PAGE (page-id-3502)
   ========================================================================= */

/* Eyebrows always on one line, at every screen size */
body.page-id-3502 .elementor-3502 .elementor-element-0067741,
body.page-id-3502 .elementor-3502 .elementor-element-a979bb0,
body.page-id-3502 .elementor-3502 .elementor-element-5a72177,
body.page-id-3502 .elementor-3502 .elementor-element-89803a8,
body.page-id-3502 .elementor-3502 .elementor-element-81a1681 {
    width: auto !important;
    max-width: none !important;
}
body.page-id-3502 .elementor-element-0067741 .elementor-heading-title,
body.page-id-3502 .elementor-element-a979bb0 .elementor-heading-title,
body.page-id-3502 .elementor-element-5a72177 .elementor-heading-title,
body.page-id-3502 .elementor-element-89803a8 .elementor-heading-title,
body.page-id-3502 .elementor-element-81a1681 .elementor-heading-title {
    white-space: nowrap;
}

/* All Blogs filters: compact tabs + search bar */
body.page-id-3502 .elementor-3502 .elementor-element-5342edb .blog-top-bar {
    margin-bottom: 18px;
    gap: 12px;
}
body.page-id-3502 .elementor-3502 .elementor-element-5342edb .blog-tabs {
    gap: 8px !important;
}
body.page-id-3502 .elementor-3502 .elementor-element-5342edb .blog-tabs button {
    font-size: 1.3rem;
    padding: 5px 13px !important;
    line-height: 1.2;
}
body.page-id-3502 .elementor-3502 .elementor-element-5342edb .blog-search input {
    height: 38px;
    font-size: 1.3rem;
}


/* =========================================================================
   NO DUMB QUESTIONS - JOURNAL CLUB PAGE (page-id-4980)
   ========================================================================= */

/* No horizontal scrollbar at any width (decorative elements poke out) */
body.page-id-4980 .elementor-4980 {
    overflow-x: clip;
}


/* =========================================================================
   SCIENCE POLICY 101 PAGE (page-id-3514)
   ========================================================================= */

/* Eyebrows always on one line (they were squeezed to ~80px and wrapped) */
body.page-id-3514 .elementor-3514 .elementor-element-21562b1,
body.page-id-3514 .elementor-3514 .elementor-element-f1b49c5,
body.page-id-3514 .elementor-3514 .elementor-element-92bf750,
body.page-id-3514 .elementor-3514 .elementor-element-4879a5d,
body.page-id-3514 .elementor-3514 .elementor-element-ebf9b69 {
    width: auto !important;
    max-width: none !important;
}
body.page-id-3514 .elementor-element-21562b1 .elementor-heading-title,
body.page-id-3514 .elementor-element-f1b49c5 .elementor-heading-title,
body.page-id-3514 .elementor-element-92bf750 .elementor-heading-title,
body.page-id-3514 .elementor-element-4879a5d .elementor-heading-title,
body.page-id-3514 .elementor-element-ebf9b69 .elementor-heading-title {
    white-space: nowrap;
}

/* no horizontal scrollbar */
body.page-id-3514 .elementor-3514 {
    overflow-x: clip;
}


/* =========================================================================
   CLASSROOM SCIENCE PAGE (page-id-3516)
   ========================================================================= */

/* Eyebrows always on one line (squeezed widgets wrapped them) */
body.page-id-3516 .elementor-3516 .elementor-element-7127f4c,
body.page-id-3516 .elementor-3516 .elementor-element-a21cf27,
body.page-id-3516 .elementor-3516 .elementor-element-e5f0ee9,
body.page-id-3516 .elementor-3516 .elementor-element-de3a664,
body.page-id-3516 .elementor-3516 .elementor-element-8961196,
body.page-id-3516 .elementor-3516 .elementor-element-5f22aba {
    width: auto !important;
    max-width: none !important;
}
body.page-id-3516 .elementor-element-7127f4c .elementor-heading-title,
body.page-id-3516 .elementor-element-a21cf27 .elementor-heading-title,
body.page-id-3516 .elementor-element-e5f0ee9 .elementor-heading-title,
body.page-id-3516 .elementor-element-de3a664 .elementor-heading-title,
body.page-id-3516 .elementor-element-8961196 .elementor-heading-title,
body.page-id-3516 .elementor-element-5f22aba .elementor-heading-title {
    white-space: nowrap;
}

/* "The Internet's Best Science Classrooms": the person photo and its circle
   sit on the very bottom edge of the section (the section has 50px bottom
   padding) and are a little bigger */
@media (min-width: 1025px) {
    body.page-id-3516 .elementor-3516 .elementor-element-33c4a8a {
        left: -8% !important;
        right: auto !important;
        bottom: 0 !important;
        width: 116% !important;
    }
    body.page-id-3516 .elementor-3516 .elementor-element-08f98a3 {
        left: -8% !important;
        right: auto !important;
        bottom: 0 !important;
        width: 108% !important;
    }
    body.page-id-3516 .elementor-3516 .elementor-element-33c4a8a img {
        width: 100%;
        max-width: 100%;
        height: 340px;
    }
    body.page-id-3516 .elementor-3516 .elementor-element-08f98a3 img {
        width: 100%;
        max-width: 100%;
        height: 350px;
    }
}


/* =========================================================================
   REFORMING ACADEMIA PODCAST PAGE (page-id-3508)
   ========================================================================= */

/* Behind the Mic "Load More": no arrow circle after the label (all screens) */
body.page-id-3508 .elementor-3508 .elementor-element-34b152b .podcast-load-more-btn::after {
    content: none !important;
    display: none !important;
}


/* =========================================================================
   TV & MEDIA HIGHLIGHTS PAGE (page-id-4908)
   ========================================================================= */

/* "On the Mic": the host photo sits right on the bottom edge of the section
   (the section has 64px bottom padding) */
body.page-id-4908 .elementor-4908 .elementor-element-a86f7b1 .elementor-element-aa30b7b {
    align-self: flex-end;
    margin-bottom: -64px;
}


/* =========================================================================
   BIOTECHTV PAGE (page-id-4910)
   ========================================================================= */

/* "Hit Play": fewer background icons - 5 of the 12 stay (TV, mic, DNA,
   globe, chat bubble) */
body.page-id-4910 .elementor-element-b1b464e .bt-bgicons .bt-bgi:nth-child(2),
body.page-id-4910 .elementor-element-b1b464e .bt-bgicons .bt-bgi:nth-child(4),
body.page-id-4910 .elementor-element-b1b464e .bt-bgicons .bt-bgi:nth-child(6),
body.page-id-4910 .elementor-element-b1b464e .bt-bgicons .bt-bgi:nth-child(7),
body.page-id-4910 .elementor-element-b1b464e .bt-bgicons .bt-bgi:nth-child(8),
body.page-id-4910 .elementor-element-b1b464e .bt-bgicons .bt-bgi:nth-child(10),
body.page-id-4910 .elementor-element-b1b464e .bt-bgicons .bt-bgi:nth-child(11) {
    display: none;
}


/* =========================================================================
   SPEAKING / BOOK ME PAGE (page-id-3520)
   ========================================================================= */

/* 2nd "For Brands" section: the pointer pills fill the left column so it is
   as tall as the photo on the right (side-by-side layout only) */
@media (min-width: 1025px) {
    body.page-id-3520 .elementor-3520 .elementor-element-bc8b860 {
        align-items: stretch;
    }
    body.page-id-3520 .elementor-3520 .elementor-element-043ffa8 {
        justify-content: space-between;
    }
    body.page-id-3520 .elementor-3520 .elementor-element-fb542d7,
    body.page-id-3520 .elementor-3520 .elementor-element-df82ae0,
    body.page-id-3520 .elementor-3520 .elementor-element-31ddca5,
    body.page-id-3520 .elementor-3520 .elementor-element-6add014 {
        flex: 1 1 auto;
        justify-content: center;
    }
}

/* no horizontal scrollbar at any width */
body.page-id-3520 .elementor-3520 {
    overflow-x: clip;
}

/* Eyebrows always on one line (squeezed widgets wrapped them) */
body.page-id-3520 .elementor-3520 .elementor-element-d82c188,
body.page-id-3520 .elementor-3520 .elementor-element-2ffc3d9,
body.page-id-3520 .elementor-3520 .elementor-element-439e8be,
body.page-id-3520 .elementor-3520 .elementor-element-fbed5ca,
body.page-id-3520 .elementor-3520 .elementor-element-52e15ad,
body.page-id-3520 .elementor-3520 .elementor-element-ce619b6 {
    width: auto !important;
    max-width: none !important;
}
body.page-id-3520 .elementor-element-d82c188 .elementor-heading-title,
body.page-id-3520 .elementor-element-2ffc3d9 .elementor-heading-title,
body.page-id-3520 .elementor-element-439e8be .elementor-heading-title,
body.page-id-3520 .elementor-element-fbed5ca .elementor-heading-title,
body.page-id-3520 .elementor-element-52e15ad .elementor-heading-title,
body.page-id-3520 .elementor-element-ce619b6 .elementor-heading-title {
    white-space: nowrap;
}


/* =========================================================================
   ACADEMICS "LET ME SHARE YOUR SCIENCE" PAGE (page-id-3537)
   ========================================================================= */

/* Banner: the DNA strip on the left edge is removed */
body.page-id-3537 .elementor-element-e6c642e::before {
    display: none !important;
}

/* "Why Chloe": fewer background icons - 5 of the 13 stay (top-left, top-right,
   bottom-left, bottom-middle, bottom-right) */
body.page-id-3537 .elementor-element-67f10f0 .ac-bgicons .ac-bgi:nth-child(2),
body.page-id-3537 .elementor-element-67f10f0 .ac-bgicons .ac-bgi:nth-child(3),
body.page-id-3537 .elementor-element-67f10f0 .ac-bgicons .ac-bgi:nth-child(5),
body.page-id-3537 .elementor-element-67f10f0 .ac-bgicons .ac-bgi:nth-child(6),
body.page-id-3537 .elementor-element-67f10f0 .ac-bgicons .ac-bgi:nth-child(8),
body.page-id-3537 .elementor-element-67f10f0 .ac-bgicons .ac-bgi:nth-child(10),
body.page-id-3537 .elementor-element-67f10f0 .ac-bgicons .ac-bgi:nth-child(12),
body.page-id-3537 .elementor-element-67f10f0 .ac-bgicons .ac-bgi:nth-child(13) {
    display: none;
}


/* =========================================================================
   CHAT WITH YOUR CLASS PAGE (page-id-3540)
   ========================================================================= */

/* "What's Next" (form) section: fewer and lighter background icons - 5 of the
   15 stay, at a low opacity */
body.page-id-3540 .elementor-element-53f6636 .wn-bgicons {
    opacity: 0.35;
}
body.page-id-3540 .elementor-element-53f6636 .wn-bgicons .wn-bgi:nth-child(2),
body.page-id-3540 .elementor-element-53f6636 .wn-bgicons .wn-bgi:nth-child(3),
body.page-id-3540 .elementor-element-53f6636 .wn-bgicons .wn-bgi:nth-child(5),
body.page-id-3540 .elementor-element-53f6636 .wn-bgicons .wn-bgi:nth-child(6),
body.page-id-3540 .elementor-element-53f6636 .wn-bgicons .wn-bgi:nth-child(8),
body.page-id-3540 .elementor-element-53f6636 .wn-bgicons .wn-bgi:nth-child(10),
body.page-id-3540 .elementor-element-53f6636 .wn-bgicons .wn-bgi:nth-child(12),
body.page-id-3540 .elementor-element-53f6636 .wn-bgicons .wn-bgi:nth-child(13),
body.page-id-3540 .elementor-element-53f6636 .wn-bgicons .wn-bgi:nth-child(14),
body.page-id-3540 .elementor-element-53f6636 .wn-bgicons .wn-bgi:nth-child(15) {
    display: none;
}


/* =========================================================================
   COLLABORATE WITH ME PAGE (page-id-3543)
   ========================================================================= */

/* Eyebrows always on one line (squeezed widgets wrapped them) */
body.page-id-3543 .elementor-3543 .elementor-element-019e10f,
body.page-id-3543 .elementor-3543 .elementor-element-e40359f,
body.page-id-3543 .elementor-3543 .elementor-element-efe87fa,
body.page-id-3543 .elementor-3543 .elementor-element-9ce9c7f,
body.page-id-3543 .elementor-3543 .elementor-element-6c891ba,
body.page-id-3543 .elementor-3543 .elementor-element-e9e8387 {
    width: auto !important;
    max-width: none !important;
}
body.page-id-3543 .elementor-element-019e10f .elementor-heading-title,
body.page-id-3543 .elementor-element-e40359f .elementor-heading-title,
body.page-id-3543 .elementor-element-efe87fa .elementor-heading-title,
body.page-id-3543 .elementor-element-9ce9c7f .elementor-heading-title,
body.page-id-3543 .elementor-element-6c891ba .elementor-heading-title,
body.page-id-3543 .elementor-element-e9e8387 .elementor-heading-title {
    white-space: nowrap;
}

