body{margin:0;padding:0;-webkit-font-smoothing:antialiased;font-family:Roboto,Arial,sans-serif;color:#232323;background:#FCFBF8;display:flex;flex-direction:column;min-height:100vh}
body.admin-bar{min-height:calc(100vh - 32px)}
@media (max-width:782px){body.admin-bar{min-height:calc(100vh - 46px)}}
body>main{flex:1 0 auto;width:100%;box-sizing:border-box}
.member-login-main{display:flex;flex-direction:column}
.site-footer{margin-top:auto}

/* Block editor content (regular Pages, Benefits, Community Posts all use
 * the_content()) - match core blocks to the site's look instead of
 * WordPress's plain defaults. */
.wp-block-button__link{background:#064694;border-radius:999px;font-weight:700;transition:background .25s;}
.wp-block-button__link:hover{background:#043867;}
.wp-block-button.is-style-outline .wp-block-button__link{border-color:#064694;color:#064694;}
.wp-block-quote{border-left:3px solid #064694;padding-left:20px;color:#4A4A4A;font-style:italic;}
.wp-block-separator{border-top-color:#E3DED2;}
main h1,main h2,main h3,main h4,main h5,main h6{font-family:'Roboto Slab',serif;font-weight:600;color:#0B2B4A;}
main a{color:#064694;}
a{text-decoration:none}
header{position:relative}
.mobile-nav-toggle{display:none}
.hamburger-btn{display:none;position:absolute;right:14px;top:50%;transform:translateY(-50%);padding:10px;border-radius:8px;cursor:pointer;line-height:0}
.hamburger-btn:hover{background:#EAF2FB}
.site-header{position:sticky;top:0;z-index:50;background:#FFFFFF;border-bottom:1px solid #E3DED2}
.site-header__inner{max-width:1280px;margin:0 auto;padding:0 16px;display:flex;align-items:center;justify-content:space-between;height:84px;gap:10px;position:relative}
.site-header__logo{display:flex;align-items:center;flex-shrink:0}
.site-header__logo-img{height:64px !important;width:auto !important;max-width:none !important;display:block}
.nav-dd__toggle{white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.nav-dd__caret{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .25s ease}
.nav-dd:hover .nav-dd__caret,.nav-dd:focus-within .nav-dd__caret{transform:rotate(225deg) translateY(-2px)}
.nav-link{font-size:15px;font-weight:500;color:#1D4894;text-decoration:none;white-space:nowrap}
.nav-link:hover{color:#064694 !important}
.nav-link.current-menu-item,.nav-link.current-menu-ancestor,.nav-link.current_page_item,.nav-link[aria-current=page]{color:#064694;font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px;text-decoration-color:#064694}
.btn-outline{font-size:16px;font-weight:600;color:#064694;padding:8px 14px;border-radius:999px;border:1.5px solid #064694;white-space:nowrap;transition:background .25s,color .25s;text-decoration:none}
.btn-outline:hover{background:#064694 !important;color:#FFFFFF !important}
.btn-primary{font-size:16px;font-weight:700;color:#FFFFFF;background:#064694;padding:9px 18px;border-radius:999px;box-shadow:0 10px 24px -10px rgba(6,70,148,.55);white-space:nowrap;transition:background .25s,box-shadow .25s;text-decoration:none;display:inline-block;border:none;cursor:pointer}
.btn-primary:hover{background:#043867 !important}
.desktop-nav{display:flex;align-items:center;gap:26px;flex-wrap:nowrap;white-space:nowrap;flex-shrink:1}
.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;white-space:nowrap}
.footer-link{color:#C7D6E5;text-decoration:none;font-size:13px}
.footer-link:hover{color:#FFFFFF !important}
.site-footer{background:#0B2B4A;padding:56px 40px 32px}
.site-footer__rule{height:4px;max-width:1280px;margin:0 auto 40px;background:linear-gradient(90deg,#DE5E00,#D80164,#F8DB00,#1A4899,#3EAB82,#84BB16);border-radius:999px}
.site-footer__inner{max-width:1280px;margin:0 auto}
.site-footer__top{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:32px;margin-bottom:32px}
.site-footer__logo{background:#FFFFFF;border-radius:12px;padding:10px 16px;display:inline-flex;align-items:center}
.site-footer__logo-img{height:40px !important;width:auto !important;max-width:none !important;display:block}
.site-footer__nav{display:flex;gap:24px;flex-wrap:wrap}
.site-footer__bottom{border-top:1px solid #23507A;padding-top:20px;font-size:12px;color:#7C97B3;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.site-footer__credit{color:#7C97B3}
.site-footer__credit a{color:#7C97B3;text-decoration:underline}
.site-footer__credit a:hover{color:#FFFFFF !important}
.mm-join:hover{background:#043867 !important}
.benefit-card:hover{transform:translateY(-6px) !important;box-shadow:0 26px 46px -24px rgba(6,70,148,.4) !important}
.partner-card:hover{transform:translateY(-4px) !important;box-shadow:0 14px 26px -14px rgba(6,70,148,.35) !important}
.plan-card:hover{transform:translateY(-6px) !important;box-shadow:0 30px 56px -22px rgba(0,0,0,.5) !important}
.course-card:hover{transform:translateY(-6px) !important;box-shadow:0 26px 46px -24px rgba(6,70,148,.4) !important}
.book-card:hover{transform:translateY(-6px) !important;box-shadow:0 26px 46px -24px rgba(6,70,148,.4) !important}
.resource-link-card{display:flex;align-items:center;gap:12px;background:#FFFFFF;border:1px solid #E3DED2;border-radius:10px;padding:14px 16px;font-size:14px;font-weight:600;color:#064694;text-decoration:none;transition:background .2s}
.resource-link-card:hover{background:#EAF2FB !important}
.mobile-menu{display:none;background:#FFFFFF;border-top:1px solid #E3DED2;padding:10px 20px 22px}
.mobile-menu a{display:block;padding:13px 6px;font-size:16px;font-weight:600;color:#232323;border-bottom:1px solid #F0EDE6}
.mobile-menu a:last-child{border-bottom:none}
.mobile-menu a.mm-sub{padding-left:22px;font-weight:500;font-size:15px;color:#4A4A4A;border-left:2px solid #E3DED2}
.mobile-menu a.current-menu-item,.mobile-menu a.current-menu-ancestor,.mobile-menu a.current_page_item,.mobile-menu a[aria-current=page]{text-decoration:none;color:#064694;border-left:1px solid #064694;padding-left:13px}
.mobile-menu .mm-join{margin-top:14px;background:#064694;color:#FFFFFF;text-align:center;border-radius:999px;padding:14px;border-bottom:none}
@media (max-width:1150px){
    .desktop-nav{display:none !important}
    .header-actions{display:none !important}
    .hamburger-btn{display:block}
    .mobile-nav-toggle:checked ~ .mobile-menu{display:block}
  }
.nav-dd{position:relative}
.nav-dd-menu{position:absolute;top:100%;left:-24px;padding-top:16px;z-index:60;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s}
.nav-dd:hover .nav-dd-menu,.nav-dd:focus-within .nav-dd-menu{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .2s ease,transform .2s ease,visibility 0s}
.nav-dd-panel{position:relative;background:#FFFFFF;border:1px solid #E3DED2;border-radius:16px;box-shadow:0 28px 56px -24px rgba(11,43,74,.38),0 4px 14px -6px rgba(11,43,74,.12);padding:18px 18px 0;width:640px;display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;overflow:hidden}
.nav-dd-panel::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,#064694,#3F7A52 55%,#D80164)}
.nav-dd-panel a{display:flex;align-items:center;gap:14px;padding:10px 12px;font-size:14.5px;font-weight:600;color:#0B2B4A;border-radius:10px;text-decoration:none;transition:background .15s ease,color .15s ease}
.nav-dd-panel a:hover,.nav-dd-panel a:focus-visible{background:#EAF2FB;color:#064694;outline:none}
.nav-dd-panel a:hover .nav-dd-panel__icon,.nav-dd-panel a:focus-visible .nav-dd-panel__icon{width:38px;height:38px;border-radius:10px;background:var(--accent,#064694);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 8px 14px -8px var(--accent,#064694);transition:transform .18s ease}
/* Mobile responsive grid + typography overrides */
  @media (max-width:1000px){
    .rg3,.rg4{grid-template-columns:repeat(2,1fr) !important}
    .rg5{grid-template-columns:repeat(3,1fr) !important}
  }
@media (max-width:700px){
    .rg2{grid-template-columns:1fr !important}
    .rg5{grid-template-columns:repeat(2,1fr) !important}
  }
@media (max-width:560px){
    .rg3,.rg4{grid-template-columns:1fr !important}
    section{padding-left:20px !important;padding-right:20px !important}
    h1{font-size:34px !important}
    input,select,textarea{font-size:16px !important}
  }
html{scroll-behavior:smooth}
/* Scroll reveal. The motion is a CSS *animation*, not a transition: page
 * builders (WPBakery's stretched rows in particular) ship their own
 * `transition` rules that replace a transition here and silently kill the
 * slide, but they can't touch an animation. No fill-mode is kept after it
 * ends on purpose - the static .reveal-in rule holds the final state, so an
 * element's own :hover transform etc. still works once it has revealed. */
.reveal{opacity:0;transform:translateY(26px)}
.reveal.reveal-in{opacity:1;transform:none;animation:face-reveal-up .9s cubic-bezier(.2,.7,.2,1) backwards}
/* A stretched row's own transition would run alongside the animation and
 * shorten/alter its fade, so switch that one off for stretched rows only. */
.reveal[data-vc-full-width]{transition:none !important}
@keyframes face-reveal-up{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes ctaGradientPan{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.cta-gradient{background-position:0% 50%;animation:ctaGradientPan 16s ease-in-out infinite}
@keyframes faceTreeFadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes faceTreeFadeIn{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion: reduce){.cta-gradient{animation:none}}
@keyframes face-spin{to{transform:rotate(360deg)}}
@keyframes face-testimonial-in{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
.testimonial-slide{animation:face-testimonial-in .5s cubic-bezier(.2,.7,.2,1)}
.bio-acc{width:100%}
.bio-acc summary{list-style:none;cursor:pointer;font-size:14px;font-weight:700;color:#064694;text-align:left}
.bio-acc summary::-webkit-details-marker{display:none}
.bio-acc summary:hover{color:#043867}
.bio-acc .bio-caret{display:inline-block;transition:transform .25s ease}
.bio-acc[open] .bio-caret{transform:rotate(180deg)}
.bio-acc a{color:#064694;font-weight:600}
.bio-acc a:hover{color:#043867}

/* ---------------------------------------------------------------------
 * template-helpers.php render functions - classes for all the repeating
 * card/grid components used across Home, Benefits, Training,
 * Testimonials, Webinars, Resources, Membership, and Community.
 * ------------------------------------------------------------------- */

/* Benefit cards (grid + nav dropdown use the same badge/icon pattern) */
.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.benefit-card{background:#FFFFFF;border:1px solid #E3DED2;border-radius:16px;overflow:hidden;box-shadow:0 16px 32px -26px rgba(6,70,148,.25);display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s cubic-bezier(.2,.7,.2,1)}
.benefit-card__media{position:relative;aspect-ratio:4/3;background:#EDEDED}
.benefit-card__img{width:100%;height:100%;object-fit:cover;display:block}
.benefit-card__badge{position:absolute;left:0;right:0;bottom:0;background:var(--accent,#064694);padding:12px 14px;display:flex;align-items:center;gap:10px}
.benefit-card__icon{flex-shrink:0;filter:drop-shadow(0 1px 1px rgba(0,0,0,.25))}
.benefit-card__label{font-size:16px;font-weight:700;color:#FFFFFF;line-height:1.25;text-shadow:0 1px 2px rgba(0,0,0,.25)}
.benefit-card__body{padding:16px 18px 20px}
.benefit-card__desc{font-size:14px;line-height:1.6;color:#4A4A4A;margin:0}

/* Benefit detail sections (full Benefits page) */
.benefit-detail__inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;gap:56px;flex-wrap:wrap}
.benefit-detail__inner--reverse{flex-direction:row-reverse}
.benefit-detail__inner--linked{text-decoration:none;color:inherit;cursor:pointer;border-radius:16px;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s cubic-bezier(.2,.7,.2,1)}
.benefit-detail__inner--linked:hover{transform:translateY(-4px);box-shadow:0 26px 46px -28px rgba(6,70,148,.35)}
.benefit-detail__media{flex:1;min-width:280px}
.benefit-detail__img{width:100%;border-radius:16px;border-bottom:4px solid var(--accent,#064694);display:block}
.benefit-detail__content{flex:1;min-width:280px}
.benefit-detail__eyebrow-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.benefit-detail__eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent,#064694)}
.benefit-detail__heading{font-family:'Roboto Slab',serif;font-size:26px;font-weight:600;color:#0B2B4A;margin:0 0 14px;display:flex;align-items:center;gap:10px;line-height:1.3}
.benefit-detail__icon-badge{width:34px;height:34px;border-radius:8px;background:var(--accent,#064694);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.benefit-detail__body{font-size:15px;line-height:1.7;color:#4A4A4A}

/* Benefits mega-menu dropdown */
.nav-dd-panel--list{width:auto;min-width:230px;display:flex;flex-direction:column;gap:2px;padding:12px}
.nav-dd-panel--list .nav-dd-panel__link{white-space:nowrap;padding:11px 14px}
.nav-dd-panel--list .nav-dd-panel__link[aria-current=page]{background:#EAF2FB;color:#064694}
.nav-dd-menu--list{left:-12px}
.nav-dd-panel__label{grid-column:1/-1;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#767676;padding:4px 12px 10px;margin-bottom:4px;border-bottom:1px solid #F0EDE6}
.nav-dd-panel__icon{width:34px;height:34px;border-radius:8px;background:var(--accent,#064694);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.nav-dd-panel .nav-dd-panel__viewall{grid-column:1/-1;justify-content:center;font-weight:700;font-size:14px;color:#064694;background:#F4F8FD;border-top:1px solid #E3EAF4;border-radius:0;margin:10px -18px 0;padding:14px 18px}
.nav-dd-panel .nav-dd-panel__viewall:hover{background:#E3EEFA}

/* Testimonial carousel */
.face-carousel{max-width:700px;margin:0 auto}
.face-carousel-track{background:#FFFFFF;border-radius:16px;box-shadow:0 20px 40px -28px rgba(6,70,148,.3);padding:48px 44px;min-height:170px}
.face-carousel-slide{display:none;text-align:center}
.face-carousel-slide.is-active{display:block}
.face-carousel-quote{font-size:18px;line-height:1.7;color:#4A4A4A;font-style:italic;margin:0 0 16px}
.face-carousel-name{font-size:14px;font-weight:700;color:#0B2B4A}
.face-carousel-role{font-size:13px;color:#767676;margin-top:2px}
.face-carousel-nav{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:28px}
.face-carousel-prev,.face-carousel-next{width:34px;height:34px;border-radius:50%;border:1.5px solid #D6D0C3;background:#FFFFFF;color:#064694;cursor:pointer}
.face-carousel-prev.is-hidden,.face-carousel-next.is-hidden{display:none}
.face-carousel-dots{display:flex;gap:8px}
.face-carousel-dot{width:9px;height:9px;border-radius:50%;border:none;padding:0;cursor:pointer;background:#D6D0C3}
.face-carousel-dot.is-active{background:#064694}

/* Facilitators grid (Training page) */
.facilitators-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:32px 20px}
.facilitator{text-align:center}
.facilitator__photo{width:78px;height:78px;border-radius:50%;object-fit:cover;margin:0 auto 10px;display:block}
.facilitator__name{font-size:14px;font-weight:700;color:#0B2B4A}
.facilitator__title{font-size:12px;color:#767676;margin-top:2px}
.facilitator__org{font-size:12px;font-weight:600;color:#064694;margin-top:2px}
.facilitator__bio{margin-top:8px}
.facilitator__bio-toggle{font-size:12px;font-weight:600;color:#064694;cursor:pointer}
.facilitator__bio-toggle--link{display:inline-block;margin-top:8px;text-decoration:none}
.facilitator__bio-toggle--link:hover{text-decoration:underline}
.facilitator__bio-text{font-size:13px;line-height:1.6;color:#4A4A4A;margin:8px 0 0;text-align:left}
.facilitator__org-link{color:inherit}

/* Courses grid (Training page) */
.courses-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.course-card{text-decoration:none;color:inherit;display:block;border-radius:12px;overflow:hidden;box-shadow:0 16px 32px -26px rgba(6,70,148,.25);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s cubic-bezier(.2,.7,.2,1)}
.course-card__img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.course-card__body{padding:16px 18px;background:#FFFFFF}
.course-card__badge{font-size:11px;font-weight:700;letter-spacing:.05em;margin-bottom:6px}
.course-card__badge--preview{color:#2E8968}
.course-card__badge--members{color:#767676}
.course-card__title{font-size:16px;font-weight:700;color:#0B2B4A;line-height:1.4}

/* Webinar card (Webinars page + Home featured) */
.webinar-card{background:#FFFFFF;border-radius:16px;box-shadow:0 16px 32px -26px rgba(6,70,148,.25);padding:28px 32px;display:flex;gap:20px;align-items:flex-start}
.webinar-card__photo{width:64px;height:64px;border-radius:50%;object-fit:cover;flex-shrink:0}
.webinar-card__body{flex:1}
.webinar-card__status{font-size:11px;font-weight:700;letter-spacing:.05em;margin-bottom:6px;text-transform:uppercase}
.webinar-card__status--featured{color:#DE5E00}
.webinar-card__status--live{color:#2E8968}
.webinar-card__title{font-size:18px;font-weight:700;color:#0B2B4A;margin-bottom:2px;line-height:1.4}
.webinar-card__speaker{font-size:13px;font-weight:600;color:#064694}
.webinar-card__date{font-size:12px;color:#767676;margin-top:2px}
.webinar-card__desc{font-size:14px;color:#4A4A4A;margin:10px 0 0}
.webinar-card__bio{margin-top:8px}
.webinar-card__bio-toggle{font-size:13px;font-weight:600;color:#064694;cursor:pointer}
.webinar-card__bio-text{font-size:13px;color:#4A4A4A;margin:8px 0 0}
.webinar-card__contact{font-size:13px;color:#4A4A4A;margin:6px 0 0}
.webinar-card__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px}
.webinar-card__register{display:inline-block;background:#064694;color:#FFFFFF;font-size:14px;font-weight:700;padding:10px 20px;border-radius:999px;text-decoration:none}
.webinar-card__more{display:inline-block;background:transparent;color:#064694;border:2px solid #064694;font-size:14px;font-weight:700;padding:8px 20px;border-radius:999px;text-decoration:none}
.webinar-card__more:hover{background:#064694;color:#FFFFFF}

/* District partners grid (Home page) */
.partners-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.partner-card{background:#FFFFFF;border-radius:12px;padding:20px;display:flex;align-items:center;justify-content:center;min-height:90px;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s cubic-bezier(.2,.7,.2,1)}
.partner-card__logo{max-width:100%;max-height:60px;object-fit:contain}

/* Books grid (Resources page) */
.books-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.book-card{background:#FFFFFF;border-radius:12px;box-shadow:0 16px 32px -26px rgba(6,70,148,.25);padding:20px;text-align:center;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s cubic-bezier(.2,.7,.2,1)}
.book-card__cover{max-width:100%;height:220px;object-fit:contain;margin:0 auto 14px;display:block}
.book-card__title{font-size:15px;font-weight:700;color:#0B2B4A;margin-bottom:12px;line-height:1.4}
.book-card__buy{display:inline-block;background:#064694;color:#FFFFFF;font-size:13px;font-weight:700;padding:9px 20px;border-radius:999px;text-decoration:none}

/* Resource link icon (used inside .resource-link-card, already styled) */
.resource-link-card__icon{flex-shrink:0}

/* Testimonial video grid (Testimonials page) */
.testimonial-video-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.testimonial-video-card{background:#FFFFFF;border:1px solid #E3DED2;border-radius:16px;overflow:hidden;box-shadow:0 16px 32px -26px rgba(6,70,148,.25);display:flex;flex-direction:column}
.testimonial-video-card__iframe{width:100%;aspect-ratio:16/9;border:0;display:block;background:#0B2B4A}
.testimonial-video-card__player{position:relative;width:100%;aspect-ratio:16/9;background:#0B2B4A}
.testimonial-video-card__play{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:pointer;display:block;font:inherit}
.testimonial-video-card__poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.testimonial-video-card__icon{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:rgba(6,70,148,.92);color:#FFFFFF;display:flex;align-items:center;justify-content:center;padding-left:3px;box-sizing:border-box;transition:transform .15s ease,background .15s ease}
.testimonial-video-card__play:hover .testimonial-video-card__icon,.testimonial-video-card__play:focus-visible .testimonial-video-card__icon{transform:scale(1.08);background:#064694}
.testimonial-video-card__media{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;background:#000}
.testimonial-video-card__body{padding:20px 24px}
.testimonial-video-card__name{font-size:16px;font-weight:700;color:#0B2B4A;margin-bottom:4px}
.testimonial-video-card__role{font-size:13px;font-style:italic;color:#767676;line-height:1.5}
.testimonial-video-card__org{font-size:13px;font-weight:700;color:#064694;line-height:1.5;margin-top:2px}

/* Membership plan cards */
.plans-grid{display:grid;grid-template-columns:repeat(var(--plan-columns,2),1fr);gap:24px;max-width:900px;margin:0 auto}
.plan-card{position:relative;background:#FFFFFF;border-radius:16px;padding:32px;border:1px solid #E3DED2;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s cubic-bezier(.2,.7,.2,1)}
.plan-card--featured{border:none;box-shadow:0 20px 40px -20px rgba(6,70,148,.4)}
.plan-card__ribbon{position:absolute;top:20px;right:20px;background:#F1CB25;color:#232323;font-size:11px;font-weight:700;padding:5px 12px;border-radius:999px}
.plan-card__name{font-size:12px;font-weight:700;letter-spacing:.05em;color:#2E8968;text-transform:uppercase;line-height:1.4}
.plan-card__price-row{margin:10px 0}
.plan-card__price{font-size:36px;font-weight:800;color:#0B2B4A;line-height:1.2}
.plan-card__period{font-size:14px;color:#767676}
.plan-card__desc{font-size:14px;color:#4A4A4A;margin:0 0 16px}
.plan-card__features{list-style:none;padding:0;margin:0 0 24px}
.plan-card__feature{font-size:14px;color:#232323;margin-bottom:10px;padding-left:22px;position:relative}
.plan-card__feature::before{content:'✓';position:absolute;left:0;color:#064694}
.plan-card__cta{display:block;text-align:center;background:#064694;color:#FFFFFF;font-size:15px;font-weight:700;padding:14px;border-radius:999px;text-decoration:none}

/* Community feed cards */
.community-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.community-card{background:#FFFFFF;border:1px solid #E3DED2;border-radius:12px;padding:20px}
.community-card__header{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.community-card__avatar{width:38px;height:38px;border-radius:50%;object-fit:cover}
.community-card__avatar--placeholder{background:#EDEDED}
.community-card__name{font-size:13px;font-weight:700;color:#0B2B4A}
.community-card__role{font-size:11px;color:#767676}
.community-card__body{font-size:14px;color:#4A4A4A;line-height:1.5}
.community-card__meta{font-size:12px;color:#767676;margin-top:14px;border-top:1px solid #F0EDE6;padding-top:10px}

/* ---------------------------------------------------------------------
 * front-page.php (Home) - sections unique to the home page
 * ------------------------------------------------------------------- */

.home-hero{position:relative;overflow:hidden;min-height:640px;display:flex;align-items:center}
.home-hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.home-hero__overlay{position:absolute;inset:0;background:linear-gradient(100deg,rgba(6,32,74,.92) 0%,rgba(6,58,120,.86) 45%,rgba(6,70,148,.72) 100%);z-index:1}
.home-hero__inner{max-width:1280px;margin:0 auto;padding:120px 40px;position:relative;z-index:2;width:100%}
.home-hero__content{max-width:660px}
.home-hero__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#9FC7F4;margin-bottom:18px}
.home-hero__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:44px;line-height:1.15;margin:0 0 20px;color:#FFFFFF}
.home-hero__tagline{font-size:19px;font-weight:600;color:#F1CB25;margin-bottom:16px}
.home-hero__desc{font-size:16px;line-height:1.7;color:#E3ECF9;max-width:520px;margin:0 0 32px;text-wrap:pretty}
.home-hero__actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.home-hero__cta{font-size:15px;font-weight:700;color:#064694;background:#FFFFFF;padding:15px 30px;border-radius:999px;box-shadow:0 14px 28px -10px rgba(0,0,0,.4);transition:background .25s,box-shadow .25s;text-decoration:none;display:inline-block}
.home-hero__cta:hover{background:#EDCA00 !important}
.home-hero__signin{font-size:14px;font-weight:600;color:#FFFFFF;text-decoration:none}
.home-hero__signin:hover{color:#041730 !important}

.home-partners{background:#68A1EF;padding:56px 40px}
.home-partners__inner{max-width:1280px;margin:0 auto;text-align:center}
.home-partners__label{font-size:16px;font-weight:600;letter-spacing:.06em;color:#FFFFFF;margin-bottom:28px}

.home-featured-webinar{background:#0B2B4A;padding:64px 40px}
.home-featured-webinar__card{max-width:1000px;margin:0 auto;background:#FFFFFF;border-radius:16px;padding:40px;display:grid;grid-template-columns:180px 1fr auto;gap:32px;align-items:center;box-shadow:0 24px 48px -24px rgba(0,0,0,.35)}
.home-featured-webinar__photo{width:180px;height:180px;border-radius:50%;object-fit:cover;display:block}
.home-featured-webinar__free{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#7A4B00;background:#F8DB00;padding:5px 12px;border-radius:999px;margin-bottom:12px}
.home-featured-webinar__label{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#3F7A52;margin-bottom:8px}
.home-featured-webinar__title{font-family:'Roboto Slab',serif;font-weight:500;font-size:24px;margin:0 0 8px;color:#0B2B4A}
.home-featured-webinar__meta{font-size:14px;color:#767676}
.home-featured-webinar__register{font-size:14px;font-weight:700;white-space:nowrap;padding:14px 26px}
.home-featured-webinar__title{line-height:1.25}
.home-featured-webinar__body{min-width:0}
@media (max-width:860px){
  .home-featured-webinar{padding:48px 24px}
  .home-featured-webinar__card{grid-template-columns:140px 1fr;gap:24px;padding:32px}
  .home-featured-webinar__photo{width:140px;height:140px}
  .home-featured-webinar__register{grid-column:1 / -1;justify-self:start}
}
@media (max-width:560px){
  .home-featured-webinar{padding:40px 16px}
  .home-featured-webinar__card{grid-template-columns:1fr;gap:20px;padding:24px;text-align:center;justify-items:center}
  .home-featured-webinar__photo{width:128px;height:128px}
  .home-featured-webinar__title{font-size:22px}
  .home-featured-webinar__register{justify-self:stretch;text-align:center;white-space:normal}
}

.home-benefits{background:#FCFBF8;padding:96px 40px}
.home-benefits__inner{max-width:1280px;margin:0 auto}
.home-benefits__intro{text-align:center;max-width:720px;margin:0 auto 56px}
.home-benefits__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#3F7A52;margin-bottom:16px}
.home-benefits__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:34px;margin:0 0 16px;color:#0B2B4A}
.home-benefits__desc{font-size:16px;line-height:1.7;color:#4A4A4A;margin:0}

.home-membership{background:#0B2B4A;padding:96px 40px}
.home-membership__inner{max-width:1000px;margin:0 auto}
.home-membership__intro{text-align:center;margin-bottom:48px}
.home-membership__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#9FD1A7;margin-bottom:16px}
.home-membership__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:34px;margin:0;color:#FFFFFF}

.home-join{background:#EAF2FB;padding:80px 40px}
.home-join__inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.2fr .8fr;gap:64px;align-items:start}
.home-join__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:30px;margin:0 0 16px;color:#0B2B4A}
.home-join__desc{font-size:16px;line-height:1.7;color:#4A4A4A;margin:0 0 28px}
.home-join__actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.home-join__cta{font-size:15px;font-weight:700;color:#FFFFFF;background:#064694;padding:15px 30px;border-radius:999px;box-shadow:0 14px 28px -10px rgba(6,70,148,.5);transition:background .25s,box-shadow .25s;text-decoration:none;display:inline-block}
.home-join__cta:hover{background:#043867 !important}
.home-join__signin{font-size:14px;font-weight:600;color:#064694;text-decoration:none}
.home-join__signin:hover{color:#043867 !important}
.home-join__video-wrap{border-radius:16px;overflow:hidden;box-shadow:0 24px 48px -28px rgba(6,70,148,.35);aspect-ratio:16/10}
.home-join__video{width:100%;height:100%;object-fit:cover;display:block}

/* ---------------------------------------------------------------------
 * page-benefits.php
 * ------------------------------------------------------------------- */

.benefits-intro{background:#EAF2FB;padding:72px 40px}
.benefits-intro__inner{max-width:840px;margin:0 auto;text-align:center}
.benefits-intro__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#164F99;margin-bottom:16px}
.benefits-intro__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:40px;line-height:1.2;margin:0 0 18px;color:#0B2B4A}
.benefits-intro__desc{font-size:17px;line-height:1.7;color:#4A4A4A;margin:0;text-wrap:pretty}

.benefits-cta{background:#0B2B4A;padding:80px 40px}
.benefits-cta__inner{max-width:720px;margin:0 auto;text-align:center}
.benefits-cta__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:30px;margin:0 0 16px;color:#FFFFFF}
.benefits-cta__desc{font-size:16px;line-height:1.7;color:#C7D6E5;margin:0 0 28px}
.benefits-cta__actions{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap}
.benefits-cta__join{font-size:15px;font-weight:700;color:#0B2B4A;background:#FFFFFF;padding:15px 30px;border-radius:999px;box-shadow:0 14px 28px -10px rgba(0,0,0,.4);transition:background .25s;text-decoration:none;display:inline-block}
.benefits-cta__join:hover{background:#EAF2FB !important}
.benefits-cta__signin{font-size:14px;font-weight:600;color:#C7D6E5;transition:color .2s;text-decoration:none}
.benefits-cta__signin:hover{color:#FFFFFF !important}

/* ---------------------------------------------------------------------
 * page-community.php
 * ------------------------------------------------------------------- */

.community-intro{background:#EAF6EC;padding:72px 40px 56px;text-align:center}
.community-intro__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#3F7A52;margin-bottom:16px}
.community-intro__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:38px;margin:0 0 16px;color:#0B2B4A}
.community-intro__desc{font-size:16px;line-height:1.7;color:#4A4A4A;max-width:640px;margin:0 auto}

.community-feed{background:#FFFFFF;padding:72px 40px}
.community-feed__inner{max-width:1280px;margin:0 auto}
.community-feed__header{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:20px;margin-bottom:32px}
.community-feed__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#0A66C2;margin-bottom:10px}
.community-feed__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:28px;margin:0;color:#0B2B4A}
.community-feed__linkedin{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:#FFFFFF;background:#0A66C2;padding:12px 22px;border-radius:999px;box-shadow:0 10px 24px -10px rgba(10,102,194,.55);transition:background .25s;text-decoration:none}
.community-feed__linkedin:hover{background:#084F96 !important}
.community-feed__linkedin-badge{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:#FFFFFF;color:#0A66C2;border-radius:4px;font-size:13px;font-weight:800;font-family:Arial,sans-serif}
.community-feed__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}

.community-links{background:#EAF6EC;padding:72px 40px}
.community-links__grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.community-links__card{background:#FFFFFF;border:1px solid #E3DED2;border-radius:16px;padding:28px;box-shadow:0 16px 32px -26px rgba(6,70,148,.25)}
.community-links__card--dark{background:#0B2B4A;border:none;display:flex;flex-direction:column;justify-content:center}
.community-links__title{font-size:16px;font-weight:700;margin:0 0 10px;color:#0B2B4A}
.community-links__card--dark .community-links__title{color:#FFFFFF}
.community-links__desc{font-size:14px;line-height:1.6;color:#4A4A4A;margin:0}
.community-links__card--dark .community-links__desc{color:#C7D6E5;margin:0 0 16px}
.community-links__join{font-size:13px;font-weight:700;color:#0B2B4A;background:#FFFFFF;padding:10px 18px;border-radius:999px;text-align:center;text-decoration:none;align-self:flex-start;display:inline-block}
.community-links__join--full{align-self:stretch;display:block}

/* ---------------------------------------------------------------------
 * page-events.php
 * ------------------------------------------------------------------- */

.events-intro{background:#EAF6EC;padding:72px 40px 56px;text-align:center}
.events-intro__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#3F7A52;margin-bottom:16px}
.events-intro__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:38px;margin:0 0 16px;color:#0B2B4A}
.events-intro__desc{font-size:16px;line-height:1.7;color:#4A4A4A;max-width:640px;margin:0 auto}

.events-list{background:#FCFBF8;padding:72px 40px}
.events-list__inner{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:20px}
.event-card{background:#FFFFFF;border:1px solid #E3DED2;border-radius:16px;padding:28px;display:flex;justify-content:space-between;align-items:center;gap:24px;box-shadow:0 16px 32px -26px rgba(6,70,148,.25)}
.event-card__left{display:flex;align-items:center;gap:20px}
.event-card__thumb-link{flex-shrink:0;line-height:0}
.event-card__thumb{width:225px;height:141px;object-fit:cover;border-radius:10px}
.event-card__date{font-size:12px;font-weight:700;color:#3F7A52;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.event-card__title{font-size:18px;font-weight:700;margin:0;color:#0B2B4A;line-height:1.4}
.event-card__desc{font-size:13px;color:#767676;margin-top:4px;line-height:1.5}
.event-card__cta{font-size:13px;font-weight:700;color:#FFFFFF;background:#064694;padding:12px 22px;border-radius:999px;white-space:nowrap;text-decoration:none}

.events-replay{background:#EAF6EC;padding:72px 40px;text-align:center}
.events-replay__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:24px;margin:0 0 12px;color:#0B2B4A}
.events-replay__desc{font-size:15px;line-height:1.7;color:#4A4A4A;max-width:560px;margin:0 auto 24px}
.events-replay__signin{font-size:14px;font-weight:700;color:#064694;padding:12px 24px;border-radius:999px;border:1.5px solid #064694;display:inline-block;text-decoration:none}

.events-testimonial{background:#FCFBF8;padding:72px 40px}
.events-testimonial__inner{max-width:900px;margin:0 auto;text-align:center}
.events-testimonial__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:24px;margin:0 0 28px;color:#0B2B4A}
.events-testimonial__quote{font-size:18px;line-height:1.7;color:#4A4A4A;font-style:italic;margin:0 0 16px}
.events-testimonial__name{font-size:14px;font-weight:700;color:#0B2B4A}

/* ---------------------------------------------------------------------
 * page-testimonials.php
 * ------------------------------------------------------------------- */

.testimonials-intro{background:#EAF2FB;padding:72px 40px}
.testimonials-intro__inner{max-width:840px;margin:0 auto;text-align:center}
.testimonials-intro__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#164F99;margin-bottom:16px}
.testimonials-intro__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:40px;line-height:1.2;margin:0 0 18px;color:#0B2B4A}
.testimonials-intro__desc{font-size:17px;line-height:1.7;color:#4A4A4A;margin:0;text-wrap:pretty}

.testimonials-videos{background:#FCFBF8;padding:80px 40px}

.testimonials-cta{background:#EAF2FB;padding:80px 40px}
.testimonials-cta__inner{max-width:720px;margin:0 auto;text-align:center}
.testimonials-cta__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:30px;margin:0 0 16px;color:#0B2B4A}
.testimonials-cta__desc{font-size:16px;line-height:1.7;color:#4A4A4A;margin:0 0 28px}
.testimonials-cta__actions{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap}
.testimonials-cta__join{font-size:15px;font-weight:700;color:#FFFFFF;background:#064694;padding:15px 30px;border-radius:999px;box-shadow:0 14px 28px -10px rgba(6,70,148,.5);transition:background .25s,box-shadow .25s;text-decoration:none;display:inline-block}
.testimonials-cta__join:hover{background:#043867 !important}
.testimonials-cta__events{font-size:14px;font-weight:600;color:#064694;text-decoration:none}
.testimonials-cta__events:hover{color:#043867 !important}

.testimonials-carousel-section{background:#FFFFFF;padding:72px 40px}

/* ---------------------------------------------------------------------
 * page-training.php
 * ------------------------------------------------------------------- */

.training-intro{background:#EAF6EC;padding:72px 40px 56px;text-align:center}
.training-intro__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#3F7A52;margin-bottom:16px}
.training-intro__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:38px;margin:0 0 16px;color:#0B2B4A}
.training-intro__desc{font-size:16px;line-height:1.7;color:#4A4A4A;max-width:640px;margin:0 auto}

.training-library{background:#FCFBF8;padding:72px 40px}
.training-library__inner{max-width:1280px;margin:0 auto}
.training-library__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:24px;margin:0 0 28px;color:#0B2B4A}

.training-facilitators{background:#EAF6EC;padding:72px 40px}
.training-facilitators__inner{max-width:1280px;margin:0 auto}
.training-facilitators__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:24px;margin:0 0 10px;color:#0B2B4A}
.training-facilitators__desc{font-size:15px;color:#4A4A4A;margin:0 0 28px;max-width:700px}

.training-testimonials{background:#FCFBF8;padding:72px 40px}
.training-testimonials__inner{max-width:760px;margin:0 auto;text-align:center}
.training-testimonials__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:24px;margin:0 0 32px;color:#0B2B4A}

/* ---------------------------------------------------------------------
 * page-membership.php
 * ------------------------------------------------------------------- */

.membership-intro{background:#EAF6EC;padding:72px 40px 56px;text-align:center}
.membership-intro__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#3F7A52;margin-bottom:16px}
.membership-intro__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:38px;margin:0 0 16px;color:#0B2B4A}
.membership-intro__desc{font-size:16px;line-height:1.7;color:#4A4A4A;max-width:640px;margin:0 auto}

.membership-plans{background:#FCFBF8;padding:80px 40px}

.membership-signup{background:#EAF2FB;padding:80px 40px}
.membership-signup__inner{max-width:640px;margin:0 auto}
.membership-signup__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:30px;margin:0 0 8px;color:#0B2B4A;text-align:center}
.membership-signup__desc{font-size:15px;color:#4A4A4A;margin:0 0 36px;text-align:center}
.membership-signup__form{background:#FFFFFF;border:1px solid #E3DED2;border-radius:16px;padding:40px;box-shadow:0 20px 40px -28px rgba(6,70,148,.3);display:flex;flex-direction:column;gap:22px}
.membership-signup__progress-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.membership-signup__progress-label{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#3F7A52}
.membership-signup__progress-count{font-size:12px;font-weight:700;color:#3F7A52}
.membership-signup__progress-track{height:8px;background:#EAF2FB;border-radius:999px;overflow:hidden}
.membership-signup__progress-fill{height:100%;width:var(--progress,0%);background:#3F7A52;border-radius:999px;transition:width .3s}
.membership-signup__field{display:flex;flex-direction:column;gap:8px}
.membership-signup__label{font-size:14px;font-weight:700;color:#0B2B4A}
.membership-signup__input{font-size:15px;color:#232323;border:1.5px solid #D6D0C3;border-radius:8px;padding:13px 14px;background:#FFFFFF;font-family:inherit}
.membership-signup__submit{margin-top:8px;font-size:15px;font-weight:700;color:#FFFFFF;background:#064694;padding:15px;border-radius:999px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:background .25s}
.membership-signup__submit:hover{background:#043867 !important}

/* ---------------------------------------------------------------------
 * Standard WordPress templates - Blog index, single post, category/tag/
 * author archives, search, and 404.
 * ------------------------------------------------------------------- */

.archive-intro{background:#EAF6EC;padding:64px 40px 48px}
.archive-header{max-width:1180px;margin:0 auto;text-align:center}
.archive-header__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#3F7A52;margin-bottom:14px}
.archive-header__title{font-family:'Roboto Slab',serif;font-weight:500;font-size:34px;margin:0;color:#0B2B4A;line-height:1.25}
.archive-header__desc{font-size:15px;color:#4A4A4A;margin-top:14px;max-width:640px;margin-left:auto;margin-right:auto}

.author-header{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:24px;text-align:left}
.author-header__avatar{border-radius:50%;flex-shrink:0}
.author-header__bio{font-size:15px;color:#4A4A4A;margin:10px 0 0;max-width:600px}

.archive-content{background:#FCFBF8;padding:64px 40px 80px}
.archive-content__inner{max-width:1180px;margin:0 auto}

.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post-card{background:#FFFFFF;border:1px solid #E3DED2;border-radius:16px;overflow:hidden;box-shadow:0 16px 32px -26px rgba(6,70,148,.25);text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s cubic-bezier(.2,.7,.2,1)}
.post-card:hover{transform:translateY(-6px);box-shadow:0 26px 46px -24px rgba(6,70,148,.4)}
.post-card__img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.post-card__body{padding:20px 22px;display:flex;flex-direction:column;flex:1}
.post-card__meta{font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:#767676;margin-bottom:8px}
.post-card__title{font-family:'Roboto Slab',serif;font-size:18px;font-weight:600;color:#0B2B4A;margin:0 0 10px;line-height:1.3}
.post-card__excerpt{font-size:14px;line-height:1.6;color:#4A4A4A;margin-bottom:14px;flex:1}
.post-card__readmore{font-size:13px;font-weight:700;color:#064694}

.post-grid-empty{text-align:center;padding:60px 20px}
.post-grid-empty__text{font-size:16px;color:#4A4A4A;margin:0 0 18px}
.post-grid-empty__link{display:inline-block;font-size:14px;font-weight:700;color:#064694;text-decoration:none}
.post-grid-empty__link:hover{color:#043867}

.post-pagination{display:flex;justify-content:center;gap:10px;margin-top:48px;flex-wrap:wrap}
.post-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border-radius:999px;border:1.5px solid #E3DED2;color:#0B2B4A;font-size:14px;font-weight:600;text-decoration:none;background:#FFFFFF}
.post-pagination .page-numbers.current{background:#064694;border-color:#064694;color:#FFFFFF}
.post-pagination .page-numbers:not(.current):hover{background:#EAF2FB;border-color:#064694}
.post-pagination .page-numbers.dots{border:none;background:none}

/* Search form - used standalone on the Search results page and inside
 * the 404 page */
.search-form{display:flex;gap:10px;max-width:480px;margin:24px auto 0}
.search-form__input{flex:1;font-size:15px;border:1.5px solid #D6D0C3;border-radius:999px;padding:12px 20px;font-family:inherit}
.search-form__submit{font-size:14px;font-weight:700;color:#FFFFFF;background:#064694;border:none;border-radius:999px;padding:12px 26px;cursor:pointer;transition:background .25s}
.search-form__submit:hover{background:#043867}

/* Single post */
.single-post__meta{font-size:13px;font-weight:600;color:#767676;text-transform:uppercase;letter-spacing:.03em;margin-bottom:12px}
.single-post__title{font-family:'Roboto Slab',serif;font-weight:500;font-size:34px;line-height:1.25;color:#0B2B4A;margin:0 0 28px}
.single-post__img{width:100%;border-radius:16px;display:block;margin-bottom:32px}
.single-post__content{font-size:16px;line-height:1.8;color:#333333}
.single-post__content::after,.entry-content::after{content:"";display:table;clear:both}
:where(.single-post__content) p{margin:0 0 20px}
:where(.single-post__content) h2{font-family:'Roboto Slab',serif;color:#0B2B4A;font-size:24px;margin:36px 0 16px}
:where(.single-post__content) h3{font-family:'Roboto Slab',serif;color:#0B2B4A;font-size:20px;margin:30px 0 14px}
:where(.single-post__content) a{color:#064694}
:where(.single-post__content) img{max-width:100%;border-radius:12px;height:auto}
.single-post__tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:36px;padding-top:24px;border-top:1px solid #F0EDE6}
.single-post__tag{font-size:12px;font-weight:600;color:#064694;background:#EAF2FB;padding:6px 14px;border-radius:999px;text-decoration:none}

/* 404 */
.notfound{background:#FCFBF8;padding:100px 40px;min-height:50vh;display:flex;align-items:center}
.notfound__inner{max-width:600px;margin:0 auto;text-align:center}
.notfound__eyebrow{font-family:'Roboto Slab',serif;font-size:64px;font-weight:700;color:#E3DED2;line-height:1;margin-bottom:8px}
.notfound__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:28px;color:#0B2B4A;margin:0 0 14px}
.notfound__desc{font-size:15px;line-height:1.7;color:#4A4A4A;margin:0}
.notfound__search{margin-bottom:32px}
.notfound__links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 20px;margin-bottom:32px}
.notfound__links a{font-size:14px;font-weight:600;color:#064694;text-decoration:none;padding:8px 4px}
.notfound__links a:hover{text-decoration:underline}
.notfound__home{font-size:14px;font-weight:700;color:#767676;text-decoration:none}
.notfound__home:hover{color:#0B2B4A}

/* Comments (comments.php) */
/* comments.php container - width and bottom spacing come from the parent
 * <main> in single.php (matching page.php's pattern); top spacing comes
 * from .comments-section__heading's own border-top + padding-top below */
.comments-section__heading{font-family:'Roboto Slab',serif;font-size:22px;color:#0B2B4A;margin:0 0 24px;border-top:1px solid #F0EDE6;padding-top:36px}
.comments-section__closed{font-size:14px;color:#767676;border-top:1px solid #F0EDE6;padding-top:24px}
.comment-list{list-style:none;padding:0;margin:0}
.comment-list .children{list-style:none;margin:0 0 0 44px;padding:0}
.comment-list li{margin-bottom:24px}
.comment-list .comment-body{background:#FAF8F3;border:1px solid #E3DED2;border-radius:12px;padding:18px 20px}
.comment-list .comment-author{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.comment-list .comment-author .avatar{border-radius:50%;display:block}
.comment-list .comment-author .fn{font-size:14px;font-weight:700;color:#0B2B4A;font-style:normal}
.comment-list .comment-metadata{font-size:12px;color:#767676;margin-bottom:8px}
.comment-list .comment-metadata a{color:inherit;text-decoration:none}
.comment-list .comment-content p{font-size:14px;line-height:1.6;color:#333333;margin:0 0 10px}
.comment-list .reply a{font-size:12px;font-weight:700;color:#064694;text-decoration:none}
.comment-form{border-top:1px solid #F0EDE6;padding-top:32px}
.comment-form h3{font-family:'Roboto Slab',serif;font-size:20px;color:#0B2B4A;margin:0 0 20px}
.comment-form__row{margin:0 0 16px}
.comment-form__input,.comment-form__textarea{width:100%;box-sizing:border-box;font-size:15px;font-family:inherit;border:1.5px solid #D6D0C3;border-radius:8px;padding:12px 14px}
.comment-form__textarea{min-height:120px;resize:vertical}
.comment-form__submit{font-size:14px;font-weight:700;color:#FFFFFF;background:#064694;border:none;border-radius:999px;padding:12px 28px;cursor:pointer;transition:background .25s}
.comment-form__submit:hover{background:#043867}
.comment-notes,.comment-form-comment label,.comment-form-author label,.comment-form-email label{display:none}

/* ---------------------------------------------------------------------
 * page-resources.php
 * ------------------------------------------------------------------- */

.resources-intro__inner{max-width:640px;margin:0 auto}
.resources-intro__desc{font-size:16px;line-height:1.7;color:#4A4A4A;max-width:640px;margin:0 auto}
.resources-section__inner{max-width:1180px;margin:0 auto;padding:72px 40px}
.resources-section__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:28px;margin:0 0 32px;color:#0B2B4A}
.resources-books{background:#FCFBF8}
.resources-online{background:#FFFFFF}
.resources-online__card{background:#FCFBF8;border:1px solid #E3DED2;border-radius:16px;padding:36px;display:grid;grid-template-columns:320px 1fr;gap:36px;align-items:center;box-shadow:0 20px 40px -28px rgba(6,70,148,.3)}
.resources-online__img{width:100%;height:300px;object-fit:cover;border-radius:12px;display:block}
.resources-online__title{font-family:'Roboto Slab',serif;font-weight:500;font-size:24px;margin:0 0 12px;color:#0B2B4A}
.resources-online__desc{font-size:15px;line-height:1.7;color:#4A4A4A;margin:0 0 22px;text-wrap:pretty}
.resources-online__btn{display:inline-block;font-size:14px;font-weight:700;color:#FFFFFF;background:#064694;padding:12px 26px;border-radius:999px;text-decoration:none;transition:background .25s}
.resources-online__btn:hover{background:#043867 !important}
.resources-symposium{background:#EAF6EC}
.resources-helpful{background:#FCFBF8}
.resources-links-grid{display:grid;gap:14px}
.resources-links-grid--2col{grid-template-columns:1fr 1fr}
.resources-links-grid--3col{grid-template-columns:repeat(3,1fr)}

/* ---------------------------------------------------------------------
 * page-about.php
 * ------------------------------------------------------------------- */

.about-intro__inner{max-width:680px;margin:0 auto}
.about-intro__desc{font-size:16px;line-height:1.7;color:#4A4A4A;max-width:680px;margin:0 auto}

/* Reusable "placeholder photo" pattern - a dashed-border box with an
 * icon and label, used anywhere a real photo hasn't been uploaded yet. */
.placeholder-photo{position:relative;overflow:hidden;background:rgba(127,127,127,.08);color:inherit;font:13px/1.3 system-ui,-apple-system,sans-serif}
.placeholder-photo--rect{width:100%;height:340px;border-radius:16px}
.placeholder-photo--circle{width:100px;height:100px;margin:0 auto 14px;border-radius:50%}
.placeholder-photo__border{position:absolute;inset:0;border:1.5px dashed currentColor;opacity:.35;pointer-events:none;border-radius:inherit}
.placeholder-photo__content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:12px;box-sizing:border-box}
.placeholder-photo__icon{opacity:.45}
.placeholder-photo__label{max-width:90%;font-weight:500;letter-spacing:.01em;opacity:.75}

.about-mission{background:#FCFBF8;padding:80px 40px}
.about-mission__inner{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.about-mission__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:26px;margin:0 0 16px;color:#0B2B4A}
.about-mission__desc{font-size:15px;line-height:1.75;color:#4A4A4A;margin:0}

.about-leadership{background:#EAF6EC;padding:72px 40px}
.about-leadership__inner{max-width:1280px;margin:0 auto}
.about-leadership__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:24px;margin:0 0 28px;text-align:center;color:#0B2B4A}
.about-leadership__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.about-leadership__member{text-align:center}
.about-leadership__name{font-size:14px;font-weight:700;color:#0B2B4A}
.about-leadership__role{font-size:13px;color:#767676}

/* ---------------------------------------------------------------------
 * page-webinars.php
 * ------------------------------------------------------------------- */

.webinars-intro__inner{max-width:840px;margin:0 auto;text-align:center}
.webinars-intro__desc{font-size:17px;line-height:1.7;color:#4A4A4A;margin:0;text-wrap:pretty}
.webinars-list{background:#FCFBF8;padding:80px 40px}
.webinars-list__inner{max-width:960px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:28px}
.webinars-testimonials{background:#FCFBF8;padding:72px 40px}
.webinars-testimonials__inner{max-width:760px;margin:0 auto;text-align:center}
.webinars-testimonials__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:24px;margin:0 0 32px;color:#0B2B4A}

/* ---------------------------------------------------------------------
 * page-member-login.php
 * ------------------------------------------------------------------- */

.member-login{flex:1 1 0%;display:flex;align-items:center;justify-content:center;background:#EAF6EC;padding:64px 24px}
.member-login__card{width:100%;max-width:420px;background:#FFFFFF;border-radius:16px;padding:40px;box-shadow:0 24px 48px -28px rgba(6,70,148,.3)}
.member-login__header{text-align:center;margin-bottom:28px}
.member-login__eyebrow{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#3F7A52;margin-bottom:10px}
.member-login__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:24px;margin:0;color:#0B2B4A}
.member-login__form{display:flex;flex-direction:column;gap:16px}
.member-login__label{font-size:13px;font-weight:600;color:#4A4A4A;display:block;margin-bottom:6px}
.member-login__input{width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid #E3DED2;border-radius:8px;font-size:14px;font-family:inherit}
.member-login__submit{margin-top:8px;width:100%;font-size:14px;font-weight:700;color:#FFFFFF;background:#064694;padding:14px;border-radius:999px;border:none;cursor:pointer;transition:background .25s}
.member-login__submit:hover{background:#043867}
.member-login__signup{text-align:center;font-size:13px;color:#767676;margin-top:4px}
.member-login__signup-link{color:#064694;font-weight:600;text-decoration:none}

/* Shared full-width main container - used by page.php (Default template)
 * and single.php (blog posts), so both look and measure identically. */
.site-main-wide{max-width:1280px;margin:0 auto;padding:48px 24px 80px}

/* page.php - optional banner for the Default template */
.default-page-banner__inner{max-width:680px;margin:0 auto;text-align:center}
.default-page-banner__desc{font-size:16px;line-height:1.7;color:#4A4A4A;margin:12px 0 0}

/* Default page content (page.php's .entry-content) - basic typography
 * for whatever gets typed into the block editor, matching single-post's
 * treatment so both read consistently. */
.entry-content{font-size:16px;line-height:1.8;color:#333333}
:where(.entry-content) p{margin:0 0 20px}
:where(.entry-content) h2{font-family:'Roboto Slab',serif;color:#0B2B4A;font-size:26px;margin:36px 0 16px}
:where(.entry-content) h3{font-family:'Roboto Slab',serif;color:#0B2B4A;font-size:20px;margin:30px 0 14px}
:where(.entry-content) a{color:#064694}
:where(.entry-content) ul,:where(.entry-content) ol{padding-left:24px;margin:0 0 20px}

/* WordPress core alignment classes (.alignleft/.alignright/.aligncenter) -
 * used on images inserted directly into post/page content via the block
 * editor, e.g. a bio photo with paragraphs wrapping around it. */
.entry-content .alignleft,.single-post__content .alignleft{float:left;margin:4px 28px 20px 0;max-width:45%;height:auto;border-radius:12px}
.entry-content .alignright,.single-post__content .alignright{float:right;margin:4px 0 20px 28px;max-width:45%;height:auto;border-radius:12px}
.entry-content .aligncenter,.single-post__content .aligncenter{display:block;margin:24px auto;max-width:100%;height:auto;border-radius:12px}@media (max-width:680px){
  .entry-content .alignleft,.entry-content .alignright,.single-post__content .alignleft,.single-post__content .alignright{float:none;display:block;margin:0 auto 20px;max-width:100%}
}

/* WPBakery elements (inc/vc-elements/) */
a.face-vc-partner-logo{text-decoration:none;cursor:pointer}

/* [face_benefit_card] - reuses .benefit-detail__eyebrow-row/eyebrow/
 * heading/icon-badge (self-contained, no parent-flex dependency), adds
 * its own description + feature-list styling since this is a standalone
 * card rather than the CPT-driven detail section's flex layout. */
.benefit-detail-card{max-width:520px}
.benefit-detail-card__desc{font-size:15px;line-height:1.7;color:#4A4A4A;margin:0 0 18px}
.benefit-detail-card__desc p,
.benefit-card__desc p{margin:0 0 10px}
.community-card__body p,
.resource-spotlight__desc p,
.facilitator__bio-text p,
.webinar-card__desc p,
.webinar-card__bio-text p,
.member-media__desc p,
.face-video-hero__desc p,
.face-cta-section__desc p,
.face-section-heading__desc p,
.default-page-banner__desc p{margin:0 0 10px}
.community-card__body p:last-child,
.resource-spotlight__desc p:last-child,
.facilitator__bio-text p:last-child,
.webinar-card__desc p:last-child,
.webinar-card__bio-text p:last-child,
.member-media__desc p:last-child,
.face-video-hero__desc p:last-child,
.face-cta-section__desc p:last-child,
.face-section-heading__desc p:last-child,
.default-page-banner__desc p:last-child{margin-bottom:0}
.benefit-detail-card__features{list-style:none;padding:0;margin:0}
.benefit-detail-card__feature{font-size:14px;color:#232323;margin-bottom:10px;padding-left:22px;position:relative}
.benefit-detail-card__feature::before{content:'✓';position:absolute;left:0;color:var(--accent,#064694);font-weight:700}

/* [face_section_heading] - generic reusable section intro */
.face-section-heading{max-width:720px;margin:0 auto;text-align:center}
.face-section-heading--left{margin:0;text-align:left}
.face-section-heading__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#3F7A52;margin-bottom:16px}
.face-section-heading__title{font-family:'Roboto Slab',serif;font-weight:500;font-size:32px;margin:0 0 16px;color:#0B2B4A;line-height:1.3}
.face-section-heading__desc{font-size:16px;line-height:1.7;color:#4A4A4A;margin:0}

/* [face_cta_section] - "Join the FACE Network" pattern */
.face-cta-section{background:#EAF2FB;padding:56px 48px;border-radius:16px}
.face-cta-section__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:28px;margin:0 0 14px;color:#0B2B4A;line-height:1.3}
.face-cta-section__desc{font-size:15px;line-height:1.7;color:#4A4A4A;margin:0 0 24px;max-width:600px}
.face-cta-section__actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.face-cta-section--center{text-align:center}
.face-cta-section--center .face-cta-section__desc{margin-left:auto;margin-right:auto}
.face-cta-section--center .face-cta-section__actions{justify-content:center}
.face-cta-section__button{font-size:15px;font-weight:700;color:#FFFFFF;background:#064694;padding:15px 30px;border-radius:999px;text-decoration:none;display:inline-block;transition:background .25s}
.face-cta-section__button:hover{background:#043867 !important}
.face-cta-section__link{font-size:14px;font-weight:600;color:#064694;text-decoration:none}
.face-cta-section__link:hover{color:#043867 !important}

/* [face_webinar_detail_card] - contact info box (phone/email/LinkedIn/
 * Gallup talents) shown inside the expanded bio */
.webinar-detail-card__info-box{background:#FAF8F3;border:1px solid #E3DED2;border-radius:10px;padding:14px 16px;margin:10px 0}
.webinar-detail-card__info-box p{font-size:13px;color:#4A4A4A;margin:0 0 6px}
.webinar-detail-card__info-box p:last-child{margin-bottom:0}
.webinar-detail-card__info-box a{color:#064694}

/* [face_quote_card] - standalone quote card (the carousel's own
 * .face-carousel-quote/name/role are slide-positioning-dependent, so
 * this gets its own card chrome around the same typography) */
.quote-card{background:#FFFFFF;border:1px solid #E3DED2;border-radius:16px;padding:32px;text-align:center;max-width:700px;margin:0 auto}
.quote-card__text{font-size:18px;line-height:1.7;color:#4A4A4A;font-style:italic;margin:0 0 16px}
.quote-card__name{font-size:14px;font-weight:700;color:#0B2B4A}
.quote-card__role{font-size:13px;color:#767676;margin-top:2px}

/* [face_video_hero] - a single, standalone hero section (video or
 * image background, content area, buttons). No slider/carousel
 * involved - one flat element. */
.face-video-hero{position:relative;min-height:560px;display:flex;align-items:center;background-size:cover;background-position:center;text-align:left}
.face-video-hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.face-video-hero__overlay{position:absolute;inset:0;background:linear-gradient(100deg,rgba(6,32,74,.92) 0%,rgba(6,58,120,.86) 45%,rgba(6,70,148,.72) 100%);z-index:1}
.face-video-hero__inner{max-width:1280px;margin:0 auto;padding:100px 40px;position:relative;z-index:2;width:100%}
.face-video-hero__content{max-width:660px}
.face-video-hero__eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#9FC7F4;margin-bottom:18px}
.face-video-hero__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:44px;line-height:1.15;margin:0 0 20px;color:#FFFFFF}
.face-video-hero__tagline{font-size:19px;font-weight:600;color:#F1CB25;margin-bottom:16px}
.face-video-hero__desc{font-size:16px;line-height:1.7;color:#E3ECF9;max-width:520px;margin:0 0 32px;text-wrap:pretty}
.face-video-hero__actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.face-video-hero__cta{font-size:15px;font-weight:700;color:#064694;background:#FFFFFF;padding:15px 30px;border-radius:999px;box-shadow:0 14px 28px -10px rgba(0,0,0,.4);transition:background .25s;text-decoration:none;display:inline-block}
.face-video-hero__cta:hover{background:#EDCA00 !important}
.face-video-hero__signin{font-size:14px;font-weight:600;color:#FFFFFF;text-decoration:none}
.face-video-hero__signin:hover{color:#041730 !important}

@media (max-width:680px){
  .face-video-hero{min-height:480px}
  .face-video-hero__heading{font-size:30px}
  .face-video-hero__inner{padding:64px 24px 90px}
}

/* [face_spacer] - responsive vertical spacing via CSS custom property
 * fallback chains (set inline per instance), rather than a per-instance
 * <style> block. */
.face-spacer{height:var(--face-spacer-desktop,40px);width:100%}
@media (max-width:1024px){
  .face-spacer{height:var(--face-spacer-tablet,var(--face-spacer-desktop,40px))}
}
@media (max-width:680px){
  .face-spacer{height:var(--face-spacer-mobile,var(--face-spacer-tablet,var(--face-spacer-desktop,40px)))}
}

/* [face_resource_spotlight] - image left, content right, new pattern
 * (no existing hardcoded markup to match) */
.resource-spotlight{background:#FFFFFF;border:1px solid #E3DED2;border-radius:20px;padding:24px;display:flex;align-items:center;gap:40px;box-shadow:0 16px 32px -26px rgba(6,70,148,.25)}
.resource-spotlight__media{flex:0 0 340px;max-width:40%}
.resource-spotlight__img{width:100%;height:auto;border-radius:12px;display:block}
.resource-spotlight__content{flex:1;min-width:260px}
.resource-spotlight__heading{font-family:'Roboto Slab',serif;font-weight:500;font-size:26px;margin:0 0 14px;color:#0B2B4A;line-height:1.3}
.resource-spotlight__desc{font-size:15px;line-height:1.7;color:#4A4A4A;margin:0 0 24px}
.resource-spotlight__cta{font-size:15px;font-weight:700;color:#FFFFFF;background:#064694;padding:15px 30px;border-radius:999px;text-decoration:none;display:inline-block;transition:background .25s}
.resource-spotlight__cta:hover{background:#043867 !important}
@media (max-width:680px){
  .resource-spotlight{flex-direction:column;align-items:stretch;gap:20px}
  .resource-spotlight__media{max-width:100%;flex-basis:auto}
}

/* [face_button] - standalone button. Hover colors use CSS custom
 * properties (set inline per instance) since inline styles can't
 * target :hover directly. */
.face-button{display:inline-block;font-weight:700;text-decoration:none;border-radius:999px;text-align:center;background:#064694;color:#FFFFFF;transition:background .25s,color .25s}
.face-button--small{font-size:13px;padding:10px 20px}
.face-button--medium{font-size:15px;padding:15px 30px}
.face-button--large{font-size:17px;padding:18px 40px}
.face-button:hover{background:var(--face-button-hover-bg,#043867) !important;color:var(--face-button-hover-text,#FFFFFF) !important}

/* Equal-height cards: add the class "face-equal-height" to a WPBakery row or
   inner row (Row settings > Extra class name). Every column in that row
   becomes as tall as the tallest one, and the card in each column fills it.
   Self-contained: WPBakery's own "Equal height" option isn't needed. */
.vc_row.face-equal-height{display:flex;flex-wrap:wrap}
.vc_row.face-equal-height::before,.vc_row.face-equal-height::after{display:none}
.vc_row.face-equal-height > .vc_column_container{display:flex;align-items:stretch}
.vc_row.face-equal-height > .vc_column_container > .vc_column-inner{display:flex;flex-direction:column;flex-grow:1;width:100%}
.vc_row.face-equal-height > .vc_column_container > .vc_column-inner > .wpb_wrapper{display:flex;flex-direction:column;flex:1 1 auto}
/* the last element in each column (the card) takes the remaining height */
.vc_row.face-equal-height > .vc_column_container > .vc_column-inner > .wpb_wrapper > :last-child{flex:1 0 auto;height:auto}

/* ---------- Members-only media (Member Video / Member PDF) ---------- */
.member-media{background:#FFFFFF;border-radius:16px;overflow:hidden;box-shadow:0 18px 40px -26px rgba(11,43,74,.35)}
.member-media__thumb{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:16/9;padding:0;border:0;background:linear-gradient(135deg,#0B2B4A,#064694);cursor:pointer;overflow:hidden}
.member-media__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;-webkit-user-drag:none;user-select:none}
.member-media__play{position:relative;display:flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:50%;background:rgba(255,255,255,.94);color:#064694;box-shadow:0 12px 28px -10px rgba(0,0,0,.5);opacity:0;transform:scale(.85);transition:opacity .25s ease,transform .25s ease}
.member-media__play svg{margin-left:3px}
.member-media__thumb:hover .member-media__play,.member-media__thumb:focus-visible .member-media__play{opacity:1;transform:scale(1)}
.member-media__thumb:hover:not(.member-media__thumb--static) .member-media__play{transform:scale(1.08)}
@media (hover:none){.member-media__play{opacity:1;transform:none}}
.member-media__pdf-icon{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;color:#FFFFFF;font-weight:800;letter-spacing:.1em;font-size:13px}
.member-media__body{padding:18px 22px 22px}
.member-media__title{font-family:'Roboto Slab',serif;font-weight:500;font-size:20px;line-height:1.3;margin:0 0 6px;color:#0B2B4A}
.member-media__desc{font-size:15px;line-height:1.6;color:#4A4A4A}
.member-media__btn{margin-top:14px;font-size:14px;font-weight:700;color:#FFFFFF;background:#064694;padding:10px 22px;border:0;border-radius:999px;cursor:pointer;transition:background .25s}
.member-media__btn:hover{background:#0B2B4A}
.member-media--preview{background:#EEF3FA;box-shadow:none}
.member-media__thumb--static{cursor:default}
.member-media--locked{background:#EEF3FA;box-shadow:none;border:1px dashed #9FB6D6}
.member-media__lock{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:200px;padding:28px 20px;text-align:center;color:#0B2B4A}
.member-media__lock-text{font-weight:700;font-size:17px}
.member-media__lock-link{font-size:14px;font-weight:700;color:#064694;text-decoration:underline}
.member-media__lock--below{min-height:0;padding:22px 20px 26px}
.member-media__notice{padding:12px 16px;background:#FFF4D6;border-radius:8px;font-size:14px;color:#7A4B00}

.member-viewer-open{overflow:hidden}
.member-viewer{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:24px}
.member-viewer[hidden]{display:none}
.member-viewer__backdrop{position:absolute;inset:0;background:rgba(4,23,48,.88)}
.member-viewer__panel{position:relative;display:flex;flex-direction:column;width:100%;max-width:1100px;max-height:100%;background:#0B2B4A;border-radius:14px;overflow:hidden;box-shadow:0 30px 80px -20px rgba(0,0,0,.6)}
.member-viewer__bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;color:#FFFFFF}
.member-viewer__title{font-weight:600;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.member-viewer__close{flex:none;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#FFFFFF;font-size:26px;line-height:1;cursor:pointer}
.member-viewer__close:hover{background:rgba(255,255,255,.28)}
.member-viewer__stage{position:relative;flex:1 1 auto;min-height:0;overflow:auto;background:#000}
.member-viewer__video{position:relative;width:100%;aspect-ratio:16/9;background:#000}
.member-viewer__video iframe,.member-viewer__video video{position:absolute;inset:0;width:100%;height:100%;border:0}
.member-viewer__pdf{display:flex;flex-direction:column;align-items:center;gap:14px;padding:16px;background:#2B3744}
.member-viewer__page{display:block;max-width:100%;height:auto !important;background:#FFFFFF;-webkit-user-select:none;user-select:none}
.member-viewer__msg{padding:48px 24px;text-align:center;color:#FFFFFF}
.member-viewer__watermark{position:absolute;right:16px;top:62px;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:rgba(255,255,255,.35);pointer-events:none;user-select:none}
@media (max-width:680px){
  .member-viewer{padding:0}
  .member-viewer__panel{max-height:100%;height:100%;border-radius:0}
  .member-viewer__stage{display:flex;align-items:center}
  .member-viewer__stage .member-viewer__pdf{align-self:flex-start;width:100%}
}

/* Member login: states added with the working login form */
.member-login__error{margin-bottom:18px;padding:12px 14px;border-radius:8px;background:#FBE9E9;color:#9A1F1F;font-size:14px;line-height:1.5}
.member-login__row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px}
.member-login__remember{display:inline-flex;align-items:center;gap:6px;color:#4A4A4A}
.member-login__welcome{margin:0;text-align:center;color:#4A4A4A;font-size:15px}
.member-login__submit--link{display:block;text-align:center;text-decoration:none;box-sizing:border-box}
.member-login__signout{text-align:center;font-size:14px}

/* Book Card: members-only lock notice */
.book-card__lock{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px 4px;color:#0B2B4A}
.book-card__lock-text{font-size:14px;font-weight:700}
.book-card__lock-link{font-size:13px;font-weight:700;color:#064694;text-decoration:underline}

/* Book Card: the Member PDF action is a <button> that looks like the link button */
.book-card__pdf{font-family:inherit;border:0;cursor:pointer}
