
            /* @import statements hoisted from the tenant's custom CSS — they
               must precede every other rule in this stylesheet or browsers
               silently drop them. */
            

            /* Theme variables and custom CSS.
               themeStyles (:root brand vars) is emitted in BOTH native and
               advanced modes so page-builder components keep brand colors/fonts.
               In advanced mode the imported custom_css is injected afterwards and
               overrides the imported markup's look. */
            :root {
  --color-primary: #009B95;
  --color-secondary: #25467D;
  --color-accent: #009B95;
  --color-secondaryAccent: #416AAB;
  --color-background: #FFFFFF;
  --color-surface: #F4F7FA;
  --color-text: #24323D;
  --color-textSecondary: #647482;
  --color-heading: var(--color-text);
  --heading-h1-size: 2.5rem;
  --heading-h1-color: var(--color-heading, var(--color-text));
  --heading-h2-size: 2rem;
  --heading-h2-color: var(--color-heading, var(--color-text));
  --heading-h3-size: 1.75rem;
  --heading-h3-color: var(--color-heading, var(--color-text));
  --heading-h4-size: 1.5rem;
  --heading-h4-color: var(--color-heading, var(--color-text));
  --heading-h5-size: 1.25rem;
  --heading-h5-color: var(--color-heading, var(--color-text));
  --heading-h6-size: 1rem;
  --heading-h6-color: var(--color-heading, var(--color-text));
  --color-border: #D8E1E8;
  --color-success: #146C4A;
  --color-warning: #9A671B;
  --color-error: #A33434;
  --font-primary: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-secondary: 'Georgia', 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --content-max-width: 100%;
}
body { background-color: #FFFFFF; }

body { background-color: #FFFFFF; }

            /* Site-level custom CSS (sanitized). Only applied in advanced mode;
               native mode stores but does not apply. */
            /*
 * NABIP Tulsa — Recur advanced styling
 * Visual direction: NABIP Illinois reference translated to native Puck output.
 * Keep this file free of literal angle-bracket characters; Recur hashes the stored CSS.
 */
@font-face {
  font-family: "Montserrat";
  src: url("/media/nabiptulsa/prod/64744e53-594d-492c-8fb6-6773cde3f80b/documents/2026/09/5f14d547-f0f2-4ae5-8f3b-3117ef3156b5.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

:root {
  --nabip-navy: #25477c;
  --nabip-navy-soft: #31598f;
  --nabip-blue: #25477c;
  --nabip-blue-light: #416aab;
  --nabip-teal: #009b95;
  --nabip-teal-dark: #007c78;
  --nabip-white: #ffffff;
  --nabip-surface: #f4f7fa;
  --nabip-surface-blue: #eaf1f7;
  --nabip-border: #d8e1e8;
  --nabip-text: #24323d;
  --nabip-muted: #647482;
  --nabip-shadow-sm: 0 8px 24px rgba(22, 31, 38, 0.07);
  --nabip-shadow-md: 0 18px 48px rgba(22, 31, 38, 0.13);
  --nabip-radius: 10px;
  --nabip-radius-lg: 16px;
  --nabip-content: 1280px;
  --nabip-gutter: clamp(16px, 3vw, 32px);
  --nabip-section: clamp(56px, 7vw, 88px);
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--nabip-text);
  background: var(--nabip-white);
  font-family: "Montserrat", "Avenir Next", Avenir, Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.7;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

body,
button,
input,
select,
textarea {
  font-family: "Montserrat", "Avenir Next", Avenir, Helvetica, Arial, sans-serif;
}

body *:not(.material-symbols-rounded):not(.material-symbols-outlined):not(.material-symbols-sharp) {
  font-family: "Montserrat", "Avenir Next", Avenir, Helvetica, Arial, sans-serif !important;
}

body .material-symbols-rounded {
  font-family: "Material Symbols Rounded" !important;
}

body .material-symbols-outlined {
  font-family: "Material Symbols Outlined" !important;
}

body .material-symbols-sharp {
  font-family: "Material Symbols Sharp" !important;
}

::selection {
  color: var(--nabip-white);
  background: var(--nabip-teal);
}

a {
  color: var(--nabip-blue);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  transition: color 160ms ease, opacity 160ms ease;
}

a:hover {
  color: var(--nabip-teal-dark);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 3px;
}

/* Global reading frame and vertical rhythm */
.puck-page,
.puck-root {
  overflow: clip;
}

.puck-text,
.puck-heading,
.puck-grid,
.puck-grid-preset,
.puck-columns,
.puck-flex,
.puck-card,
.puck-stats,
.puck-cta,
.puck-image,
.puck-video,
.puck-file,
.recur-event-list,
.recur-product-list,
.recur-member-directory,
.recur-nl,
.puck-contact {
  box-sizing: border-box;
}

.puck-text {
  max-width: 900px;
  margin-inline: auto;
  padding-inline: var(--nabip-gutter);
  color: var(--nabip-text);
}

.puck-text p {
  margin: 0 0 1.1em;
}

.puck-text p:last-child,
.puck-text ul:last-child,
.puck-text ol:last-child {
  margin-bottom: 0;
}

.puck-text h2,
.puck-text h3,
.puck-text h4 {
  color: var(--nabip-navy);
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.puck-text h2 {
  margin: 0 0 18px;
  font-size: clamp(28px, 4vw, 42px);
}

.puck-text h3 {
  margin: 28px 0 12px;
  font-size: clamp(22px, 3vw, 30px);
}

.puck-text ul,
.puck-text ol {
  padding-left: 1.35em;
}

.puck-text li + li {
  margin-top: 8px;
}

.puck-heading {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: var(--nabip-section) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
}

.puck-heading h1,
.puck-heading h2,
.puck-heading h3,
.puck-heading h4 {
  margin: 0;
}

.puck-heading[data-level="1"] {
  font-size: clamp(34px, 5vw, 58px);
}

.puck-heading[data-level="2"] {
  font-size: clamp(28px, 4vw, 42px);
}

.puck-heading[data-level="3"] {
  font-size: clamp(22px, 3vw, 30px);
}

.puck-grid,
.puck-grid-preset,
.puck-columns,
.puck-flex {
  width: min(100%, var(--nabip-content));
  margin-inline: auto;
  padding-inline: var(--nabip-gutter);
}

.puck-grid,
.puck-grid-preset {
  padding-block: 18px var(--nabip-section);
}

.puck-grid-column,
.puck-columns-col,
.puck-column,
.puck-flex-item {
  min-width: 0;
}

.puck-grid-heading {
  color: var(--nabip-navy);
  font-weight: 750;
  letter-spacing: -0.02em;
}

.puck-grid-subheading {
  color: var(--nabip-muted);
}

.puck-columns {
  gap: clamp(24px, 4vw, 56px);
}

.puck-space {
  height: clamp(20px, 4vw, 64px);
}

/* Header and navigation */
.site-header {
  position: sticky;
  z-index: 30;
  top: 0;
  min-height: 80px;
  border-bottom: 1px solid rgba(216, 225, 232, 0.88);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 8px 28px rgba(22, 31, 38, 0.08);
  backdrop-filter: blur(18px);
}

.header-grid,
.header-flex {
  width: 100%;
  min-height: 80px;
  margin-inline: auto;
  padding: 10px clamp(16px, 2vw, 24px);
  box-sizing: border-box;
}

.header-grid-row,
.header-grid-zone,
.header-grid-zone--center {
  align-items: center;
}

.header-logo-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--nabip-navy);
  text-decoration: none;
}

.header-logo-img {
  display: block;
  width: auto;
  max-width: 226px;
  max-height: 58px;
  object-fit: contain;
}

.header-logo-text {
  color: var(--nabip-navy);
  font-size: 15px;
  font-weight: 750;
  line-height: 1.15;
}

.header-nav,
.nav-menu {
  display: flex;
  align-items: center;
  gap: clamp(9px, 1.2vw, 16px);
  flex-wrap: nowrap;
}

.header-grid-zone--center {
  min-width: 0;
}

.header-grid-zone--center .nav-menu {
  flex-wrap: nowrap;
}

.site-header .header-nav .nav-menu {
  gap: clamp(9px, 1.2vw, 16px);
  flex-wrap: nowrap;
}

.site-header .header-nav .nav-link,
.site-header .header-nav .nav-link-dropdown {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding-inline: 5px;
  border-radius: 0;
  color: var(--nabip-navy);
  font-family: "Montserrat", "Avenir Next", Avenir, Helvetica, Arial, sans-serif;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0;
  text-decoration: none;
  white-space: nowrap;
  transition: color 160ms ease;
}

.site-header .header-nav .nav-link:hover,
.site-header .header-nav .nav-link-dropdown:hover,
.site-header .header-nav .nav-link[aria-current="page"] {
  color: var(--nabip-teal-dark);
  background: transparent;
}

.site-header .header-nav .dropdown-arrow {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-left: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  font-size: 0;
  line-height: 0;
  transform: translateY(-2px) rotate(45deg);
  transform-origin: center;
}

.site-header .header-nav .nav-link[aria-current="page"]::after,
.site-header .header-nav .nav-link-dropdown[aria-expanded="true"]::after {
  content: none;
}

.site-header .header-nav .nav-dropdown {
  min-width: 208px;
  margin-top: 4px;
  padding: 4px;
  border: 1px solid var(--nabip-border);
  border-radius: 5px;
  background: var(--nabip-white);
  box-shadow: 0 10px 24px rgba(37, 71, 124, 0.18);
}

.site-header .header-nav .nav-dropdown .nav-link {
  display: flex;
  width: 100%;
  min-height: 36px;
  padding: 7px 9px;
  border-radius: 4px;
  box-sizing: border-box;
  color: var(--nabip-text);
  font-size: 15px;
  font-weight: 500;
}

.site-header .header-nav .nav-dropdown .nav-link:hover,
.site-header .header-nav .nav-dropdown .nav-link:focus,
.site-header .header-nav .nav-dropdown .nav-link[aria-current="page"] {
  background: var(--nabip-teal);
  color: var(--nabip-white);
}

.header-cta-button,
.puck-button,
.puck-button-container a,
.header-cta a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 11px 21px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-size: 13px;
  font-weight: 750;
  letter-spacing: 0.01em;
  text-decoration: none;
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.header-cta-button:hover,
.puck-button:hover,
.puck-button-container a:hover,
.header-cta a:hover {
  transform: translateY(-2px);
  background: var(--nabip-teal-dark);
  color: var(--nabip-white);
  box-shadow: 0 9px 20px rgba(0, 124, 120, 0.22);
}

.site-header .header-cta-button {
  border-radius: 999px;
}

.site-header .header-cta-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(0, 124, 120, 0.24);
}

.site-header .header-cta:first-of-type .header-cta-button {
  border-color: var(--nabip-blue);
  background: transparent;
  color: var(--nabip-blue);
}

.site-header .header-cta:first-of-type .header-cta-button:hover {
  background: var(--nabip-blue);
  color: var(--nabip-white);
}

.header-social,
.header-contact,
.nav-login-icon {
  color: var(--nabip-muted);
}

.mobile-nav {
  border-top: 1px solid var(--nabip-border);
  background: var(--nabip-white);
}

.mobile-nav-title {
  color: var(--nabip-navy);
  font-size: 12px;
  font-weight: 750;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.mobile-nav-login,
.mobile-nav-login-link,
.mobile-nav-portal-link,
.mobile-nav-signout-link {
  color: var(--nabip-blue);
  font-weight: 700;
}

/* Hero system */
.puck-hero {
  position: relative;
  isolation: isolate;
  width: calc(100% + 64px);
  margin-inline: -32px;
  min-height: clamp(380px, 52vw, 650px);
  overflow: hidden;
  background: var(--nabip-navy);
  color: var(--nabip-white);
}

.puck-hero::before {
  position: absolute;
  z-index: -2;
  inset: 0;
  background: linear-gradient(90deg, rgba(37, 71, 124, 0.93) 0%, rgba(37, 71, 124, 0.72) 48%, rgba(37, 71, 124, 0.5) 100%);
  content: "";
}

.puck-hero::after {
  position: absolute;
  z-index: -3;
  inset: 0;
  background: var(--nabip-blue);
  content: "";
}

.puck-hero[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"]::after {
  background: transparent;
}

.puck-hero[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"] {
  background-image: url("https://sites.getrecur.com/media/nabiptulsa/prod/64744e53-594d-492c-8fb6-6773cde3f80b/images/2026/09/9af4971e-ed44-4797-832b-7785f3fea7ec.png") !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

.puck-hero.puck-hero--standard[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"] > .puck-hero-content {
  display: flex;
  width: 100% !important;
  max-width: none !important;
  align-items: flex-start !important;
  flex-direction: column;
  margin-inline: 0 !important;
  padding-inline: clamp(20px, 5vw, 64px) !important;
  box-sizing: border-box;
  text-align: left !important;
}

.puck-hero[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"] .puck-hero-title {
  margin-inline: 0;
  font-family: "Montserrat", "Avenir Next", Avenir, Helvetica, Arial, sans-serif;
  font-weight: 800;
  letter-spacing: -0.045em;
  line-height: 1.04;
  text-align: left !important;
}

.puck-hero[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"] .puck-hero-eyebrow,
.puck-hero[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"] .puck-hero-subtitle {
  margin-right: auto;
  margin-left: 0;
  text-align: left !important;
}

.puck-hero[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"] .puck-hero-cta {
  justify-content: flex-start !important;
  margin-right: auto;
  margin-left: 0;
}

.puck-hero--standard,
.puck-hero--carousel,
.puck-hero--video {
  min-height: clamp(440px, 57vw, 700px);
}

.puck-hero--standard .puck-hero-content,
.puck-hero--carousel .puck-hero-content,
.puck-hero--video .puck-hero-content,
.puck-hero--split .puck-hero-content {
  width: min(100%, var(--nabip-content));
  margin-inline: auto;
  padding: clamp(70px, 11vw, 150px) var(--nabip-gutter);
  box-sizing: border-box;
}

.puck-hero-content {
  position: relative;
  z-index: 1;
}

.puck-hero-eyebrow {
  margin-bottom: 18px;
  color: #8ce0dc;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.puck-hero-title {
  max-width: 780px;
  margin: 0;
  color: var(--nabip-white);
  font-size: clamp(38px, 6vw, 72px);
  font-weight: 780;
  letter-spacing: -0.055em;
  line-height: 1.02;
}

.puck-hero-subtitle {
  max-width: 650px;
  margin: 22px 0 0;
  color: rgba(255, 255, 255, 0.88);
  font-size: clamp(16px, 2vw, 21px);
  line-height: 1.55;
}

.puck-hero-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 32px;
}

.puck-hero-cta-primary,
.puck-hero-cta-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 12px 24px;
  border-radius: 7px;
  font-size: 14px;
  font-weight: 750;
  text-decoration: none;
}

.puck-hero-cta-primary {
  background: var(--nabip-teal);
  color: var(--nabip-white);
}

.puck-hero-cta-secondary {
  border: 1px solid rgba(255, 255, 255, 0.72);
  color: var(--nabip-white);
}

.puck-hero-cta-primary:hover,
.puck-hero-cta-secondary:hover {
  color: var(--nabip-white);
  transform: translateY(-2px);
}

.puck-hero--minimal {
  min-height: 260px;
}

.puck-hero--minimal .puck-hero-content,
.puck-hero--offset .puck-hero-content {
  padding-block: 72px;
}

.puck-hero--split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.9fr);
  min-height: 460px;
}

.puck-hero-split-panel {
  display: flex;
  align-items: center;
  padding: clamp(32px, 6vw, 90px);
  background: var(--nabip-navy);
}

.puck-hero-split-image {
  min-height: 100%;
  background-position: center;
  background-size: cover;
}

.puck-hero-video-el,
.puck-hero-video-overlay {
  position: absolute;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  inset: 0;
}

.puck-hero-video-overlay {
  z-index: -1;
  background: rgba(22, 31, 38, 0.42);
}

/* Cards, stats, images and CTAs */
.puck-card {
  height: 100%;
  overflow: hidden;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.puck-card:hover {
  border-color: rgba(0, 155, 149, 0.48);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-4px);
}

.puck-card--featured,
.puck-card--action {
  border-top: 4px solid var(--nabip-teal);
}

.puck-grid--quick-links {
  width: min(100%, 1280px);
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px;
  align-items: stretch;
  padding-top: 32px;
}

.puck-grid--quick-links .puck-grid-column {
  height: 100%;
  align-self: stretch;
}

.puck-grid--quick-links .puck-card--quick-link {
  height: 100%;
  min-height: 0 !important;
  border: 1px solid var(--nabip-border);
  border-left: 7px solid var(--nabip-teal);
  border-radius: 12px;
  box-shadow: 0 8px 22px rgba(37, 71, 124, 0.09);
}

@media (max-width: 700px) {
  .puck-grid--quick-links {
    grid-template-columns: 1fr !important;
  }
}

/*
 * Join member information pairing
 * Keep the native Heading and Text Pucks as authored while presenting the
 * member statement and monthly meetings as balanced adjacent sections.
 */
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners) {
  display: grid;
  grid-template-columns:
    max(var(--nabip-gutter), calc((100vw - 1280px) / 2))
    minmax(0, 1fr)
    clamp(18px, 3vw, 30px)
    minmax(0, 1fr)
    max(var(--nabip-gutter), calc((100vw - 1280px) / 2));
  column-gap: 0;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > * {
  grid-column: 1 / -1;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > h2:nth-child(3) {
  grid-column: 2;
  grid-row: 3;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(4) {
  grid-column: 2;
  grid-row: 4;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > h2:nth-child(5) {
  grid-column: 4;
  grid-row: 3;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(6) {
  grid-column: 4;
  grid-row: 4;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > :is(h2:nth-child(3), h2:nth-child(5), .puck-text:nth-child(4), .puck-text:nth-child(6)) {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > :is(.puck-text:nth-child(4), .puck-text:nth-child(6)) {
  height: 100%;
}

@media (max-width: 700px) {
  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners) {
    grid-template-columns: 1fr;
  }

  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > h2:nth-child(3) {
    grid-column: 1;
    grid-row: 3;
  }

  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(4) {
    grid-column: 1;
    grid-row: 4;
  }

  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > h2:nth-child(5) {
    grid-column: 1;
    grid-row: 5;
  }

  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(6) {
    grid-column: 1;
    grid-row: 6;
  }
}

/*
 * Scholarships partner band
 * Extend the native partner heading and grid backdrop to the viewport edges,
 * and let the final gray band meet the footer without a white spacer.
 */
main:has(#puck-content > .puck-grid--scholarship-options:nth-child(3)) {
  padding-bottom: 0 !important;
}

main:has(#puck-content > .puck-grid--scholarship-options:nth-child(3))
  + .site-footer {
  margin-top: 0 !important;
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(
    > .puck-button-container:nth-child(6)
  ):has(> .puck-grid--partners:nth-child(8))
  > :is(
    h2:nth-child(4),
    .puck-text:nth-child(5),
    .puck-button-container:nth-child(6),
    h2:nth-child(7),
    .puck-grid--partners:nth-child(8)
  ) {
  width: 100vw !important;
  max-width: none !important;
  margin-inline: calc(50% - 50vw) !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(
    > .puck-button-container:nth-child(6)
  ):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(4) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100vw - var(--nabip-content)) / 2)
  ) !important;
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(
    > .puck-button-container:nth-child(6)
  ):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(7),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(
    > .puck-button-container:nth-child(6)
  ):has(> .puck-grid--partners:nth-child(8))
  > .puck-grid--partners:nth-child(8) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100vw - var(--nabip-content)) / 2)
  ) !important;
}

.puck-grid--quick-links .puck-card-featured-content {
  padding: 30px 32px;
  box-sizing: border-box;
}

.puck-grid--quick-links .puck-grid-column:nth-child(2) .puck-card--quick-link {
  border-left-color: var(--nabip-blue);
}

.puck-grid--quick-links .puck-card-eyebrow {
  display: none;
}

.puck-grid--quick-links .puck-card-title {
  margin: 0 0 8px;
  font-size: clamp(23px, 2.4vw, 28px);
  line-height: 1.25;
}

.puck-grid--quick-links .puck-card-description {
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
}

.puck-grid--quick-links .puck-card-button {
  display: flex !important;
  width: 100%;
  min-height: 56px;
  margin-top: 22px;
  padding: 12px 20px;
  border-radius: 6px;
  box-sizing: border-box;
  font-size: 16px;
}

.puck-grid--quick-links .puck-grid-column:nth-child(2) .puck-card-button {
  border: 1px solid var(--nabip-blue);
  background: transparent;
  color: var(--nabip-blue);
}

.puck-grid--quick-links .puck-grid-column:nth-child(2) .puck-card-button:visited {
  color: var(--nabip-blue);
}

.puck-grid--quick-links .puck-grid-column:nth-child(2) .puck-card-button:hover,
.puck-grid--quick-links .puck-grid-column:nth-child(2) .puck-card-button:focus {
  background: var(--nabip-blue);
  color: var(--nabip-white);
}

.puck-grid--programs {
  gap: 18px;
  align-items: stretch;
  padding-top: 32px;
}

.puck-grid--programs .puck-grid-column {
  height: 100%;
}

.puck-grid--programs .puck-grid-column > a {
  display: block;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.puck-grid--programs .puck-card--program {
  height: 100%;
  min-height: 0 !important;
  padding: 24px 20px !important;
  gap: 12px !important;
  border: 1px solid var(--nabip-border);
  border-radius: 9px;
  background: var(--nabip-white);
  box-shadow: 0 3px 10px rgba(37, 71, 124, 0.07);
  box-sizing: border-box;
}

.puck-grid--programs .puck-card--program:hover {
  border-color: rgba(0, 155, 149, 0.42);
  box-shadow: 0 12px 28px rgba(37, 71, 124, 0.12);
  transform: translateY(-2px);
}

.puck-grid--programs .material-symbols-rounded {
  display: inline-grid;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  place-items: center;
  overflow: hidden;
  border-radius: 50%;
  background: rgba(0, 155, 149, 0.1);
  color: var(--nabip-teal-dark);
  font-size: 22px;
  line-height: 1;
}

.puck-grid--programs .puck-grid-column:nth-child(even) .material-symbols-rounded {
  background: rgba(37, 71, 124, 0.09);
  color: var(--nabip-blue);
}

.puck-grid--programs .puck-card-title {
  margin: 0 0 8px;
  font-size: 18px;
  line-height: 1.28;
}

.puck-grid--programs .puck-card-description {
  margin: 0;
  font-size: 15px;
  line-height: 1.55;
}

.puck-card--charity img {
  background: var(--nabip-white);
  object-fit: contain !important;
  object-position: center center !important;
}

.puck-card--minimal {
  border-color: transparent;
  border-radius: var(--nabip-radius);
  background: transparent;
  box-shadow: none;
}

.puck-card-title {
  color: var(--nabip-navy);
  font-size: 20px;
  font-weight: 750;
  letter-spacing: -0.025em;
  line-height: 1.22;
}

.puck-card-description {
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.65;
}

.puck-card-eyebrow,
.puck-card-meta-label {
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.puck-card-meta,
.puck-card-meta-row {
  color: var(--nabip-muted);
  font-size: 12px;
}

.puck-card-meta-value {
  color: var(--nabip-text);
  font-weight: 650;
}

.puck-card-meta-link {
  color: var(--nabip-blue);
}

.puck-card-avatar,
.puck-card-avatar-img {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  object-fit: cover;
}

.puck-card-avatar--ring {
  padding: 4px;
  border: 2px solid var(--nabip-teal);
  background: var(--nabip-white);
}

.puck-card-featured-overlay,
.puck-card-featured-content {
  position: relative;
}

.puck-card-button {
  color: var(--nabip-white);
  font-weight: 750;
  text-decoration: none;
}

.puck-card .puck-card-button:visited,
.puck-card .puck-card-button:hover,
.puck-card .puck-card-button:focus,
.puck-card .puck-card-button:active {
  color: var(--nabip-white);
}

.puck-stats {
  width: min(100%, var(--nabip-content));
  margin-inline: auto;
  padding: var(--nabip-section) var(--nabip-gutter);
  background: var(--nabip-navy);
  color: var(--nabip-white);
}

.puck-stats-title {
  color: var(--nabip-white);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
}

.puck-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin-top: 28px;
}

.puck-stat-card {
  padding: 24px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--nabip-radius);
  background: rgba(255, 255, 255, 0.06);
}

.puck-stat-value {
  color: #8ce0dc;
  font-size: clamp(28px, 4vw, 48px);
  font-weight: 780;
  line-height: 1;
}

.puck-stat-label {
  margin-top: 10px;
  color: var(--nabip-white);
  font-weight: 750;
}

.puck-stat-description {
  margin-top: 6px;
  color: rgba(255, 255, 255, 0.68);
  font-size: 13px;
}

.puck-cta {
  width: min(100%, var(--nabip-content));
  margin: var(--nabip-section) auto;
  padding: clamp(32px, 6vw, 64px) var(--nabip-gutter);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-navy);
  color: var(--nabip-white);
}

.puck-cta-title {
  color: var(--nabip-white);
  font-size: clamp(28px, 4vw, 46px);
  font-weight: 750;
  letter-spacing: -0.04em;
}

.puck-cta-description {
  max-width: 680px;
  color: rgba(255, 255, 255, 0.78);
}

.puck-cta--advocacy .puck-cta-description {
  margin-inline: auto;
  text-align: center;
}

.puck-cta-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.puck-cta-primary,
.puck-cta-secondary {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border-radius: 7px;
  font-weight: 750;
  text-decoration: none;
}

.puck-cta-primary {
  background: var(--nabip-teal);
  color: var(--nabip-white);
}

.puck-cta-secondary {
  border: 1px solid rgba(255, 255, 255, 0.55);
  color: var(--nabip-white);
}

.puck-image,
.puck-video {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: 18px var(--nabip-gutter) var(--nabip-section);
}

.puck-image-img,
.puck-image-figure img,
.puck-video-media {
  display: block;
  width: 100%;
  border-radius: var(--nabip-radius-lg);
  object-fit: cover;
  box-shadow: var(--nabip-shadow-sm);
}

.puck-image-figure {
  margin: 0;
}

.puck-image-caption {
  margin-top: 10px;
  color: var(--nabip-muted);
  font-size: 12px;
  text-align: center;
}

.puck-image-viewer-trigger {
  cursor: zoom-in;
}

.puck-image-viewer-overlay {
  background: rgba(22, 31, 38, 0.92);
}

.puck-image-viewer-img {
  max-width: min(92vw, 1400px);
  max-height: 86vh;
}

.puck-image-viewer-close,
.puck-image-viewer-previous,
.puck-image-viewer-next {
  color: var(--nabip-white);
}

/* Native Recur data widgets: complete decoration because advanced mode owns appearance. */
.recur-event-list,
.recur-product-list,
.recur-member-directory,
.recur-nl {
  width: min(100%, var(--nabip-content));
  margin-inline: auto;
  padding: 18px var(--nabip-gutter) var(--nabip-section);
}

.recur-event-list-title,
.recur-product-list-title,
.recur-member-dir-title {
  color: var(--nabip-navy);
  font-size: clamp(26px, 4vw, 40px);
  font-weight: 750;
  letter-spacing: -0.035em;
}

.recur-event-list-grid,
.recur-product-list-grid,
.recur-member-dir-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-top: 26px;
}

.recur-event-card,
.recur-product-card,
.recur-member-dir-card {
  overflow: hidden;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
}

.recur-event-card-image,
.recur-product-card-image,
.recur-member-dir-avatar {
  display: block;
  width: 100%;
  height: 190px;
  object-fit: cover;
  background: var(--nabip-surface-blue);
}

.recur-event-card-body,
.recur-product-card-body {
  padding: 22px;
}

.recur-event-card-title,
.recur-product-card-title,
.recur-member-dir-name {
  color: var(--nabip-navy);
  font-weight: 750;
  line-height: 1.25;
}

.recur-event-card-date,
.recur-product-card-price,
.recur-member-dir-meta {
  color: var(--nabip-teal-dark);
  font-size: 13px;
  font-weight: 700;
}

.recur-event-card-description,
.recur-product-card-description,
.recur-member-dir-row,
.recur-member-dir-empty {
  color: var(--nabip-muted);
  font-size: 14px;
}

.recur-event-card-button,
.recur-product-card-button,
.recur-member-dir-page-btn {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  padding: 8px 16px;
  border-radius: 6px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-size: 13px;
  font-weight: 750;
  text-decoration: none;
}

.recur-event-list-empty,
.recur-product-list-empty,
.recur-member-dir-empty {
  padding: 36px 24px;
  border: 1px dashed var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-surface);
  text-align: center;
}

.recur-event-calendar-title {
  color: var(--nabip-navy);
  font-weight: 750;
}

.recur-event-calendar-day,
.recur-event-calendar-event {
  border-color: var(--nabip-border);
}

.recur-event-modal-backdrop,
.recur-member-dir-modal-backdrop,
.recur-nl-overlay {
  background: rgba(22, 31, 38, 0.68);
}

.recur-event-modal-title,
.recur-member-dir-modal-title,
.recur-nl-modal-title {
  color: var(--nabip-navy);
  font-weight: 750;
}

.recur-event-modal-body,
.recur-member-dir-modal-body {
  color: var(--nabip-text);
}

.recur-event-modal-button,
.recur-member-dir-modal-contact {
  color: var(--nabip-teal-dark);
  font-weight: 750;
}

.recur-member-dir-search,
.recur-nl-input,
.recur-nl-field input,
.recur-nl-field textarea,
.recur-nl-field select {
  min-height: 46px;
  box-sizing: border-box;
  border: 1px solid var(--nabip-border);
  border-radius: 7px;
  background: var(--nabip-white);
  color: var(--nabip-text);
  padding: 10px 13px;
}

.recur-member-dir-chip,
.recur-member-dir-chip-active,
.recur-member-dir-clear {
  border-radius: 999px;
  border: 1px solid var(--nabip-border);
  color: var(--nabip-blue);
  font-size: 12px;
  font-weight: 700;
}

.recur-member-dir-chip-active {
  border-color: var(--nabip-teal);
  background: var(--nabip-teal);
  color: var(--nabip-white);
}

.recur-member-dir-list {
  display: grid;
  gap: 12px;
}

.recur-member-dir-pagination,
.recur-member-dir-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 24px;
}

.recur-member-dir-page-label,
.recur-member-dir-meta-sm,
.recur-member-dir-modal-meta,
.recur-member-dir-modal-location,
.recur-member-dir-modal-tags,
.recur-member-dir-modal-bio,
.recur-member-dir-phone,
.recur-member-dir-link {
  color: var(--nabip-muted);
  font-size: 13px;
}

.recur-member-dir-modal {
  width: min(680px, calc(100% - 32px));
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-md);
}

.recur-member-dir-modal-close {
  color: var(--nabip-muted);
}

.recur-nl-form {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.recur-nl-input {
  flex: 1 1 220px;
}

.recur-nl-button,
.recur-nl-submit {
  min-height: 46px;
  padding: 10px 20px;
  border: 0;
  border-radius: 7px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-weight: 750;
}

.recur-nl-description,
.recur-nl-label {
  color: var(--nabip-muted);
  font-size: 13px;
}

.recur-nl-modal {
  width: min(560px, calc(100% - 32px));
  padding: 28px;
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
}

.recur-nl-modal-close {
  color: var(--nabip-muted);
}

.recur-nl-checkbox-row {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  color: var(--nabip-muted);
  font-size: 12px;
}

.recur-nl-hp {
  position: absolute;
  left: -10000px;
}

.recur-nl-error {
  color: #a33434;
}

.recur-nl-success {
  color: #146c4a;
}

/* Footer */
.site-footer {
  margin-top: var(--nabip-section);
  background: var(--nabip-navy);
  color: rgba(255, 255, 255, 0.74);
}

.site-footer-content {
  display: grid;
  grid-template-columns: minmax(220px, 1.3fr) repeat(3, minmax(150px, 1fr));
  gap: 36px;
  width: min(100%, var(--nabip-content));
  margin-inline: auto;
  padding: 68px var(--nabip-gutter);
  box-sizing: border-box;
}

.site-footer-section {
  min-width: 0;
}

.site-footer-title {
  margin: 0 0 16px;
  color: var(--nabip-white);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.site-footer-logo {
  display: block;
  max-width: 220px;
  max-height: 62px;
  margin-bottom: 18px;
  object-fit: contain;
}

.site-footer-text,
.site-footer-description {
  max-width: 320px;
  color: rgba(255, 255, 255, 0.68);
  font-size: 13px;
  line-height: 1.75;
}

.site-footer-links,
.site-footer-contact,
.site-footer-social {
  display: grid;
  gap: 9px;
}

.site-footer-links a,
.site-footer-contact a,
.site-footer-social-link {
  color: rgba(255, 255, 255, 0.74);
  font-size: 13px;
  text-decoration: none;
}

.site-footer-links a:hover,
.site-footer-contact a:hover,
.site-footer-social-link:hover {
  color: #8ce0dc;
}

.site-footer-custom,
.site-footer-empty {
  color: rgba(255, 255, 255, 0.6);
  font-size: 13px;
}

.footer-bottom-bar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  padding: 18px var(--nabip-gutter);
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.54);
  font-size: 12px;
}

.footer-bottom-bar-link {
  color: rgba(255, 255, 255, 0.72);
}

/* Forms and native legal/media components */
.puck-contact,
.puck-file,
.puck-pdf-embed {
  width: min(100%, 820px);
  margin: 0 auto;
  padding: 24px var(--nabip-gutter) var(--nabip-section);
}

.puck-contact label,
.puck-contact legend {
  color: var(--nabip-navy);
  font-size: 13px;
  font-weight: 700;
}

.puck-contact input,
.puck-contact textarea,
.puck-contact select {
  width: 100%;
  min-height: 46px;
  box-sizing: border-box;
  margin-top: 7px;
  padding: 10px 13px;
  border: 1px solid var(--nabip-border);
  border-radius: 7px;
  background: var(--nabip-white);
  color: var(--nabip-text);
}

.puck-contact textarea {
  min-height: 150px;
}

.puck-contact button,
.puck-file a {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  padding: 10px 20px;
  border: 0;
  border-radius: 7px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-weight: 750;
  text-decoration: none;
}

.puck-contact input:focus,
.puck-contact textarea:focus,
.puck-contact select:focus {
  border-color: var(--nabip-teal);
  outline: 3px solid rgba(0, 155, 149, 0.2);
  outline-offset: 1px;
}

.puck-contact [aria-invalid="true"],
.puck-contact .error input,
.puck-contact .error textarea,
.puck-contact .error select,
.puck-contact .field-error input,
.puck-contact .field-error textarea,
.puck-contact .field-error select {
  border-color: #b42318;
}

.puck-contact .error,
.puck-contact .error-message,
.puck-contact .field-error,
.puck-contact .form-error {
  color: #b42318;
  font-size: 0.9rem;
  font-weight: 650;
}

.puck-contact .success,
.puck-contact .success-message,
.puck-contact .form-success {
  padding: 16px 18px;
  border: 1px solid rgba(0, 155, 149, 0.35);
  border-radius: var(--nabip-radius);
  background: rgba(0, 155, 149, 0.08);
  color: var(--nabip-navy);
  font-weight: 650;
}

.puck-contact button:hover,
.puck-contact button:focus-visible {
  background: var(--nabip-blue);
}

/* Home awards gallery
   The awards grid is intentionally scoped here so native Image components
   elsewhere retain their editorial, full-bleed treatment. */
.puck-grid--awards {
  position: relative;
  isolation: isolate;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: start;
  gap: clamp(18px, 2.5vw, 30px);
  padding-top: 28px;
  padding-bottom: clamp(52px, 6vw, 76px);
}

.puck-grid--awards::before {
  position: absolute;
  z-index: -1;
  top: 0;
  right: var(--nabip-gutter);
  left: var(--nabip-gutter);
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(37, 71, 124, 0.18) 18%,
    rgba(0, 155, 149, 0.3) 50%,
    rgba(37, 71, 124, 0.18) 82%,
    transparent
  );
  content: "";
}

.puck-grid--awards .puck-grid-column {
  display: grid;
  align-content: start;
  gap: clamp(18px, 2.5vw, 28px);
}

.puck-grid--awards .puck-image {
  position: relative;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 10px;
  border: 1px solid transparent;
  border-radius: var(--nabip-radius-lg);
  background:
    linear-gradient(145deg, rgba(234, 241, 247, 0.96), rgba(255, 255, 255, 0.98) 62%),
    var(--nabip-white);
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.9) inset,
    0 8px 20px rgba(37, 71, 124, 0.08);
  transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}

.puck-grid--awards .puck-image::before {
  position: absolute;
  top: -1px;
  right: 22px;
  left: 22px;
  height: 3px;
  border-radius: 0 0 4px 4px;
  background: var(--nabip-teal);
  content: "";
}

.puck-grid--awards .puck-grid-column:nth-child(even) .puck-image::before {
  background: var(--nabip-blue-light);
}

.puck-grid--awards .puck-image:hover {
  border-color: transparent;
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.9) inset,
    0 14px 30px rgba(37, 71, 124, 0.14);
  transform: translateY(-3px);
}

.puck-grid--awards .puck-image:focus-within {
  border-color: transparent;
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.9) inset,
    0 0 0 3px rgba(0, 155, 149, 0.16),
    0 12px 28px rgba(37, 71, 124, 0.12);
}

.puck-grid--awards .puck-image-figure {
  display: flex;
  min-height: clamp(152px, 16vw, 214px);
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: clamp(10px, 1.5vw, 18px);
  border-radius: calc(var(--nabip-radius-lg) - 5px);
  background: rgba(255, 255, 255, 0.72);
}

.puck-grid--awards .puck-image-img,
.puck-grid--awards .puck-image-figure img {
  display: block;
  width: 100%;
  height: clamp(136px, 14vw, 188px) !important;
  max-width: 100%;
  border-radius: 2px;
  object-fit: contain !important;
  object-position: center !important;
  box-shadow: none;
  transition: transform 220ms ease;
}

.puck-grid--awards .puck-image:hover .puck-image-img,
.puck-grid--awards .puck-image:hover .puck-image-figure img {
  transform: scale(1.025);
}

.puck-grid--awards .puck-image-caption {
  margin: 11px 4px 2px;
  color: var(--nabip-navy);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.015em;
  line-height: 1.45;
  text-align: center;
}

.puck-grid--awards .puck-image-viewer-trigger {
  border: 0 !important;
  border-radius: calc(var(--nabip-radius-lg) - 5px);
  appearance: none;
  background: transparent !important;
  box-shadow: none;
  outline-offset: 4px;
}

.puck-grid--awards .puck-image-viewer-trigger:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.58);
}

@media (max-width: 820px) {
  .puck-grid--awards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .puck-grid--awards .puck-image-figure {
    min-height: clamp(150px, 24vw, 196px);
  }

  .puck-grid--awards .puck-image-img,
  .puck-grid--awards .puck-image-figure img {
    height: clamp(132px, 21vw, 170px) !important;
  }
}

@media (max-width: 560px) {
  .puck-grid--awards {
    grid-template-columns: 1fr !important;
    gap: 18px;
    padding-top: 22px;
  }

  .puck-grid--awards .puck-grid-column {
    gap: 18px;
  }

  .puck-grid--awards .puck-image {
    padding: 9px;
  }

  .puck-grid--awards .puck-image-figure {
    min-height: 168px;
    padding: 12px 16px;
  }

  .puck-grid--awards .puck-image-img,
  .puck-grid--awards .puck-image-figure img {
    height: 148px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .puck-grid--awards .puck-image,
  .puck-grid--awards .puck-image-img,
  .puck-grid--awards .puck-image-figure img {
    transition: none;
  }

  .puck-grid--awards .puck-image:hover,
  .puck-grid--awards .puck-image:hover .puck-image-img,
  .puck-grid--awards .puck-image:hover .puck-image-figure img {
    transform: none;
  }
}

/*
 * Home charitable organizations
 * A deliberately editorial pair: generous image space, a quiet blue-gray
 * ground, and a teal "support" edge rather than a generic CMS card treatment.
 * The scope keeps this treatment exclusive to the two native Home cards.
 */
.puck-grid--charitable-organizations {
  position: relative;
  isolation: isolate;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(20px, 3vw, 32px);
  align-items: stretch;
  padding-top: 30px;
  padding-bottom: clamp(56px, 7vw, 92px);
}

.puck-grid--charitable-organizations::before {
  position: absolute;
  z-index: -1;
  top: 0;
  right: var(--nabip-gutter);
  left: var(--nabip-gutter);
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(37, 71, 124, 0.18) 18%,
    rgba(0, 155, 149, 0.42) 50%,
    rgba(37, 71, 124, 0.18) 82%,
    transparent
  );
  content: "";
}

.puck-grid--charitable-organizations .puck-grid-column {
  display: flex;
  min-width: 0;
  height: 100%;
}

.puck-grid--charitable-organizations .puck-card--charity {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 100%;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(37, 71, 124, 0.18);
  border-radius: 18px;
  background:
    linear-gradient(145deg, rgba(234, 241, 247, 0.76), rgba(255, 255, 255, 0.98) 42%),
    var(--nabip-white);
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.92) inset,
    0 10px 26px rgba(37, 71, 124, 0.09);
  transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}

.puck-grid--charitable-organizations .puck-card--charity::before {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 28px;
  left: 28px;
  height: 4px;
  border-radius: 0 0 6px 6px;
  background: var(--nabip-teal);
  content: "";
}

.puck-grid--charitable-organizations .puck-grid-column:nth-child(2) .puck-card--charity::before {
  background: var(--nabip-blue-light);
}

.puck-grid--charitable-organizations .puck-card--charity:hover,
.puck-grid--charitable-organizations .puck-card--charity:focus-within {
  border-color: rgba(0, 155, 149, 0.58);
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.92) inset,
    0 18px 38px rgba(37, 71, 124, 0.15);
  transform: translateY(-5px);
}

.puck-grid--charitable-organizations .puck-card--charity:focus-within {
  outline: 3px solid rgba(0, 155, 149, 0.2);
  outline-offset: 3px;
}

.puck-grid--charitable-organizations .puck-card--charity .puck-card-image,
.puck-grid--charitable-organizations .puck-card--charity .puck-card-media,
.puck-grid--charitable-organizations .puck-card--charity figure,
.puck-grid--charitable-organizations .puck-card--charity > div:first-child {
  display: flex;
  height: clamp(200px, 20vw, 252px) !important;
  min-height: clamp(170px, 20vw, 252px);
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: clamp(18px, 3vw, 32px);
  border-bottom: 1px solid rgba(37, 71, 124, 0.1);
  background: rgba(255, 255, 255, 0.78);
  box-sizing: border-box;
}

.puck-grid--charitable-organizations .puck-card--charity img,
.puck-grid--charitable-organizations .puck-card--charity .puck-card-image img,
.puck-grid--charitable-organizations .puck-card--charity .puck-card-media img,
.puck-grid--charitable-organizations .puck-card--charity figure img {
  display: block;
  width: 100%;
  height: auto !important;
  max-width: 100%;
  max-height: 188px;
  border-radius: 6px;
  object-fit: contain !important;
  object-position: center center !important;
  box-shadow: none;
  transition: transform 220ms ease;
}

.puck-grid--charitable-organizations .puck-card--charity:hover img,
.puck-grid--charitable-organizations .puck-card--charity:focus-within img {
  transform: scale(1.025);
}

.puck-grid--charitable-organizations .puck-card--charity .puck-card-featured-content,
.puck-grid--charitable-organizations .puck-card--charity .puck-card-content,
.puck-grid--charitable-organizations .puck-card--charity .puck-card-body,
.puck-grid--charitable-organizations .puck-card--charity > div:last-child {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: clamp(22px, 3vw, 32px);
  box-sizing: border-box;
}

.puck-grid--charitable-organizations .puck-card--charity .puck-card-title {
  max-width: 26ch;
  margin: 0 0 9px;
  color: var(--nabip-navy);
  font-size: clamp(21px, 2.4vw, 29px);
  line-height: 1.18;
}

.puck-grid--charitable-organizations .puck-card--charity .puck-card-description {
  max-width: 48ch;
  margin: 0;
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.65;
}

.puck-grid--charitable-organizations .puck-card--charity .puck-card-button {
  display: inline-flex;
  width: fit-content;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  margin-top: auto;
  padding: 11px 19px;
  border: 1px solid var(--nabip-teal);
  border-radius: 7px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.01em;
  text-decoration: none;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.puck-grid--charitable-organizations .puck-card--charity .puck-card-button:hover,
.puck-grid--charitable-organizations .puck-card--charity .puck-card-button:focus-visible {
  border-color: var(--nabip-blue);
  background: var(--nabip-blue);
  color: var(--nabip-white);
  transform: translateY(-2px);
}

@media (max-width: 700px) {
  .puck-grid--charitable-organizations {
    grid-template-columns: 1fr !important;
    gap: 20px;
    padding-top: 24px;
  }

  .puck-grid--charitable-organizations .puck-card--charity .puck-card-image,
  .puck-grid--charitable-organizations .puck-card--charity .puck-card-media,
  .puck-grid--charitable-organizations .puck-card--charity figure,
  .puck-grid--charitable-organizations .puck-card--charity > div:first-child {
    height: 174px !important;
    min-height: 174px;
  }

  .puck-grid--charitable-organizations .puck-card--charity img {
    max-height: 138px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .puck-grid--charitable-organizations .puck-card--charity,
  .puck-grid--charitable-organizations .puck-card--charity img,
  .puck-grid--charitable-organizations .puck-card--charity .puck-card-button {
    transition: none;
  }

  .puck-grid--charitable-organizations .puck-card--charity:hover,
  .puck-grid--charitable-organizations .puck-card--charity:hover img,
  .puck-grid--charitable-organizations .puck-card--charity .puck-card-button:hover {
    transform: none;
  }
}

.puck-file {
  text-align: center;
}

.puck-pdf-embed iframe {
  width: 100%;
  min-height: 680px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
}

.page-title {
  color: var(--nabip-navy);
  font-weight: 780;
  letter-spacing: -0.04em;
}

@media (min-width: 981px) and (max-width: 1300px) {
  .header-logo-img {
    max-width: 190px;
  }

  .site-header .header-nav .nav-menu {
    gap: 4px;
  }

  .site-header .header-nav .nav-link,
  .site-header .header-nav .nav-link-dropdown {
    font-size: 15px;
  }

  .site-header .header-cta-button {
    padding-inline: 7px;
    font-size: 11px;
  }
}

@media (max-width: 980px) {
  .header-nav,
  .nav-menu {
    gap: 8px;
  }

  .header-logo-img {
    max-width: 190px;
  }

  .recur-event-list-grid,
  .recur-product-list-grid,
  .recur-member-dir-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .puck-stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .site-footer-content {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .site-header,
  .header-grid,
  .header-flex {
    min-height: 68px;
  }

  .header-logo-img {
    max-width: 170px;
    max-height: 48px;
  }

  .header-cta,
  .header-social,
  .header-contact {
    display: none;
  }

  .mobile-nav {
    padding: 12px var(--nabip-gutter) 20px;
  }

  .mobile-nav .nav-link,
  .mobile-nav .nav-link-dropdown {
    display: flex;
    width: 100%;
    padding: 11px 0;
    border-bottom: 1px solid var(--nabip-border);
  }

  .puck-hero--split {
    display: block;
  }

  .puck-hero-split-panel {
    min-height: 380px;
  }

  .puck-hero-split-image {
    min-height: 280px;
  }

  .puck-hero-title {
    font-size: clamp(36px, 12vw, 54px);
  }

  .puck-hero-cta,
  .puck-cta-buttons {
    align-items: stretch;
    flex-direction: column;
  }

  .puck-hero-cta-primary,
  .puck-hero-cta-secondary,
  .puck-cta-primary,
  .puck-cta-secondary {
    width: 100%;
    box-sizing: border-box;
  }

  .puck-contact button {
    width: 100%;
  }

  .recur-event-list-grid,
  .recur-product-list-grid,
  .recur-member-dir-grid,
  .puck-stats-grid,
  .site-footer-content {
    grid-template-columns: 1fr;
  }

  .site-footer-content {
    gap: 28px;
    padding-block: 48px;
  }

  .footer-bottom-bar {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    transition-duration: 0.01ms;
    animation-duration: 0.01ms;
    animation-iteration-count: 1;
  }
}

/*
 * Home advocacy CTA
 * A composed "briefing card" treatment: quiet blue-gray field, navy rule,
 * and a deliberate teal action. Scoped to the native variant so every other
 * CTA keeps the shared site treatment.
 */
.puck-cta.puck-cta--advocacy {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: grid;
  justify-items: center;
  width: min(100% - clamp(32px, 6vw, 64px), var(--nabip-content));
  min-height: 270px;
  margin-block: clamp(52px, 8vw, 104px);
  padding: clamp(42px, 6vw, 72px) clamp(24px, 7vw, 112px);
  border: 1px solid rgba(37, 71, 124, 0.18);
  border-top: 8px solid var(--nabip-navy);
  border-radius: 4px 4px 18px 18px;
  background:
    linear-gradient(112deg, rgba(0, 155, 149, 0.08), transparent 33%),
    var(--nabip-surface-blue);
  color: var(--nabip-text);
  box-shadow:
    0 18px 0 -12px rgba(0, 155, 149, 0.22),
    0 22px 48px rgba(37, 71, 124, 0.13);
  box-sizing: border-box;
  text-align: center;
}

.puck-cta.puck-cta--advocacy::before {
  position: absolute;
  z-index: -1;
  top: -86px;
  right: clamp(18px, 8vw, 120px);
  width: 196px;
  height: 196px;
  border: 1px solid rgba(0, 155, 149, 0.24);
  border-radius: 50%;
  box-shadow:
    0 0 0 20px rgba(0, 155, 149, 0.045),
    0 0 0 42px rgba(37, 71, 124, 0.035);
  content: "";
  pointer-events: none;
}

.puck-cta.puck-cta--advocacy::after {
  position: absolute;
  z-index: -1;
  bottom: 26px;
  left: 0;
  width: min(32vw, 330px);
  height: 2px;
  background: linear-gradient(90deg, var(--nabip-teal), rgba(0, 155, 149, 0));
  content: "";
  pointer-events: none;
}

.puck-cta--advocacy .puck-cta-title,
.puck-cta--advocacy .puck-cta-description,
.puck-cta--advocacy .puck-cta-buttons {
  position: relative;
  z-index: 1;
}

.puck-cta--advocacy .puck-cta-title {
  max-width: 720px;
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(30px, 4.2vw, 50px);
  font-weight: 800;
  letter-spacing: -0.05em;
  line-height: 1.04;
  text-align: center;
}

.puck-cta--advocacy .puck-cta-title::after {
  display: block;
  width: 44px;
  height: 4px;
  margin: 18px auto 0;
  border-radius: 999px;
  background: var(--nabip-teal);
  content: "";
}

.puck-cta--advocacy .puck-cta-description {
  max-width: 650px;
  margin: 20px auto 0;
  color: var(--nabip-text);
  font-size: clamp(15px, 1.5vw, 18px);
  line-height: 1.6;
  text-align: center;
}

.puck-cta--advocacy .puck-cta-buttons {
  justify-content: center;
  margin-top: 30px;
}

.puck-cta--advocacy .puck-cta-primary {
  min-width: 218px;
  min-height: 52px;
  padding: 12px 24px;
  border: 2px solid var(--nabip-teal);
  border-radius: 5px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.045em;
  transition:
    transform 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.puck-cta--advocacy .puck-cta-primary:hover {
  transform: translateY(-3px);
  border-color: var(--nabip-teal-dark);
  background: var(--nabip-teal-dark);
  color: var(--nabip-white);
  box-shadow: 0 10px 20px rgba(0, 124, 120, 0.24);
}

.puck-cta--advocacy .puck-cta-primary:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.45);
  outline-offset: 4px;
  box-shadow: 0 0 0 3px var(--nabip-surface-blue);
}

@media (max-width: 700px) {
  .puck-cta.puck-cta--advocacy {
    width: calc(100% - 32px);
    min-height: 0;
    margin-block: 48px;
    padding: 38px 22px 44px;
    border-top-width: 6px;
  }

  .puck-cta.puck-cta--advocacy::before {
    right: -92px;
    top: -74px;
    width: 170px;
    height: 170px;
  }

  .puck-cta.puck-cta--advocacy::after {
    bottom: 22px;
    width: 46vw;
  }

  .puck-cta--advocacy .puck-cta-title {
    font-size: clamp(29px, 9vw, 40px);
  }

  .puck-cta--advocacy .puck-cta-description {
    font-size: 15px;
  }

  .puck-cta--advocacy .puck-cta-primary {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .puck-cta--advocacy .puck-cta-primary {
    transition: none;
  }
}

/*
 * Home partner grid
 * Eight native partner cards, presented as a compact recognition wall rather
 * than generic content cards. Recur emits each card as an anchor with two
 * unclassed direct child divs; the first is the fixed-height logo stage.
 */
.puck-grid--partners {
  position: relative;
  isolation: isolate;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 24px);
  align-items: stretch;
  padding-top: 28px;
  padding-bottom: clamp(26px, 3.5vw, 42px);
}

main:has(.puck-grid--partners) {
  padding-bottom: 16px;
}

main:has(.puck-grid--partners) + .site-footer {
  margin-top: clamp(28px, 3.7vw, 44px);
}

.puck-grid--partners .puck-grid-column {
  display: grid;
  min-width: 0;
  gap: clamp(14px, 2vw, 22px);
  align-content: stretch;
}

.puck-grid--partners .puck-grid-column > a {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(37, 71, 124, 0.16);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(234, 241, 247, 0.72), rgba(255, 255, 255, 0.98) 54%),
    var(--nabip-white);
  color: inherit;
  text-decoration: none;
  box-shadow: 0 5px 16px rgba(37, 71, 124, 0.07);
  transition:
    transform 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.puck-grid--partners .puck-grid-column > a::after {
  position: absolute;
  top: calc(50% + 58px);
  right: 16px;
  bottom: auto;
  width: 18px;
  height: 18px;
  border-top: 1.5px solid var(--nabip-teal);
  border-right: 1.5px solid var(--nabip-teal);
  content: "";
  opacity: 0;
  transform: translate(-4px, -50%) rotate(45deg);
  transition: transform 180ms ease, opacity 180ms ease;
}

.puck-grid--partners .puck-grid-column > a > div:first-child {
  display: grid;
  width: 100%;
  height: 116px !important;
  min-height: 116px;
  flex: 0 0 116px;
  place-items: center;
  padding: 16px 18px 10px;
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.66);
  border-bottom: 1px solid rgba(37, 71, 124, 0.1);
}

.puck-grid--partners .puck-grid-column > a > div:first-child img {
  display: block;
  width: auto !important;
  max-width: 100%;
  height: auto !important;
  max-height: 82px;
  object-fit: contain !important;
  object-position: center center !important;
}

.puck-grid--partners .puck-grid-column > a > div:nth-child(2) {
  display: flex;
  min-width: 0;
  min-height: 56px;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: center;
  padding: 13px 38px 15px 16px;
  box-sizing: border-box;
}

.puck-grid--partners .puck-card-title {
  display: -webkit-box;
  overflow: hidden;
  margin: 0;
  color: var(--nabip-navy);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: -0.015em;
  line-height: 1.25;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.puck-grid--partners .puck-card-description {
  display: -webkit-box;
  overflow: hidden;
  margin: 4px 0 0;
  color: var(--nabip-muted);
  font-size: 11px;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.puck-grid--partners .puck-grid-column > a:hover,
.puck-grid--partners .puck-grid-column > a:focus-visible {
  border-color: rgba(0, 155, 149, 0.58);
  box-shadow: 0 13px 26px rgba(37, 71, 124, 0.14);
  color: inherit;
  transform: translateY(-3px);
}

.puck-grid--partners .puck-grid-column > a:hover::after,
.puck-grid--partners .puck-grid-column > a:focus-visible::after {
  opacity: 1;
  transform: translate(0, -50%) rotate(45deg);
}

.puck-grid--partners .puck-grid-column > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.38);
  outline-offset: 4px;
}

@media (max-width: 980px) {
  .puck-grid--partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 560px) {
  .puck-grid--partners {
    grid-template-columns: 1fr !important;
    gap: 14px;
    padding-top: 20px;
  }

  .puck-grid--partners .puck-grid-column {
    gap: 14px;
  }

  .puck-grid--partners .puck-grid-column > a > div:first-child {
    height: 108px !important;
    min-height: 108px;
    flex-basis: 108px;
  }

  .puck-grid--partners .puck-grid-column > a > div:first-child img {
    max-height: 76px;
  }

  .puck-grid--partners .puck-grid-column > a::after {
    top: calc(50% + 54px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .puck-grid--partners .puck-grid-column > a,
  .puck-grid--partners .puck-grid-column > a::after {
    transition: none;
  }

  .puck-grid--partners .puck-grid-column > a:hover,
  .puck-grid--partners .puck-grid-column > a:focus-visible {
    transform: none;
  }
}

/*
 * About Us interior page
 * Keep the Home design language while giving this narrative page a quieter
 * editorial rhythm. The selectors are anchored to its unique mission grid so
 * these refinements do not alter other pages that reuse native components.
 */
main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-hero[style*="5e4492fb-4d1a-45ed-90cc-f304f0170931.jpg"] {
  min-height: clamp(360px, 38vw, 480px) !important;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-hero[style*="5e4492fb-4d1a-45ed-90cc-f304f0170931.jpg"]
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents) .puck-heading {
  padding-top: clamp(52px, 6vw, 76px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision {
  gap: clamp(18px, 3vw, 30px);
  padding-top: 12px;
  padding-bottom: clamp(44px, 6vw, 72px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-grid-column {
  display: flex;
  min-width: 0;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-card {
  display: flex;
  width: 100%;
  min-height: 100%;
  flex-direction: column;
  border: 1px solid var(--nabip-border);
  border-top: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  text-align: left !important;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-grid-column:nth-child(2)
  .puck-card {
  border-top-color: var(--nabip-blue);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-card
  > div {
  display: flex;
  height: 100%;
  flex-direction: column;
  padding: clamp(26px, 3vw, 38px) clamp(24px, 3vw, 34px);
  box-sizing: border-box;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-card-eyebrow {
  margin-bottom: 10px;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-card-title {
  margin: 0 0 12px;
  font-size: clamp(21px, 2.2vw, 27px);
  line-height: 1.22;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-card-description {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-card:hover {
  border-color: rgba(0, 155, 149, 0.48);
  border-top-color: var(--nabip-teal);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-grid-column:nth-child(2)
  .puck-card:hover {
  border-top-color: var(--nabip-blue);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  + h2
  + .puck-grid--ethics {
  position: relative;
  margin-bottom: clamp(18px, 3vw, 30px);
  padding: 0;
  border: 1px solid rgba(37, 71, 124, 0.14);
  border-left: 6px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: linear-gradient(135deg, var(--nabip-surface-blue), var(--nabip-white));
  box-shadow: 0 8px 24px rgba(37, 71, 124, 0.06);
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0;
  overflow: hidden;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--ethics
  .puck-grid-column {
  min-width: 0;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--ethics
  .puck-grid-column:nth-child(2) {
  border-left: 1px solid rgba(37, 71, 124, 0.14);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--ethics
  .puck-text {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(28px, 4vw, 46px) clamp(24px, 4vw, 44px) !important;
  box-sizing: border-box;
  line-height: 1.75;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents {
  gap: clamp(16px, 2vw, 24px);
  padding-top: 12px;
  padding-bottom: clamp(48px, 6vw, 76px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column {
  display: flex;
  min-width: 0;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div {
  display: flex;
  width: 100%;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a {
  display: flex !important;
  width: 100%;
  min-height: 100%;
  align-items: center;
  padding: 18px 20px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  box-shadow: 0 6px 18px rgba(37, 71, 124, 0.06);
  color: inherit;
  text-align: left;
  text-decoration: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a:hover,
main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a:focus-visible {
  border-color: rgba(0, 155, 149, 0.55);
  box-shadow: 0 12px 26px rgba(37, 71, 124, 0.12);
  color: inherit;
  transform: translateY(-2px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a
  > div {
  width: 100%;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a
  > div
  > div:first-child {
  color: var(--nabip-navy);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.01em;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a
  > div
  > div:nth-child(2) {
  margin-top: 4px;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.45;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a
  > div
  > div:last-child {
  margin-top: 8px;
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--partners {
  padding-top: 12px;
  padding-bottom: clamp(40px, 5vw, 64px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--partners
  .puck-grid-column
  > a {
  border-color: rgba(37, 71, 124, 0.14);
}

@media (max-width: 700px) {
  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-hero[style*="5e4492fb-4d1a-45ed-90cc-f304f0170931.jpg"] {
    min-height: 340px !important;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--mission-vision {
    grid-template-columns: 1fr !important;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--mission-vision
    .puck-card
    > div {
    padding: 26px 24px;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--mission-vision
    + h2
    + .puck-grid--ethics {
    grid-template-columns: 1fr !important;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--ethics
    .puck-grid-column:nth-child(2) {
    border-top: 1px solid rgba(37, 71, 124, 0.14);
    border-left: 0;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--ethics
    .puck-text {
    padding: 26px 22px !important;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--documents {
    grid-template-columns: 1fr !important;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--documents
    .puck-grid-column
    > div
    > a {
    min-height: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--mission-vision
    .puck-card,
  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--documents
    .puck-grid-column
    > div
    > a {
    transition: none;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--mission-vision
    .puck-card:hover,
  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--documents
    .puck-grid-column
    > div
    > a:hover {
    transform: none;
  }
}

/*
 * Who Is NABIP interior page
 * The page's native component sequence already provides two image/copy
 * narratives, selective benefit cards, mission/vision, a membership CTA, and
 * partner recognition. The combined services + benefits signature keeps this
 * editorial treatment isolated from other pages using the same variants.
 */
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits) {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: clamp(24px, 5vw, 72px);
  align-items: stretch;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-hero {
  grid-column: 1 / -1;
  width: calc(100% + 64px);
  min-height: clamp(360px, 38vw, 480px);
  margin-inline: -32px;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > div:nth-child(2):empty {
  grid-column: 1 / -1;
  grid-row: 2;
  width: 100%;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(3),
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-text:nth-child(4),
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(5),
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-text:nth-child(6) {
  width: 100%;
  max-width: none;
  margin: 0;
  align-self: start;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(3) {
  grid-column: 2 / span 5;
  grid-row: 3;
  padding: 16px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-surface);
  box-shadow: var(--nabip-shadow-sm);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-text:nth-child(4) {
  grid-column: 7 / span 5;
  grid-row: 3;
  padding: clamp(12px, 2vw, 28px) 0;
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.8;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(5) {
  grid-column: 7 / span 5;
  grid-row: 4;
  padding: 0;
  overflow: hidden;
  border-radius: var(--nabip-radius-lg);
  box-shadow: var(--nabip-shadow-md);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-text:nth-child(6) {
  grid-column: 2 / span 5;
  grid-row: 4;
  padding: clamp(12px, 2vw, 28px) 0;
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.8;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(3)
  .puck-image-figure,
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(5)
  .puck-image-figure {
  margin: 0;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(3)
  .puck-image-img,
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(3)
  .puck-image-figure
  img {
  width: 100% !important;
  height: clamp(260px, 26vw, 360px) !important;
  border-radius: calc(var(--nabip-radius-lg) - 4px);
  object-fit: contain;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(5)
  .puck-image-img,
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(5)
  .puck-image-figure
  img {
  width: 100% !important;
  height: clamp(300px, 31vw, 430px) !important;
  border-radius: var(--nabip-radius-lg);
  object-fit: cover;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image
  .puck-image-caption {
  margin-top: 12px;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.45;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > h2:nth-child(7),
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > h2:nth-child(13) {
  grid-column: 1 / -1;
  max-width: var(--nabip-content);
  width: 100%;
  margin: 0 auto;
  padding: var(--nabip-section) var(--nabip-gutter) 20px;
  box-sizing: border-box;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services {
  grid-column: 1 / -1;
  gap: clamp(18px, 2.5vw, 28px);
  padding-top: 12px;
  padding-bottom: clamp(36px, 5vw, 64px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-grid-column {
  display: flex;
  min-width: 0;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-card--service {
  display: flex;
  width: 100%;
  min-height: 100%;
  flex-direction: column;
  align-items: flex-start !important;
  gap: 18px !important;
  padding: clamp(24px, 3vw, 34px) !important;
  border: 1px solid var(--nabip-border);
  border-top: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  text-align: left !important;
  box-sizing: border-box;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-grid-column:nth-child(2)
  .puck-card--service {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-grid-column:nth-child(3)
  .puck-card--service {
  border-top-color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-card--service:hover {
  border-color: rgba(0, 155, 149, 0.48);
  border-top-color: var(--nabip-teal);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .material-symbols-rounded {
  display: inline-grid;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  place-items: center;
  border-radius: 14px;
  background: rgba(0, 155, 149, 0.11);
  color: var(--nabip-teal-dark);
  font-size: 24px;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-grid-column:nth-child(2)
  .material-symbols-rounded {
  background: rgba(37, 71, 124, 0.1);
  color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-grid-column:nth-child(3)
  .material-symbols-rounded {
  font-size: 0;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-grid-column:nth-child(3)
  .material-symbols-rounded::before {
  display: block;
  width: 26px;
  height: 26px;
  background: currentColor;
  content: "";
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18 11v2h4v-2h-4zm-2 6.61c.96.71 2.21 1.65 3.2 2.39.4-.53.8-1.07 1.2-1.6-.99-.74-2.24-1.68-3.2-2.4-.4.54-.8 1.08-1.2 1.61zM20.4 5.6c-.4-.53-.8-1.07-1.2-1.6-.99.74-2.24 1.68-3.2 2.4.4.53.8 1.07 1.2 1.6.96-.72 2.21-1.65 3.2-2.4zM4 9c-1.1 0-2 .9-2 2v2c0 1.1.9 2 2 2h1v4h2v-4h1l5 3V6L8 9H4zm5.03 4H4v-2h5.03L11 9.82v4.36L9.03 13zM15.5 12c0-1.33-.58-2.53-1.5-3.35v6.69c.92-.81 1.5-2.01 1.5-3.34z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18 11v2h4v-2h-4zm-2 6.61c.96.71 2.21 1.65 3.2 2.39.4-.53.8-1.07 1.2-1.6-.99-.74-2.24-1.68-3.2-2.4-.4.54-.8 1.08-1.2 1.61zM20.4 5.6c-.4-.53-.8-1.07-1.2-1.6-.99.74-2.24 1.68-3.2 2.4.4.53.8 1.07 1.2 1.6.96-.72 2.21-1.65 3.2-2.4zM4 9c-1.1 0-2 .9-2 2v2c0 1.1.9 2 2 2h1v4h2v-4h1l5 3V6L8 9H4zm5.03 4H4v-2h5.03L11 9.82v4.36L9.03 13zM15.5 12c0-1.33-.58-2.53-1.5-3.35v6.69c.92-.81 1.5-2.01 1.5-3.34z'/%3E%3C/svg%3E") center / contain no-repeat;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-text:nth-child(9) {
  grid-column: 2 / span 10;
  max-width: none;
  margin: 0 auto;
  padding: clamp(24px, 4vw, 42px) clamp(24px, 4vw, 48px);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: linear-gradient(135deg, var(--nabip-surface-blue), var(--nabip-white));
  box-shadow: 0 8px 24px rgba(37, 71, 124, 0.06);
  line-height: 1.75;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > div:nth-child(10):empty {
  grid-column: 1 / -1;
  width: 100%;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--mission-vision {
  grid-column: 1 / -1;
  gap: clamp(18px, 3vw, 30px);
  padding-top: 12px;
  padding-bottom: clamp(36px, 5vw, 64px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--mission-vision
  .puck-grid-column {
  display: flex;
  min-width: 0;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--mission-vision
  .puck-card {
  display: flex;
  width: 100%;
  min-height: 100%;
  flex-direction: column;
  padding: clamp(26px, 3vw, 38px) clamp(24px, 3vw, 34px);
  border: 1px solid var(--nabip-border);
  border-top: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  text-align: left !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--mission-vision
  .puck-grid-column:nth-child(2)
  .puck-card {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--mission-vision
  .puck-card:hover {
  border-color: rgba(0, 155, 149, 0.48);
  border-top-color: var(--nabip-teal);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-cta--member-benefits {
  grid-column: 1 / -1;
  width: 100%;
  margin: clamp(20px, 3vw, 36px) 0 clamp(48px, 6vw, 76px);
  padding: clamp(38px, 6vw, 68px) clamp(28px, 6vw, 76px);
  border-top: 6px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: linear-gradient(115deg, var(--nabip-navy), var(--nabip-blue));
  box-shadow: var(--nabip-shadow-md);
  box-sizing: border-box;
  text-align: center;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-cta--member-benefits
  .puck-cta-title {
  margin: 0;
  font-size: clamp(30px, 4vw, 50px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-cta--member-benefits
  .puck-cta-description {
  max-width: 680px;
  margin: 18px auto 0;
  color: rgba(255, 255, 255, 0.82);
  font-size: clamp(15px, 1.5vw, 18px);
  line-height: 1.6;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-cta--member-benefits
  .puck-cta-buttons {
  justify-content: center;
  margin-top: 30px;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-cta--member-benefits
  .puck-cta-primary {
  min-width: 220px;
  min-height: 52px;
  padding: 12px 26px;
  border-radius: 999px;
  background: var(--nabip-teal);
  box-shadow: 0 10px 22px rgba(0, 124, 120, 0.2);
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-cta--member-benefits
  .puck-cta-primary:hover {
  background: var(--nabip-teal-dark);
  box-shadow: 0 14px 28px rgba(0, 124, 120, 0.3);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--partners {
  grid-column: 1 / -1;
  padding-top: 12px;
  padding-bottom: clamp(40px, 5vw, 64px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--partners
  .puck-grid-column
  > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.48);
  outline-offset: 4px;
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits) {
    display: block;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(3),
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-text:nth-child(4),
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(5),
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-text:nth-child(6) {
    width: auto;
    max-width: 900px;
    margin-inline: auto;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(3) {
    margin: 28px var(--nabip-gutter) 0;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-text:nth-child(4),
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-text:nth-child(6) {
    padding: 28px var(--nabip-gutter) 40px;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(5) {
    margin: 12px var(--nabip-gutter) 0;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(3)
    .puck-image-img,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(3)
    .puck-image-figure
    img {
    height: 260px !important;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(5)
    .puck-image-img,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(5)
    .puck-image-figure
    img {
    height: 220px !important;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > h2:nth-child(7),
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > h2:nth-child(13) {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-grid--member-services,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-grid--mission-vision {
    grid-template-columns: 1fr !important;
    padding-inline: var(--nabip-gutter);
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-text:nth-child(9) {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-cta--member-benefits {
    width: auto;
    margin: 20px var(--nabip-gutter) 48px;
    padding: 40px 22px 46px;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-cta--member-benefits
    .puck-cta-primary {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-grid--member-services
    .puck-card--service,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-grid--mission-vision
    .puck-card,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-cta--member-benefits
    .puck-cta-primary {
    transition: none;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-grid--member-services
    .puck-card--service:hover,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-grid--mission-vision
    .puck-card:hover,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-cta--member-benefits
    .puck-cta-primary:hover {
    transform: none;
  }
}

/*
 * Affiliations interior page
 * Keep the limited content intentional: a quiet section heading followed by
 * two equal white feature panels on a pale surface. The unique native grid
 * variant scopes these rules to Affiliations only.
 */
#puck-content:has(.puck-grid--affiliation-features)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--affiliation-features)
  > h2 {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(48px, 6vw, 72px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features {
  width: 100%;
  max-width: none;
  gap: clamp(18px, 3vw, 32px);
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(56px, 7vw, 88px);
  background: var(--nabip-white);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column {
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: clamp(26px, 3vw, 42px);
  border: 1px solid var(--nabip-border);
  border-top: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column:nth-child(2),
#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features:last-child
  .puck-grid-column {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column:hover {
  border-color: rgba(0, 155, 149, 0.48);
  border-top-color: var(--nabip-teal);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column:nth-child(2):hover,
#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features:last-child
  .puck-grid-column:hover {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-card--affiliation {
  min-height: 0;
  padding: 0 !important;
  border: 0;
  background: transparent;
  box-shadow: none;
  text-align: left !important;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-card-eyebrow {
  margin: 0 0 10px;
  color: var(--nabip-teal-dark);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.1em;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column:nth-child(2)
  .puck-card-eyebrow,
#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features:last-child
  .puck-card-eyebrow {
  color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-card-title {
  margin: 0 0 10px;
  color: var(--nabip-navy);
  font-size: clamp(26px, 3vw, 36px);
  line-height: 1.15;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-card-description {
  margin: 0;
  color: var(--nabip-muted);
  font-size: 15px;
  line-height: 1.55;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-image {
  width: 100%;
  max-width: none;
  margin: 24px 0 0;
  padding: 0;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-image-figure {
  display: flex;
  min-height: 166px;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  margin: 0;
  padding: 18px;
  border-radius: var(--nabip-radius);
  background: var(--nabip-surface);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-image-img,
#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-image-figure
  img {
  display: block;
  width: auto !important;
  max-width: 100%;
  height: 124px !important;
  border-radius: 0;
  box-shadow: none;
  object-fit: contain;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-image-caption {
  margin-top: 10px;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.45;
  text-align: center;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-text {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 24px 0 28px;
  color: var(--nabip-text);
  font-size: 15px;
  line-height: 1.75;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-button-container {
  width: 100%;
  margin-top: auto;
  padding-top: 8px;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-button--affiliation-link {
  width: 100%;
  min-height: 50px !important;
  border: 1px solid var(--nabip-teal);
  border-radius: 999px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-weight: 750;
  text-decoration: none;
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column:nth-child(2)
  .puck-button--affiliation-link {
  border-color: var(--nabip-blue);
  background: var(--nabip-blue);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-button--affiliation-link:hover {
  border-color: var(--nabip-teal-dark);
  background: var(--nabip-teal-dark);
  box-shadow: 0 10px 22px rgba(0, 124, 120, 0.24);
  color: var(--nabip-white);
  transform: translateY(-2px);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column:nth-child(2)
  .puck-button--affiliation-link:hover {
  border-color: var(--nabip-navy-soft);
  background: var(--nabip-navy-soft);
  box-shadow: 0 10px 22px rgba(37, 71, 124, 0.24);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-button--affiliation-link:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.45);
  outline-offset: 4px;
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--affiliation-features)
    > h2 {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-grid--affiliation-features {
    grid-template-columns: 1fr !important;
    padding: 12px var(--nabip-gutter) 56px;
  }

  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-grid--affiliation-features
    .puck-grid-column {
    padding: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-grid--affiliation-features
    .puck-grid-column,
  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-grid--affiliation-features
    .puck-button--affiliation-link {
    transition: none;
  }

  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-grid--affiliation-features
    .puck-grid-column:hover,
  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-grid--affiliation-features
    .puck-button--affiliation-link:hover {
    transform: none;
  }
}

/*
 * Board Leadership interior page
 * Native person cards remain the source of truth. The combined people and
 * committee grid signature scopes the directory treatment to this page.
 */
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-text:nth-child(2) {
  max-width: 920px;
  margin: 0 auto;
  padding: clamp(26px, 4vw, 42px) var(--nabip-gutter);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: linear-gradient(135deg, var(--nabip-surface-blue), var(--nabip-white));
  box-shadow: 0 8px 24px rgba(37, 71, 124, 0.06);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > h2:nth-child(3),
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > h2:nth-child(5) {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(52px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > h2:nth-child(7) {
  padding-top: clamp(62px, 8vw, 96px);
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 24px);
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(48px, 6vw, 76px);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-grid-column,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-grid-column {
  display: grid;
  min-width: 0;
  gap: clamp(12px, 1.5vw, 18px);
  align-content: stretch;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card--person,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card--committee {
  display: flex;
  min-width: 0;
  min-height: 164px;
  flex-direction: column;
  padding: 22px 20px !important;
  border: 1px solid var(--nabip-border);
  border-left: 4px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  box-shadow: 0 5px 16px rgba(37, 71, 124, 0.06);
  text-align: left !important;
  box-sizing: border-box;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people {
  background: var(--nabip-surface-blue);
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card--committee {
  border-left-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card--person:hover,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card--committee:hover {
  border-color: rgba(0, 155, 149, 0.48);
  border-left-color: var(--nabip-teal);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-2px);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card--committee:hover {
  border-left-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card--person
  > div,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card--committee
  > div {
  display: flex;
  min-width: 0;
  height: 100%;
  flex-direction: column;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-eyebrow,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-eyebrow {
  margin: 0 0 8px;
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-transform: uppercase;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-eyebrow {
  color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-title,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-title {
  margin: 0 0 7px;
  color: var(--nabip-navy);
  font-size: clamp(17px, 1.6vw, 21px);
  line-height: 1.2;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-description,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-description {
  margin: 0;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.45;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-meta,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-meta {
  margin: auto 0 0;
  padding: 14px 0 0;
  list-style: none;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-meta-row,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-meta-row {
  margin: 0;
  padding-top: 12px;
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-meta-value,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-meta-value {
  display: block;
  color: var(--nabip-text);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.45;
  white-space: pre-line;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-avatar,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-avatar {
  width: 64px;
  height: 64px;
  margin-bottom: 16px;
  object-fit: cover;
}

@media (min-width: 981px) {
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people {
    grid-template-rows: repeat(4, auto);
    row-gap: clamp(12px, 1.5vw, 18px);
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-grid-column {
    grid-row: 1 / span 4;
    grid-template-rows: subgrid;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people {
    grid-template-rows: repeat(3, auto);
    row-gap: clamp(12px, 1.5vw, 18px);
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-grid-column {
    grid-row: 1 / span 3;
    grid-template-rows: subgrid;
  }
}

@media (min-width: 701px) and (max-width: 980px) {
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people {
    grid-template-rows: repeat(8, auto);
    row-gap: clamp(12px, 1.5vw, 18px);
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-grid-column {
    grid-template-rows: subgrid;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-grid-column:nth-child(-n + 2) {
    grid-row: 1 / span 4;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-grid-column:nth-child(n + 3) {
    grid-row: 5 / span 4;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people {
    grid-template-rows: repeat(6, auto);
    row-gap: clamp(12px, 1.5vw, 18px);
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-grid-column {
    grid-template-rows: subgrid;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-grid-column:nth-child(-n + 2) {
    grid-row: 1 / span 3;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-grid-column:nth-child(n + 3) {
    grid-row: 4 / span 3;
  }
}

@media (max-width: 980px) {
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people,
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-text:nth-child(2) {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > h2:nth-child(3),
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > h2:nth-child(5) {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people,
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people {
    grid-template-columns: 1fr !important;
    padding: 12px var(--nabip-gutter) 48px;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-grid-column,
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-grid-column {
    gap: 12px;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-card--person,
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-card--committee {
    min-height: 150px;
    padding: 20px 18px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-card--person,
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-card--committee {
    transition: none;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-card--person:hover,
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-card--committee:hover {
    transform: none;
  }
}

/*
 * Contact interior page
 * The Contact widget is intentionally owner-configured. Style both the
 * current native placeholder and the native form output once a widgetId is
 * selected, without introducing custom form markup or behavior.
 */
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > .puck-text:nth-child(3) {
  max-width: 820px;
  margin: 0 auto;
  padding: clamp(26px, 4vw, 42px) var(--nabip-gutter);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: linear-gradient(135deg, var(--nabip-surface-blue), var(--nabip-white));
  box-shadow: 0 8px 24px rgba(37, 71, 124, 0.06);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > h2 {
  max-width: 820px;
  margin: 0 auto;
  padding: clamp(52px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > div:nth-child(4):not(.puck-contact) {
  width: min(100%, 820px);
  min-height: 150px;
  margin: 0 auto var(--nabip-section);
  padding: 30px var(--nabip-gutter);
  border: 1px dashed var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-surface);
  color: var(--nabip-muted);
  box-sizing: border-box;
  display: grid;
  place-items: center;
  text-align: center;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > div:nth-child(4):not(.puck-contact)
  > div {
  max-width: 520px;
  color: var(--nabip-muted);
  font-size: 14px;
  font-weight: 650;
  line-height: 1.6;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact {
  width: min(100%, 820px);
  margin: 0 auto var(--nabip-section);
  padding: clamp(24px, 4vw, 42px);
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-md);
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact form {
  display: grid;
  gap: 18px;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact label,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact legend {
  display: block;
  margin-bottom: 7px;
  color: var(--nabip-navy);
  font-size: 13px;
  font-weight: 750;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact input,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact textarea,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact select {
  width: 100%;
  min-height: 48px;
  margin-top: 0;
  padding: 11px 13px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  color: var(--nabip-text);
  font: inherit;
  box-sizing: border-box;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact textarea {
  min-height: 160px;
  resize: vertical;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact input:focus-visible,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact textarea:focus-visible,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact select:focus-visible {
  border-color: var(--nabip-teal);
  outline: 3px solid rgba(0, 155, 149, 0.2);
  outline-offset: 2px;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact button[type="submit"],
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact button:not([type]) {
  min-width: 160px;
  min-height: 50px;
  padding: 12px 22px;
  border: 1px solid var(--nabip-teal);
  border-radius: 999px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-weight: 750;
  cursor: pointer;
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact button[type="submit"]:hover,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact button:not([type]):hover {
  border-color: var(--nabip-teal-dark);
  background: var(--nabip-teal-dark);
  box-shadow: 0 10px 22px rgba(0, 124, 120, 0.24);
  transform: translateY(-2px);
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact button:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.45);
  outline-offset: 4px;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact [aria-invalid="true"],
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .error input,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .error textarea,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .field-error input,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .field-error textarea {
  border-color: #b42318;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .error-message,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .field-error,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .form-error {
  color: #b42318;
  font-size: 14px;
  font-weight: 650;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .success-message,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .form-success {
  padding: 16px 18px;
  border: 1px solid rgba(0, 155, 149, 0.35);
  border-radius: var(--nabip-radius);
  background: rgba(0, 155, 149, 0.08);
  color: var(--nabip-navy);
  font-weight: 650;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget {
  width: min(calc(100% - (2 * var(--nabip-gutter))), 900px) !important;
  max-width: 900px !important;
  margin: 0 auto var(--nabip-section);
  margin-inline: auto !important;
  align-self: center;
  justify-self: center;
  padding: clamp(28px, 4vw, 48px);
  border: 1px solid rgba(37, 71, 124, 0.12);
  border-radius: clamp(18px, 2vw, 26px);
  background: var(--nabip-white);
  box-shadow: 0 18px 50px rgba(37, 71, 124, 0.11);
  box-sizing: border-box;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  > div
  > h3 {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(26px, 3vw, 34px);
  font-weight: 750;
  letter-spacing: -0.03em;
  line-height: 1.15;
  text-align: left !important;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  > div
  > p {
  margin: 12px 0 0;
  color: var(--nabip-muted);
  font-size: clamp(15px, 1.4vw, 18px);
  line-height: 1.6;
  text-align: left !important;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  form {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  margin-top: 30px;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  form
  > div[style*="grid-template-columns"] {
  gap: 18px !important;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  label {
  color: var(--nabip-navy);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.45;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  label
  > span {
  color: var(--nabip-muted);
  font-weight: 500;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  :is(input:not([type="checkbox"]), textarea, select) {
  width: 100%;
  min-height: 56px;
  margin-top: 8px;
  padding: 13px 15px;
  border: 1px solid rgba(37, 71, 124, 0.22);
  border-radius: 9px;
  background: var(--nabip-white);
  color: var(--nabip-text);
  font: inherit;
  box-shadow: 0 1px 2px rgba(37, 71, 124, 0.03) inset;
  transition: border-color 160ms ease, box-shadow 160ms ease;
  box-sizing: border-box;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  textarea {
  min-height: 168px;
  resize: vertical;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  :is(input:not([type="checkbox"]), textarea, select):focus-visible {
  border-color: var(--nabip-teal);
  outline: none;
  box-shadow: 0 0 0 4px rgba(0, 155, 149, 0.16);
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  form
  > div:has([data-cf="challengeAnswer"]) {
  padding: 18px;
  border: 1px solid rgba(37, 71, 124, 0.12);
  border-radius: 10px;
  background: var(--nabip-surface);
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  form
  > div:has([data-cf="challengeAnswer"])
  > p {
  margin: 8px 0 0;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.5;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  form
  > label:has([data-cf="agreementAccepted"]) {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  padding: 17px 18px;
  border: 1px solid rgba(37, 71, 124, 0.12);
  border-radius: 10px;
  background: var(--nabip-surface);
  color: var(--nabip-text);
  font-weight: 500;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  [data-cf="agreementAccepted"] {
  width: 19px;
  height: 19px;
  margin: 2px 0 0;
  accent-color: var(--nabip-teal);
  flex: 0 0 19px !important;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  [data-cf="error"] {
  padding: 13px 15px;
  border: 1px solid rgba(180, 35, 24, 0.28);
  border-radius: 9px;
  background: rgba(180, 35, 24, 0.06);
  color: #b42318;
  font-size: 14px;
  font-weight: 650;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  [data-cf="submit"] {
  width: 100% !important;
  min-height: 56px;
  padding: 13px 22px;
  border: 1px solid var(--nabip-blue);
  border-radius: 9px;
  background: var(--nabip-blue);
  color: var(--nabip-white);
  font-size: 16px;
  font-weight: 750;
  cursor: pointer;
  box-shadow: 0 8px 20px rgba(37, 71, 124, 0.18);
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  [data-cf="submit"]:hover {
  border-color: var(--nabip-navy);
  background: var(--nabip-navy);
  box-shadow: 0 12px 24px rgba(37, 71, 124, 0.24);
  transform: translateY(-2px);
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  [data-cf="submit"]:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.38);
  outline-offset: 4px;
}

@media (max-width: 700px) {
  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    > .puck-text:nth-child(3) {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    > h2 {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact button[type="submit"],
  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact button:not([type]) {
    width: 100%;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact-widget {
    width: calc(100% - (2 * var(--nabip-gutter))) !important;
    padding: 26px 20px;
    border-radius: 18px;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact-widget
    form
    > div[style*="grid-template-columns"] {
    grid-template-columns: 1fr !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact button[type="submit"],
  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact button:not([type]) {
    transition: none;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact button[type="submit"]:hover,
  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact button:not([type]):hover {
    transform: none;
  }
}

/*
 * Join interior page
 * This page uses the native CTA, File, Button, and partner Card components.
 * The combined action and partner grids scope the membership path treatment.
 */
#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-hero {
  min-height: clamp(380px, 40vw, 500px) !important;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: max-content max-content !important;
  align-content: start;
  gap: clamp(18px, 3vw, 30px);
  row-gap: clamp(20px, 2vw, 24px) !important;
  padding: clamp(34px, 5vw, 64px)
    max(var(--nabip-gutter), calc((100vw - 1120px) / 2))
    clamp(48px, 6vw, 76px);
  border-top: 1px solid var(--nabip-border);
  border-bottom: 1px solid var(--nabip-border);
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column {
  display: contents;
  min-width: 0;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column:first-child
  > .puck-cta {
  grid-column: 1;
  grid-row: 1;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column:nth-child(2)
  > .puck-cta {
  grid-column: 2;
  grid-row: 1;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download]) {
  width: 100%;
  grid-column: 1 / -1;
  grid-row: 2;
  margin-top: calc(0px - clamp(56px, 7vw, 88px));
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta {
  display: flex;
  min-height: 238px;
  flex: 0 0 auto;
  flex-direction: column;
  padding: clamp(26px, 3vw, 38px);
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta--application {
  border-color: var(--nabip-navy);
  background: var(--nabip-navy);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(22px, 2.5vw, 32px);
  font-weight: 750;
  letter-spacing: -0.03em;
  line-height: 1.15;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta--application
  .puck-cta-title {
  color: var(--nabip-white);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta-description {
  max-width: 540px;
  margin: 16px 0 0;
  color: var(--nabip-muted);
  font-size: 15px;
  line-height: 1.65;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta--application
  .puck-cta-description {
  color: rgba(255, 255, 255, 0.8);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta-buttons {
  display: flex;
  margin-top: auto;
  padding-top: 26px;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta-primary {
  display: inline-flex;
  min-width: 190px;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 12px 22px;
  border: 1px solid var(--nabip-teal);
  border-radius: 999px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-size: 13px;
  font-weight: 750;
  text-decoration: none;
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta-primary:hover {
  border-color: var(--nabip-teal-dark);
  background: var(--nabip-teal-dark);
  box-shadow: 0 10px 22px rgba(0, 124, 120, 0.24);
  color: var(--nabip-white);
  transform: translateY(-2px);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download]) {
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  box-shadow: 0 5px 16px rgba(37, 71, 124, 0.06);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download] {
  display: block !important;
  padding: 18px;
  border-radius: inherit;
  color: var(--nabip-navy);
  text-decoration: none;
  box-shadow: none !important;
  transition: background 160ms ease, box-shadow 160ms ease;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download]
  > div:first-child {
  display: grid !important;
  width: 100% !important;
  height: auto !important;
  min-height: 48px;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center !important;
  gap: 16px;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download]:hover {
  background: var(--nabip-surface-blue);
  box-shadow: 0 8px 20px rgba(37, 71, 124, 0.1) !important;
  color: var(--nabip-navy);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download]
  > div:first-child
  > div:first-child {
  width: 48px !important;
  height: 48px !important;
  border-radius: 50%;
  background: var(--nabip-surface-blue);
  color: var(--nabip-teal-dark);
  font-size: 22px;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download]
  > div
  > div:nth-child(2)
  > div:first-child {
  overflow: visible !important;
  color: var(--nabip-navy);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.35;
  white-space: normal !important;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download]
  > div
  > div:nth-child(2)
  > div:nth-child(2) {
  margin-top: 4px;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.4;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download]
  > div
  > div:last-child {
  color: var(--nabip-teal-dark);
  font-size: 12px;
  font-weight: 750;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > h2 {
  max-width: 1120px;
  margin: 0 auto;
  padding: clamp(54px, 7vw, 88px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(27px, 3.6vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-text {
  max-width: 900px;
  padding: 26px var(--nabip-gutter) 46px;
  color: var(--nabip-text);
  font-size: 16px;
  line-height: 1.8;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-text:nth-child(4) {
  padding: 28px clamp(22px, 4vw, 44px) 34px;
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: var(--nabip-surface-blue);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-text:nth-child(6) {
  padding: 30px clamp(22px, 4vw, 44px);
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-surface);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-text:nth-child(6)
  p:nth-child(2),
#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-text:nth-child(6)
  p:nth-child(4) {
  color: var(--nabip-navy);
  font-weight: 750;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-button-container {
  display: flex;
  justify-content: center;
  padding: 4px var(--nabip-gutter) clamp(48px, 6vw, 76px);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-button-container
  .puck-button {
  min-width: 210px;
  min-height: 48px;
  padding: 12px 22px;
  border-radius: 999px;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > h2:nth-child(10) {
  padding-top: clamp(52px, 7vw, 82px);
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 24px);
  padding: 16px max(var(--nabip-gutter), calc((100vw - 1120px) / 2))
    clamp(56px, 7vw, 88px);
  background: var(--nabip-white);
  border-top: 1px solid var(--nabip-border);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-grid-column {
  display: grid;
  min-width: 0;
  gap: clamp(14px, 2vw, 20px);
  align-content: start;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner {
  display: flex;
  min-width: 0;
  min-height: 204px;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  box-shadow: 0 5px 16px rgba(37, 71, 124, 0.06);
  color: var(--nabip-navy);
  text-align: center;
  text-decoration: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  > div:first-child {
  height: 118px !important;
  padding: 14px;
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
  mix-blend-mode: multiply;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  > div:last-child {
  display: flex;
  min-height: 76px;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  padding: 14px 12px 16px;
  border-top: 1px solid var(--nabip-border);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: 14px;
  line-height: 1.3;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  .puck-card-description {
  margin: 6px 0 0;
  color: var(--nabip-muted);
  font-size: 11px;
  line-height: 1.35;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner:hover {
  border-color: rgba(0, 155, 149, 0.55);
  box-shadow: var(--nabip-shadow-md);
  color: var(--nabip-navy);
  transform: translateY(-3px);
}

@media (max-width: 980px) {
  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-hero {
    min-height: 390px !important;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions {
    grid-template-columns: 1fr !important;
    grid-template-rows: max-content max-content max-content !important;
    padding: 28px var(--nabip-gutter) 48px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-grid-column:first-child
    > .puck-cta {
    grid-column: 1;
    grid-row: 1;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-grid-column:nth-child(2)
    > .puck-cta {
    grid-column: 1;
    grid-row: 2;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-grid-column
    > div:has(a[download]) {
    grid-column: 1;
    grid-row: 3;
    margin-top: -56px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-cta {
    min-height: 0;
    padding: 26px 22px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-cta-primary {
    width: 100%;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > h2 {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-text {
    padding-inline: var(--nabip-gutter);
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-text:nth-child(4),
  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-text:nth-child(6) {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-button-container {
    padding-bottom: 48px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-button-container
    .puck-button {
    width: 100%;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners {
    grid-template-columns: 1fr !important;
    padding: 12px var(--nabip-gutter) 56px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-grid-column {
    gap: 12px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner {
    min-height: 172px;
    flex-direction: row;
    align-items: stretch;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner
    > div:first-child {
    width: 42%;
    height: auto !important;
    min-height: 150px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner
    > div:last-child {
    min-height: 0;
    flex: 1;
    border-top: 0;
    border-left: 1px solid var(--nabip-border);
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-cta-primary,
  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner {
    transition: none;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-cta-primary:hover,
  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner:hover {
    transform: none;
  }
}

/*
 * Calendar interior page
 * The EventCalendar remains native. Structural selectors are limited to its
 * documented widget and event classes plus the native toolbar controls,
 * which currently expose accessible title labels rather than custom classes.
 */
#puck-content:has(.recur-event-calendar) > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.recur-event-calendar) > .puck-hero > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.recur-event-calendar) .recur-event-calendar {
  width: min(100%, 1216px);
  margin: 0 auto;
  padding: 22px var(--nabip-gutter) 0;
  border-top: 1px solid var(--nabip-border);
  border-radius: 0 0 var(--nabip-radius-lg) var(--nabip-radius-lg);
  background: var(--nabip-white);
  color: var(--nabip-text);
  box-sizing: border-box;
  overflow: hidden;
}

#puck-content:has(.recur-event-calendar) .recur-event-calendar-title {
  margin: 0 0 18px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child {
  min-height: 70px;
  padding: 12px 14px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  > div {
  color: var(--nabip-navy);
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  h3 {
  margin: 0 0 4px;
  color: var(--nabip-navy);
  font-size: clamp(18px, 2vw, 24px);
  font-weight: 750;
  line-height: 1.2;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  button {
  min-width: 44px;
  min-height: 44px;
  padding: 8px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  color: var(--nabip-navy);
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
  box-sizing: border-box;
  transition: border-color 160ms ease, background 160ms ease, color 160ms ease,
    transform 160ms ease;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  button[title="Previous month"],
#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  button[title="Next month"] {
  width: 44px !important;
  height: 44px !important;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  button:hover {
  border-color: var(--nabip-teal);
  background: var(--nabip-surface-blue);
  color: var(--nabip-teal-dark);
  transform: translateY(-1px);
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  button:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 3px;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:nth-child(2) {
  margin-top: 18px;
  border: 1px solid var(--nabip-border);
  border-bottom: 0;
  border-radius: var(--nabip-radius) var(--nabip-radius) 0 0;
  background: var(--nabip-navy);
  overflow: hidden !important;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:nth-child(2)
  > div {
  padding: 10px 4px;
  color: var(--nabip-white);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: 0.05em;
  line-height: 1.25;
  text-transform: uppercase;
  box-sizing: border-box;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:nth-child(3) {
  gap: 1px !important;
  border: 1px solid var(--nabip-border);
  border-radius: 0 0 var(--nabip-radius) var(--nabip-radius);
  background: var(--nabip-border);
  overflow: hidden !important;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  .recur-event-calendar-day,
#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:nth-child(3)
  > div:empty {
  min-width: 0;
  min-height: clamp(78px, 9vw, 108px) !important;
  padding: 9px;
  border: 0;
  background: var(--nabip-white);
  color: var(--nabip-text);
  box-sizing: border-box;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  .recur-event-calendar-day
  > div:first-child {
  width: 32px !important;
  height: 32px !important;
  margin-bottom: 8px;
  border-radius: 50%;
  color: var(--nabip-navy);
  font-size: 12px;
  font-weight: 750;
  line-height: 32px;
  box-sizing: border-box;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  .recur-event-calendar-day:hover {
  background: #f8fbfd;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  .recur-event-calendar-event {
  display: block;
  width: 100%;
  margin-top: 5px;
  padding: 7px 8px;
  border: 1px solid rgba(0, 124, 120, 0.2);
  border-radius: 6px;
  background: rgba(0, 155, 149, 0.1);
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.35;
  text-align: left;
  box-sizing: border-box;
  cursor: pointer;
  transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  .recur-event-calendar-event:hover {
  border-color: var(--nabip-teal);
  background: rgba(0, 155, 149, 0.18);
  transform: translateY(-1px);
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:last-child:not(:has(.recur-event-calendar-day)) {
  margin-top: 18px;
  padding: 24px clamp(18px, 4vw, 36px);
  border: 1px dashed var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  color: var(--nabip-muted);
  font-size: 14px;
  font-weight: 650;
  line-height: 1.65;
  text-align: center;
}

#puck-content:has(.recur-event-calendar) .recur-event-modal-backdrop {
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(22, 31, 38, 0.72);
  box-sizing: border-box;
}

#puck-content:has(.recur-event-calendar) .recur-event-modal {
  width: min(100%, 640px);
  max-height: min(720px, calc(100vh - 40px));
  overflow: auto;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-md);
}

#puck-content:has(.recur-event-calendar) .recur-event-modal-title {
  padding: 24px 28px 0;
  color: var(--nabip-navy);
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 750;
  line-height: 1.2;
}

#puck-content:has(.recur-event-calendar) .recur-event-modal-body {
  padding: 18px 28px 28px;
  color: var(--nabip-text);
  line-height: 1.65;
}

#puck-content:has(.recur-event-calendar) .recur-event-modal-button {
  min-height: 46px;
  margin: 0 28px 26px;
  padding: 11px 20px;
  border: 1px solid var(--nabip-teal);
  border-radius: 999px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-weight: 750;
  text-decoration: none;
  box-sizing: border-box;
}

@media (max-width: 700px) {
  #puck-content:has(.recur-event-calendar) > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.recur-event-calendar) .recur-event-calendar {
    padding: 18px var(--nabip-gutter) 0;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    > div
    > div:first-child {
    min-height: 64px;
    padding: 8px;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    > div
    > div:first-child
    h3 {
    font-size: 17px;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    > div
    > div:nth-child(2)
    > div {
    padding: 8px 2px;
    font-size: 9px;
    letter-spacing: 0;
    text-transform: none;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    .recur-event-calendar-day,
  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    > div
    > div:nth-child(3)
    > div:empty {
    min-height: 76px !important;
    padding: 6px 4px;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    .recur-event-calendar-day
    > div:first-child {
    width: 28px !important;
    height: 28px !important;
    margin-bottom: 5px;
    font-size: 11px;
    line-height: 28px;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    .recur-event-calendar-event {
    padding: 5px 4px;
    font-size: 10px;
  }

  #puck-content:has(.recur-event-calendar) .recur-event-modal-title {
    padding-inline: 22px;
  }

  #puck-content:has(.recur-event-calendar) .recur-event-modal-body {
    padding-inline: 22px;
  }

  #puck-content:has(.recur-event-calendar) .recur-event-modal-button {
    margin-inline: 22px;
  }
}

main:has(#puck-content .recur-event-calendar) {
  padding-bottom: 0 !important;
}

main:has(#puck-content .recur-event-calendar) + .site-footer {
  margin-top: 0 !important;
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    > div
    > div:first-child
    button,
  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    .recur-event-calendar-event {
    transition: none;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    > div
    > div:first-child
    button:hover,
  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    .recur-event-calendar-event:hover {
    transform: none;
  }
}

/*
 * Events interior page
 * The event source remains AMS/Recur-managed. These rules style the native
 * EventList in both its current empty state and future card/modal states.
 */
#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(3) {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(26px, 4vw, 42px) var(--nabip-gutter);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: linear-gradient(135deg, var(--nabip-surface-blue), var(--nabip-white));
  box-shadow: 0 8px 24px rgba(37, 71, 124, 0.06);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  > h2:nth-child(4) {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(52px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-list {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(48px, 6vw, 76px);
  border-top: 0;
  border-bottom: 0;
  background: transparent;
  box-sizing: border-box;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-list-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 750;
  letter-spacing: -0.03em;
  line-height: 1.2;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-list-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(16px, 2.5vw, 28px) !important;
  margin-top: 22px !important;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card {
  display: flex !important;
  min-width: 0;
  min-height: 250px !important;
  flex-direction: column;
  overflow: hidden !important;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg) !important;
  background: var(--nabip-white) !important;
  box-shadow: var(--nabip-shadow-sm) !important;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card:hover {
  border-color: rgba(0, 155, 149, 0.5);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card-body {
  display: flex !important;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  padding: clamp(22px, 2.5vw, 30px) !important;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card-date {
  order: -1;
  margin: 0 0 10px !important;
  color: var(--nabip-teal-dark) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.4 !important;
  text-transform: uppercase;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card-title {
  order: 0;
  margin: 0 0 0 !important;
  color: var(--nabip-navy) !important;
  font-size: clamp(20px, 2vw, 26px) !important;
  font-weight: 750 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.2 !important;
  font-family: inherit !important;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card-description {
  order: 1;
  margin: 14px 0 0 !important;
  color: var(--nabip-muted) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  display: block !important;
  -webkit-line-clamp: initial !important;
  -webkit-box-orient: initial !important;
  overflow: visible !important;
  font-family: inherit !important;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card-button {
  display: inline-flex;
  min-height: 46px !important;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  margin-top: auto !important;
  padding: 11px 20px !important;
  border: 1px solid var(--nabip-teal) !important;
  border-radius: 999px !important;
  background: var(--nabip-teal) !important;
  color: var(--nabip-white) !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  font-family: inherit !important;
  text-decoration: none !important;
  transition: background 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  box-sizing: border-box;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card-button:hover {
  border-color: var(--nabip-teal-dark) !important;
  background: var(--nabip-teal-dark) !important;
  box-shadow: 0 9px 20px rgba(0, 124, 120, 0.22);
  color: var(--nabip-white) !important;
  transform: translateY(-2px);
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-list-empty {
  max-width: 760px;
  margin: 0 auto;
  padding: clamp(24px, 4vw, 38px) clamp(18px, 4vw, 36px) !important;
  border: 0;
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  color: var(--nabip-muted) !important;
  font-size: 15px;
  font-weight: 650;
  line-height: 1.65;
  text-align: center !important;
  box-sizing: border-box;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(6) {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(30px, 4vw, 48px) var(--nabip-gutter) clamp(56px, 7vw, 88px);
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.75;
  text-align: center;
}

/*
 * EventList's details modal is appended directly to body by the native
 * renderer. The body :has() guard keeps these rules on Events only while the
 * event-list page is present, and preserves the renderer's display toggling.
 */
body:has(#puck-content .recur-event-list) #recur-event-modal-overlay {
  padding: 20px !important;
  background: rgba(22, 31, 38, 0.72) !important;
}

body:has(#puck-content .recur-event-list) #recur-event-modal {
  width: min(100%, 640px) !important;
  max-width: 640px !important;
  max-height: min(720px, calc(100vh - 40px)) !important;
  overflow: auto !important;
  border: 1px solid var(--nabip-border) !important;
  border-radius: var(--nabip-radius-lg) !important;
  background: var(--nabip-white) !important;
  box-shadow: var(--nabip-shadow-md) !important;
}

body:has(#puck-content .recur-event-list)
  #recur-event-modal
  > div[style*="padding"] {
  padding: 28px !important;
}

body:has(#puck-content .recur-event-list) #recur-event-modal .recur-event-modal-title {
  padding: 0 !important;
  color: var(--nabip-navy) !important;
  font-size: clamp(22px, 3vw, 30px) !important;
  font-weight: 750 !important;
  line-height: 1.2 !important;
  font-family: inherit !important;
}

body:has(#puck-content .recur-event-list) #recur-event-modal .recur-event-modal-body {
  margin: 0 0 20px !important;
  padding: 0 !important;
  color: var(--nabip-text) !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  font-family: inherit !important;
}

body:has(#puck-content .recur-event-list)
  #recur-event-modal
  .recur-event-modal-button {
  display: inline-flex !important;
  min-height: 46px !important;
  align-items: center;
  justify-content: center;
  padding: 11px 20px !important;
  border: 1px solid var(--nabip-teal) !important;
  border-radius: 999px !important;
  background: var(--nabip-teal) !important;
  color: var(--nabip-white) !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  text-decoration: none !important;
  box-sizing: border-box;
}

body:has(#puck-content .recur-event-list)
  #recur-event-modal
  > div[style*="padding"]
  > div:first-child
  > button {
  min-width: 44px !important;
  min-height: 44px !important;
  padding: 8px !important;
  border: 0 !important;
  color: var(--nabip-muted) !important;
  font-size: 26px !important;
  line-height: 1 !important;
}

@media (max-width: 980px) {
  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-list-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(> .recur-event-list:nth-child(5))
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    > .puck-text:nth-child(3) {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    > h2:nth-child(4) {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-list {
    padding: 12px var(--nabip-gutter) 48px;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-list-grid {
    grid-template-columns: 1fr !important;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-card {
    min-height: 0 !important;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-card-button {
    width: 100%;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    > .puck-text:nth-child(6) {
    padding-block: 28px 56px;
  }

  body:has(#puck-content .recur-event-list)
    #recur-event-modal
    > div[style*="padding"] {
    padding: 22px !important;
  }

  body:has(#puck-content .recur-event-list)
    #recur-event-modal
    .recur-event-modal-button {
    width: 100%;
  }

  body:has(#puck-content .recur-event-list)
    #recur-event-modal
    > div[style*="padding"]
    > div:first-child
    > button {
    min-width: 44px !important;
    min-height: 44px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-card,
  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-card-button {
    transition: none;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-card:hover,
  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-card-button:hover {
    transform: none;
  }
}

/*
 * Continuing Education interior page
 * CE topics use selective cards for comparison; partner cards remain a
 * restrained logo grid. All copy and destinations stay in the native payload.
 */
#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-text:nth-child(3) {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: linear-gradient(135deg, var(--nabip-surface-blue), var(--nabip-white));
  box-shadow: 0 8px 24px rgba(37, 71, 124, 0.06);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
  text-align: center;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > h2 {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(52px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch;
  gap: clamp(16px, 2.5vw, 28px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(48px, 6vw, 76px);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-grid-column {
  display: flex;
  min-width: 0;
  align-items: stretch;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-card--education {
  display: flex;
  width: 100%;
  min-height: 250px;
  flex-direction: column;
  justify-content: flex-start;
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid var(--nabip-border);
  border-top: 4px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  text-align: left !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-grid-column:nth-child(2)
  .puck-card--education {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-grid-column:nth-child(3)
  .puck-card--education {
  border-top-color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-card--education
  > div {
  display: flex;
  height: 100%;
  flex-direction: column;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-card--education
  .puck-card-eyebrow {
  margin: 0 0 14px;
  color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-card--education
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(20px, 2vw, 27px);
  line-height: 1.22;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-card--education
  .puck-card-description {
  margin: 16px 0 0;
  color: var(--nabip-muted);
  font-size: 15px;
  line-height: 1.65;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-image {
  width: 100%;
  max-width: var(--nabip-content);
  min-height: 0;
  margin: 0 auto;
  padding: 12px var(--nabip-gutter) clamp(28px, 4vw, 48px);
  justify-content: center;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-image
  .puck-image-img {
  width: min(100%, 116px) !important;
  height: auto !important;
  max-height: 120px;
  object-fit: contain !important;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > h2:nth-child(6) {
  padding-top: clamp(48px, 6vw, 76px);
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-text:nth-child(7) {
  max-width: 900px;
  padding-block: 0 26px;
  line-height: 1.8;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-text:nth-child(8) {
  max-width: 760px;
  padding: 24px var(--nabip-gutter) 10px;
  color: var(--nabip-navy);
  font-size: 17px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-button-container {
  display: flex;
  justify-content: center;
  padding: 0 var(--nabip-gutter) clamp(52px, 7vw, 84px);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-button-container
  .puck-button {
  min-width: 236px;
  min-height: 48px !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > h2:nth-child(10) {
  padding-top: clamp(48px, 6vw, 76px);
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch;
  gap: 24px !important;
  padding: 28px var(--nabip-gutter) clamp(26px, 3.5vw, 42px);
  background: transparent;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-grid-column {
  display: grid;
  min-width: 0;
  align-content: stretch;
  gap: clamp(14px, 2vw, 22px);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner {
  display: flex;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(37, 71, 124, 0.16);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  box-shadow: 0 5px 16px rgba(37, 71, 124, 0.07);
  color: inherit;
  text-decoration: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  > div:first-child {
  height: 116px !important;
  min-height: 116px;
  padding: 16px 18px 10px;
  background: rgba(255, 255, 255, 0.66);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  > div:last-child {
  display: flex;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  padding: 13px 38px 15px 16px;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: 14px;
  letter-spacing: -0.015em;
  line-height: 1.25;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  .puck-card-description {
  margin: 4px 0 0;
  color: var(--nabip-muted);
  font-size: 11px;
  line-height: 1.35;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner:hover {
  border-color: rgba(0, 155, 149, 0.58);
  box-shadow: 0 13px 26px rgba(37, 71, 124, 0.14);
  color: inherit;
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner:focus-visible,
#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-button-container
  .puck-button:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.38);
  outline-offset: 4px;
}

@media (max-width: 980px) {
  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--monthly-education {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--monthly-education
    .puck-card--education {
    min-height: 300px;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-text:nth-child(3) {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > h2 {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--monthly-education {
    grid-template-columns: 1fr !important;
    padding: 12px var(--nabip-gutter) 48px;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--monthly-education
    .puck-card--education {
    min-height: 0;
    padding: 24px 22px;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    padding: 28px var(--nabip-gutter) clamp(26px, 3.5vw, 42px);
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner
    > div:first-child {
    height: 116px !important;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-button-container
    .puck-button {
    width: 100%;
  }
}

@media (max-width: 560px) {
  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners {
    grid-template-columns: 1fr !important;
    padding-top: 20px;
    padding-bottom: 26px;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-grid-column {
    gap: 14px;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner
    > div:first-child {
    height: 108px !important;
    min-height: 108px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--monthly-education
    .puck-card--education,
  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner {
    transition: none;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--monthly-education
    .puck-card--education:hover,
  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner:hover {
    transform: none;
  }
}

/*
 * Shared section frame alignment — program pages
 * Preserve native grid breakpoints, card variants, images, partner links, and
 * action destinations while aligning outer components with Home's frame.
 */
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-text:nth-child(2),
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2:nth-child(3),
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-grid--people,
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2:nth-child(5),
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-grid--committee-people,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > h2,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-grid--monthly-education,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-image,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-button-container,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-grid--partners,
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-text:nth-child(2),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2:nth-child(3),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-grid--resource-cards:nth-child(4),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2:nth-child(5),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-grid--resource-cards:nth-child(6),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2:nth-child(7),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-grid--resource-cards:nth-child(8) {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2:nth-child(3),
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2:nth-child(5),
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-grid--people,
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-grid--committee-people,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > h2,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-grid--monthly-education,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-image,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-button-container,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-grid--partners,
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2:nth-child(3),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2:nth-child(5),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2:nth-child(7),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-grid--resource-cards:nth-child(4),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-grid--resource-cards:nth-child(6),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-grid--resource-cards:nth-child(8) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-text:nth-child(2) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 856px) / 2)
  );
}

#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text:nth-child(3) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text:nth-child(7) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text:nth-child(8) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 696px) / 2)
  );
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-text:nth-child(2) {
  padding-inline: clamp(16px, 4vw, 52px);
}

/* Match the Oklahoma logo panel and caption treatment to the national Image Puck. */
#puck-content
  .puck-card--affiliation:has(
    > div:first-child img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > div:first-child {
  display: flex !important;
  width: min(100%, 530px) !important;
  min-height: 190px !important;
  height: auto !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 24px auto 0;
  padding: 18px 24px;
  background: var(--nabip-surface);
  border-radius: var(--nabip-radius);
  box-sizing: border-box;
}

#puck-content
  .puck-card--affiliation:has(
    > div:first-child img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > div:first-child
  img {
  display: block;
  width: 100% !important;
  max-width: 100%;
  height: 124px !important;
  object-fit: contain !important;
  object-position: center;
  border-radius: 0;
  box-shadow: none;
}

#puck-content
  .puck-card--affiliation:has(
    > div:first-child img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > div:first-child::after {
  content: "National Association of Benefits and Insurance Professionals";
  display: block;
  margin-top: 10px;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.45;
  text-align: center;
}

/* Match the Oklahoma panel's content order to the national affiliation panel. */
#puck-content:has(> .puck-grid--affiliation-features:nth-child(4))
  > .puck-grid--affiliation-features:nth-child(4)
  .puck-grid-column:has(
    > .puck-card--affiliation
      > div:first-child
      img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > .puck-card--affiliation {
  display: contents !important;
}

#puck-content:has(> .puck-grid--affiliation-features:nth-child(4))
  > .puck-grid--affiliation-features:nth-child(4)
  .puck-grid-column
  > .puck-card--affiliation:has(
    > div:first-child img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > div:nth-child(2) {
  order: 1;
  width: 100%;
}

#puck-content:has(> .puck-grid--affiliation-features:nth-child(4))
  > .puck-grid--affiliation-features:nth-child(4)
  .puck-grid-column
  > .puck-card--affiliation:has(
    > div:first-child img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > div:first-child {
  order: 2;
}

#puck-content:has(> .puck-grid--affiliation-features:nth-child(4))
  > .puck-grid--affiliation-features:nth-child(4)
  .puck-grid-column:has(
    > .puck-card--affiliation
      > div:first-child
      img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > .puck-text {
  order: 3;
}

#puck-content:has(> .puck-grid--affiliation-features:nth-child(4))
  > .puck-grid--affiliation-features:nth-child(4)
  .puck-grid-column:has(
    > .puck-card--affiliation
      > div:first-child
      img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > .puck-button-container {
  order: 4;
}

/*
 * Sponsorship offer tiles
 * Scoped to pages that contain the native product-list widget so the
 * shared event and member widgets retain their existing treatment.
 */
#puck-content:has(> .recur-product-list)
  > .recur-product-list {
  padding-top: clamp(28px, 4vw, 48px);
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-list-title {
  max-width: 760px;
  margin-inline: auto;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 1.08;
  text-align: center;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-list-grid {
  gap: clamp(18px, 2.2vw, 28px);
  margin-top: clamp(30px, 4vw, 46px);
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  border: 1px solid rgba(37, 71, 124, 0.16);
  border-top: 5px solid var(--nabip-teal);
  border-radius: 18px;
  background: var(--nabip-white);
  box-shadow: 0 12px 32px rgba(22, 31, 38, 0.09);
  transition:
    transform 180ms ease,
    box-shadow 180ms ease,
    border-color 180ms ease;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card:hover {
  border-color: rgba(0, 155, 149, 0.44);
  box-shadow: 0 18px 42px rgba(22, 31, 38, 0.14);
  transform: translateY(-5px);
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card:focus-within {
  border-color: var(--nabip-teal);
  box-shadow: 0 0 0 4px rgba(0, 155, 149, 0.15), 0 18px 42px rgba(22, 31, 38, 0.12);
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-image {
  display: flex;
  height: 154px !important;
  align-items: center;
  justify-content: center;
  padding: 18px;
  background: var(--nabip-white) !important;
  box-sizing: border-box;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-image
  img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  filter: drop-shadow(0 5px 12px rgba(0, 0, 0, 0.16));
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 24px;
  padding: 22px 22px 24px;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(17px, 1.5vw, 20px);
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.25;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-price {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  margin: 14px 0 0;
  padding: 4px 12px;
  border-radius: 999px;
  background: var(--nabip-surface-blue);
  color: var(--nabip-teal-dark);
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-description {
  margin: 16px 0 0;
  color: var(--nabip-muted);
  font-size: 13px;
  line-height: 1.65;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-button {
  width: 100%;
  min-height: 46px;
  margin-top: auto;
  padding: 11px 16px;
  border: 1px solid var(--nabip-teal);
  border-radius: 8px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.01em;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
  transition:
    background 160ms ease,
    border-color 160ms ease,
    transform 160ms ease;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-button:hover {
  border-color: var(--nabip-teal-dark);
  background: var(--nabip-teal-dark);
  color: var(--nabip-white);
  transform: translateY(-1px);
}

@media (max-width: 700px) {
  #puck-content:has(> .recur-product-list)
    > .recur-product-list
    .recur-product-card-image {
    height: 138px !important;
  }

  #puck-content:has(> .recur-product-list)
    > .recur-product-list
    .recur-product-card-body {
    padding: 20px 18px 20px;
  }
}

@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
  :scope > .puck-text:nth-child(3) {
    padding-inline: clamp(16px, 2vw, 28px) !important;
  }
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(3) {
  padding-inline: clamp(16px, 2vw, 28px) !important;
}

@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
  :scope > .puck-text:nth-child(3) {
    padding-inline: clamp(16px, 2vw, 28px) !important;
  }
}

/*
 * Native text-card content width
 * Keep the visible panels unchanged while giving their copy a small,
 * consistent responsive inset across interior pages.
 */
main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--ethics
  .puck-text,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-text:nth-child(2),
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > .puck-text:nth-child(3),
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-text:nth-child(9),
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(4),
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(6),
#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(3),
#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-text:nth-child(3),
#puck-content:has(> .puck-grid--consumer-guidance):has(
    > .puck-grid--consumer-oklahoma-resources
  ):has(> .puck-grid--consumer-partners)
  > .puck-text:nth-child(3),
#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(4),
#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(6),
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > .puck-text:nth-child(3) {
  padding-inline: clamp(16px, 2vw, 28px) !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > h2:nth-child(6),
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > .puck-grid--resource-cards:nth-child(7) {
  position: relative;
  background: transparent;
  isolation: isolate;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > h2:nth-child(6)::before,
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > .puck-grid--resource-cards:nth-child(7)::before {
  position: absolute;
  z-index: -1;
  inset: 0 calc(50% - 50vw);
  background: var(--nabip-surface-blue);
  content: "";
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > .puck-grid--resource-cards:nth-child(9)
  .puck-grid-column {
  display: contents;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > .puck-grid--resource-cards:nth-child(9)
  .puck-card--resource {
  height: 100%;
}

/*
 * NABIP Foundation — native Space before mission card
 * The large Space at child 2 shifts the existing Foundation sequence by one.
 */
@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--resource-cards:nth-child(9))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > .puck-text:nth-child(3) {
    width: min(100%, var(--nabip-content)) !important;
    max-width: none !important;
    margin: 0 auto;
    padding: clamp(32px, 5vw, 60px) clamp(16px, 4vw, 52px)
      clamp(40px, 5vw, 64px);
    border-left: 5px solid var(--nabip-teal);
    background: var(--nabip-surface-blue);
    color: var(--nabip-text);
    font-size: clamp(16px, 1.4vw, 19px);
    line-height: 1.8;
    box-sizing: border-box;
  }

  :scope > h2 {
    width: min(100%, var(--nabip-content)) !important;
    max-width: none;
    margin: 0 auto;
    padding: clamp(48px, 6vw, 76px) var(--nabip-gutter) 20px;
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > h2:nth-child(6),
  :scope > .puck-grid--resource-cards:nth-child(7) {
    background: var(--nabip-surface-blue);
  }

  :scope > .puck-grid--resource-cards {
    width: min(100%, var(--nabip-content)) !important;
    max-width: none;
    margin-inline: auto;
    align-items: stretch;
    gap: clamp(16px, 2.5vw, 28px) !important;
    padding: 16px var(--nabip-gutter) clamp(52px, 7vw, 84px);
    box-sizing: border-box;
  }

  :scope > .puck-grid--resource-cards:nth-child(5) {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  :scope > .puck-grid--resource-cards:nth-child(7) {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  :scope > .puck-grid--resource-cards:nth-child(9) {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    padding-bottom: clamp(64px, 8vw, 96px);
  }

  :scope > .puck-grid--resource-cards:nth-child(9) .puck-grid-column {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
    align-items: stretch;
  }

  :scope > .puck-grid--resource-cards:nth-child(9)
    .puck-grid-column
    > .puck-card--resource {
    width: 100%;
  }

  :scope > .puck-grid--resource-cards .puck-card--resource {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 250px;
    flex-direction: column;
    justify-content: flex-start;
    padding: 26px 22px 52px !important;
    border: 1px solid var(--nabip-border);
    border-top: 4px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    color: inherit;
    text-align: left !important;
    text-decoration: none;
    box-sizing: border-box;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  }

  :scope > .puck-grid--resource-cards:nth-child(7)
    .puck-card--resource {
    min-height: 230px;
    border-top-color: var(--nabip-blue);
  }

  :scope > .puck-grid--resource-cards:nth-child(9)
    .puck-card--resource {
    min-height: 220px;
    border-top-color: var(--nabip-navy-soft);
  }

  :scope > .puck-grid--resource-cards .puck-card--resource::after {
    position: absolute;
    right: 22px;
    bottom: 20px;
    color: var(--nabip-teal-dark);
    content: "↗";
    font-size: 19px;
    line-height: 1;
  }

  :scope > .puck-grid--resource-cards .puck-card--resource:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--resource-cards .puck-card--resource:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--resource-cards .puck-card-eyebrow {
    margin: 0 0 12px;
    color: var(--nabip-teal-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.3;
  }

  :scope > .puck-grid--resource-cards .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: clamp(18px, 1.8vw, 25px);
    line-height: 1.22;
  }

  :scope > .puck-grid--resource-cards:nth-child(9) .puck-card-title {
    font-size: clamp(16px, 1.35vw, 20px);
  }

  :scope > .puck-grid--resource-cards .puck-card-description {
    margin: 13px 0 0;
    color: var(--nabip-muted);
    font-size: 13px;
    line-height: 1.62;
  }

  :scope > .puck-grid--resource-cards .puck-card-meta {
    margin: auto 0 0;
    padding: 14px 0 0;
    border-top: 1px solid var(--nabip-border);
    list-style: none;
  }

  :scope > .puck-grid--resource-cards .puck-card-meta-value {
    color: var(--nabip-teal-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
  }
}

@media (max-width: 1100px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--resource-cards:nth-child(9))) {
    :scope > .puck-grid--resource-cards:nth-child(5),
    :scope > .puck-grid--resource-cards:nth-child(9) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--resource-cards:nth-child(9))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-text:nth-child(3) {
      margin-inline: var(--nabip-gutter);
      padding-inline: 20px;
    }

    :scope > .puck-grid--resource-cards:nth-child(5),
    :scope > .puck-grid--resource-cards:nth-child(7),
    :scope > .puck-grid--resource-cards:nth-child(9) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--resource-cards .puck-card--resource {
      min-height: 230px;
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--resource-cards:nth-child(9))) {
    .puck-card--resource {
      transition: none;
    }
  }
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-grid--resource-cards:nth-child(7) {
  position: relative;
  padding-bottom: clamp(24px, 3vw, 36px);
  background: transparent;
  isolation: isolate;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-grid--resource-cards:nth-child(7)::before {
  position: absolute;
  z-index: -1;
  inset: 0 calc(50% - 50vw);
  background: var(--nabip-surface-blue);
  content: "";
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > h2:nth-child(6) {
  position: relative;
  background: transparent;
  isolation: isolate;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > h2:nth-child(6)::before {
  position: absolute;
  z-index: -1;
  inset: 0 calc(50% - 50vw);
  background: var(--nabip-surface-blue);
  content: "";
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-grid--partners:nth-child(11) {
  background: transparent;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(8),
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-button-container:nth-child(9) {
  position: relative;
  background: transparent;
  isolation: isolate;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(8) {
  padding-top: clamp(14px, 2vw, 22px);
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(8)::before,
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-button-container:nth-child(9)::before {
  position: absolute;
  z-index: -1;
  inset: 0 calc(50% - 50vw);
  background: var(--nabip-surface-blue);
  content: "";
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(2):empty {
  display: none;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(8) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > :is(
    h2:nth-child(5),
    .puck-text:nth-child(6)
  ) {
  width: 100vw !important;
  max-width: none !important;
  margin-inline: calc(50% - 50vw) !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(6) {
  width: min(calc(100% - (2 * var(--nabip-gutter))), 900px) !important;
  max-width: 900px !important;
  margin: 16px auto clamp(64px, 8vw, 96px) !important;
  padding: clamp(26px, 4vw, 42px);
  border: 1px solid var(--nabip-border);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow:
    var(--nabip-shadow-md),
    0 0 0 100vmax var(--nabip-surface-blue);
  color: var(--nabip-text);
  font-size: clamp(15px, 1.35vw, 17px);
  line-height: 1.85;
  white-space: pre-line !important;
  clip-path: inset(-24px -100vmax -24px -100vmax);
}

@media (min-width: 701px) {
  #puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
    > .puck-image:nth-child(3) {
    width: min(100%, 640px) !important;
    margin-inline: 0 !important;
    justify-self: end;
  }

  #puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
    > .puck-text:nth-child(4) {
    width: min(100%, 640px) !important;
    margin-inline: 0 !important;
    justify-self: start;
  }
}

#puck-content#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2:nth-child(7),
#puck-content#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-grid--committee-people {
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-inline: max(
    var(--nabip-gutter),
    calc((100vw - var(--nabip-content)) / 2)
  );
  background: var(--nabip-surface-blue);
  box-sizing: border-box;
}

#puck-content#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2:nth-child(5) {
  width: 100vw !important;
  max-width: none !important;
  margin-top: 0 !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-top: 0 !important;
  border-top: 0 !important;
  padding-inline: max(
    var(--nabip-gutter),
    calc((100vw - var(--nabip-content)) / 2)
  );
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-grid--committee-people {
  border-top: 0;
}

main:has(
    #puck-content > .puck-grid--people
  ):has(
    #puck-content > .puck-grid--committee-people
  ) {
  padding-bottom: 0;
}

main:has(
    #puck-content > .puck-grid--people
  ):has(
    #puck-content > .puck-grid--committee-people
  )
  + .site-footer {
  margin-top: 0;
}

/*
 * Final Home, Contact, and Legislative frame pass
 * Keep the selected Home quick-links grid unchanged; widen only its
 * surrounding prose/action outer frames while retaining readable measures.
 */
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(4),
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(10),
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(17),
#puck-content:has(> .puck-grid--quick-links)
  > .puck-cta--advocacy:nth-child(8) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: var(--nabip-content) !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(4),
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(10),
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(17) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(4) p,
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(10) p,
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(17) p {
  width: min(100%, 900px);
  max-width: 900px;
  margin-inline: auto;
}

#puck-content:has(> h2:nth-child(3)):has(> div:nth-child(4):not([class]))
  > .puck-text:nth-child(2),
#puck-content:has(> h2:nth-child(3)):has(> div:nth-child(4):not([class]))
  > h2:nth-child(3),
#puck-content:has(> h2:nth-child(3)):has(> div:nth-child(4):not([class]))
  > div:nth-child(4):not([class]) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: var(--nabip-content) !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

#puck-content:has(> h2:nth-child(3)):has(> div:nth-child(4):not([class]))
  > .puck-text:nth-child(2) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> h2:nth-child(3)):has(> div:nth-child(4):not([class]))
  > .puck-text:nth-child(2) p {
  width: min(100%, 900px);
  max-width: 900px;
  margin-inline: auto;
}

#puck-content:has(> h2:nth-child(3)):has(> div:nth-child(4):not([class]))
  > div:nth-child(4):not([class])
  > div {
  width: min(100%, 820px);
  max-width: 820px;
  margin-inline: auto;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5))
  > .puck-text:nth-child(2),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5))
  > .puck-button-container:nth-child(5) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: var(--nabip-content) !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5))
  > .puck-text:nth-child(2) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5))
  > .puck-text:nth-child(2) p {
  width: min(100%, 900px);
  max-width: 900px;
  margin-inline: auto;
}

/*
 * Final information-page frame pass
 * Keep the native gallery, resource, partner, image-viewer, and CTA
 * structures intact while aligning their direct section frames with Home.
 */
#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partner-grid:nth-child(10))
  > :is(
    h2:nth-child(2),
    .puck-grid--charitable-overview:nth-child(3),
    h2:nth-child(4),
    .puck-text:nth-child(5),
    .puck-button-container:nth-child(6),
    h2:nth-child(7),
    .puck-grid--charitable-gallery:nth-child(8),
    h2:nth-child(9),
    .puck-grid--partner-grid:nth-child(10)
  ),
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))
  > :is(
    .puck-text:nth-child(2),
    .puck-text:nth-child(3),
    h2:nth-child(4),
    .puck-grid--resource-cards:nth-child(5),
    h2:nth-child(6),
    .puck-grid--resource-cards:nth-child(7),
    .puck-text:nth-child(8),
    .puck-button-container:nth-child(9),
    h2:nth-child(10),
    .puck-grid--partners:nth-child(11)
  ) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: none !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partner-grid:nth-child(10))
  > :is(
    h2:nth-child(2),
    .puck-grid--charitable-overview:nth-child(3),
    h2:nth-child(4),
    .puck-button-container:nth-child(6),
    h2:nth-child(7),
    .puck-grid--charitable-gallery:nth-child(8),
    h2:nth-child(9),
    .puck-grid--partner-grid:nth-child(10)
  ),
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))
  > :is(
    h2:nth-child(4),
    .puck-grid--resource-cards:nth-child(5),
    h2:nth-child(6),
    .puck-grid--resource-cards:nth-child(7),
    .puck-button-container:nth-child(9),
    h2:nth-child(10),
    .puck-grid--partners:nth-child(11)
  ) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partner-grid:nth-child(10))
  > .puck-text:nth-child(5) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 576px) / 2)
  );
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(2),
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(3) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(8) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 696px) / 2)
  );
}

#puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
  > :is(
    .puck-text:nth-child(9),
    .puck-cta--member-benefits
  ) {
  grid-column: 1 / -1 !important;
  width: min(100%, var(--nabip-content)) !important;
  max-width: none !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
  > .puck-text:nth-child(9) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
  > :is(
    h2:nth-child(7),
    .puck-grid--member-services,
    .puck-grid--mission-vision,
    h2:nth-child(13),
    .puck-grid--partners
  ) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: none !important;
  margin-inline: auto !important;
  padding-inline: var(--nabip-gutter);
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
  > .puck-grid--member-services {
  padding-inline: 0 !important;
}

#puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
  > .puck-grid--mission-vision {
  padding-inline: 0 !important;
}

@media (min-width: 701px) {
  #puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
    > .puck-image:nth-child(3) {
    grid-column: 1 / span 6 !important;
    width: calc(
      100% - max(0px, calc((100vw - 1344px) / 2))
    ) !important;
    margin-left: max(
      0px,
      calc((100vw - 1344px) / 2)
    ) !important;
  }

  #puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
    > .puck-text:nth-child(4) {
    grid-column: 7 / span 6 !important;
    width: calc(
      100% - max(0px, calc((100vw - 1344px) / 2))
    ) !important;
    margin-right: max(
      0px,
      calc((100vw - 1344px) / 2)
    ) !important;
  }

  #puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
    > .puck-image:nth-child(5) {
    grid-column: 7 / span 6 !important;
    width: calc(
      100% - max(0px, calc((100vw - 1344px) / 2))
    ) !important;
    margin-right: max(
      0px,
      calc((100vw - 1344px) / 2)
    ) !important;
  }

  #puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
    > .puck-text:nth-child(6) {
    grid-column: 1 / span 6 !important;
    width: calc(
      100% - max(0px, calc((100vw - 1344px) / 2))
    ) !important;
    margin-left: max(
      0px,
      calc((100vw - 1344px) / 2)
    ) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
    > :is(
      .puck-image:nth-child(3),
      .puck-text:nth-child(4),
      .puck-image:nth-child(5),
      .puck-text:nth-child(6)
    ) {
    grid-column: 1 / -1 !important;
    width: min(100%, var(--nabip-content)) !important;
    max-width: none !important;
    margin-inline: auto !important;
    box-sizing: border-box;
  }
}

#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > h2,
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2 {
  width: min(100%, var(--nabip-content)) !important;
}

@media (max-width: 700px) {
  #puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
    > .puck-text:nth-child(2),
  #puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
    > .puck-text:nth-child(2),
  #puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
    > .puck-text:nth-child(2) {
    margin-inline: 0;
  }
}

/*
 * Newsletter interior page
 * The archive remains native File content. These rules turn each native
 * download row into a compact resource card without changing its URL, label,
 * download attribute, or approved archive order.
 */
#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-text:nth-child(2) {
  display: none;
  max-width: 820px;
  margin: 0 auto;
  padding: clamp(26px, 4vw, 42px) var(--nabip-gutter);
  color: var(--nabip-text);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
  text-align: center;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > h2:nth-child(3) {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(28px, 4vw, 48px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch;
  gap: clamp(14px, 2vw, 22px) !important;
  padding: clamp(52px, 7vw, 84px)
    max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2));
  border-top: 1px solid var(--nabip-border);
  border-bottom: 1px solid var(--nabip-border);
  background: var(--nabip-surface-blue);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column {
  display: flex;
  min-width: 0;
  align-items: stretch;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: stretch;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a {
  display: flex !important;
  width: 100%;
  min-height: 232px;
  flex-direction: column;
  overflow: hidden;
  padding: 22px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm) !important;
  color: var(--nabip-text);
  text-align: left;
  text-decoration: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a:hover {
  border-color: rgba(0, 155, 149, 0.52);
  box-shadow: var(--nabip-shadow-md) !important;
  color: var(--nabip-text);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 3px;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div {
  display: flex !important;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  align-items: stretch !important;
  gap: 0 !important;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div
  > div:first-child {
  width: 48px !important;
  height: 48px !important;
  margin-bottom: 20px;
  border-radius: 12px;
  background: var(--nabip-surface-blue);
  color: var(--nabip-teal-dark);
  font-size: 22px;
  line-height: 48px;
  text-align: center;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div
  > div:nth-child(2) {
  display: flex !important;
  min-width: 0;
  flex: 1;
  flex-direction: column;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div
  > div:nth-child(2)
  > div:first-child {
  overflow: visible !important;
  color: var(--nabip-navy);
  font-size: clamp(18px, 1.8vw, 22px);
  font-weight: 750;
  letter-spacing: -0.02em;
  line-height: 1.25;
  white-space: normal !important;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div
  > div:nth-child(2)
  > div:nth-child(2) {
  margin-top: 10px;
  color: var(--nabip-muted);
  font-size: 13px;
  line-height: 1.55;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div
  > div:nth-child(2)
  > div:last-child {
  display: flex !important;
  gap: 8px !important;
  margin-top: 16px;
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-transform: uppercase;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div
  > div:last-child {
  display: inline-flex !important;
  min-height: 44px;
  align-items: center;
  justify-content: flex-start;
  margin-top: 18px;
  padding: 10px 0;
  border-top: 1px solid var(--nabip-border);
  color: var(--nabip-teal-dark);
  font-size: 13px;
  font-weight: 750;
  line-height: 1.4;
}

@media (max-width: 980px) {
#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-grid--resource-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-hero {
    min-height: 360px !important;
  }

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-text:nth-child(2) {
    margin-inline: var(--nabip-gutter);
    padding: 24px var(--nabip-gutter);
  }

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > h2:nth-child(3) {
    padding: 48px var(--nabip-gutter) 16px;
  }

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-grid--resource-cards {
    grid-template-columns: 1fr !important;
    padding: 56px var(--nabip-gutter);
  }

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-grid--resource-cards
    .puck-grid-column
    > div
    > a {
    min-height: 0;
    padding: 20px;
  }

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-grid--resource-cards
    .puck-grid-column
    > div
    > a
    > div
    > div:nth-child(2)
    > div:first-child {
    font-size: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-grid--resource-cards
    .puck-grid-column
    > div
    > a {
    transition: none;
  }

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-grid--resource-cards
    .puck-grid-column
    > div
    > a:hover {
    transform: none;
  }
}

/*
 * Public Announcements interior page
 * This page currently contains one approved native announcement card. The
 * styling emphasizes its publication metadata without suggesting recency.
 */
#puck-content:has(.puck-grid--announcements)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--announcements)
  > .puck-text:nth-child(2) {
  display: none;
  max-width: 820px;
  margin: 0 auto;
  padding: clamp(26px, 4vw, 42px) var(--nabip-gutter);
  color: var(--nabip-text);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
  text-align: center;
}

#puck-content:has(.puck-grid--announcements)
  > h2:nth-child(3) {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(28px, 4vw, 48px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements {
  width: 100%;
  max-width: none;
  grid-template-columns: 1fr !important;
  padding: 18px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(52px, 7vw, 84px);
  border-top: 1px solid var(--nabip-border);
  border-bottom: 1px solid var(--nabip-border);
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-grid-column {
  display: flex;
  min-width: 0;
  justify-content: center;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement {
  display: grid;
  width: min(100%, 980px);
  min-height: clamp(360px, 38vw, 480px) !important;
  grid-template-columns: minmax(0, 46%) minmax(0, 54%);
  overflow: hidden;
  border: 1px solid rgba(37, 71, 124, 0.18);
  border-top: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-navy);
  box-shadow: var(--nabip-shadow-md);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  > img {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100%;
  grid-column: 1;
  grid-row: 1;
  object-fit: cover !important;
  object-position: center center !important;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-featured-overlay {
  display: none;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-featured-content {
  display: flex;
  width: 100%;
  min-height: 100%;
  flex-direction: column;
  grid-column: 2;
  grid-row: 1;
  justify-content: center;
  padding: clamp(30px, 5vw, 64px);
  background: var(--nabip-navy);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-eyebrow {
  margin: 0 0 16px;
  color: #91e3dc;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-title {
  margin: 0;
  color: var(--nabip-white);
  font-size: clamp(28px, 4vw, 48px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.08;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-description {
  max-width: 560px;
  margin: 18px 0 0;
  color: rgba(255, 255, 255, 0.9);
  font-size: clamp(16px, 1.5vw, 20px);
  line-height: 1.6;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-meta {
  margin: 26px 0 0;
  padding: 14px 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.35);
  list-style: none;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin: 0;
  align-items: baseline;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-meta-label {
  color: #91e3dc;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-meta-value {
  color: var(--nabip-white);
  font-size: 14px;
  font-weight: 650;
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--announcements)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--announcements)
    > .puck-hero
    .puck-hero-title {
    max-width: 100%;
    font-size: 34px !important;
    letter-spacing: -0.04em;
    overflow-wrap: anywhere;
  }

  #puck-content:has(.puck-grid--announcements)
    > .puck-text:nth-child(2) {
    margin-inline: var(--nabip-gutter);
    padding: 24px var(--nabip-gutter);
  }

  #puck-content:has(.puck-grid--announcements)
    > h2:nth-child(3) {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(.puck-grid--announcements)
    > .puck-grid--announcements {
    padding: 12px var(--nabip-gutter) 56px;
  }

  #puck-content:has(.puck-grid--announcements)
    > .puck-grid--announcements
    .puck-card--announcement {
    grid-template-columns: 1fr;
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--announcements)
    > .puck-grid--announcements
    .puck-card--announcement
    > img {
    width: 100% !important;
    height: 240px !important;
    min-height: 240px;
    grid-column: 1;
    grid-row: 1;
  }

  #puck-content:has(.puck-grid--announcements)
    > .puck-grid--announcements
    .puck-card--announcement
    .puck-card-featured-content {
    min-height: 320px;
    grid-column: 1;
    grid-row: 2;
    padding: 28px 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--announcements)
    > .puck-grid--announcements
    .puck-card--announcement {
    transition: none;
  }
}

/*
 * Member Resources interior page
 * Each native grid column is treated as one action-oriented panel so its
 * heading, supporting copy, and external action stay aligned as a unit.
 */
#puck-content:has(.puck-grid--member-resources)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources {
  width: 100%;
  max-width: none;
  grid-template-columns: 1fr !important;
  align-items: stretch;
  gap: clamp(16px, 2.5vw, 28px) !important;
  padding: clamp(34px, 5vw, 64px)
    max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(56px, 7vw, 88px);
  border-top: 1px solid var(--nabip-border);
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column:nth-child(2) {
  border-top: 4px solid var(--nabip-blue);
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column:nth-child(1),
#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column:nth-child(3) {
  border-top: 4px solid var(--nabip-teal);
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-card--resource {
  min-height: 184px;
  padding: 28px 24px 20px !important;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  text-align: left !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-card--resource
  > div {
  display: flex;
  min-height: 100%;
  flex-direction: column;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-card--resource
  .puck-card-eyebrow {
  margin: 0 0 14px;
  color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-card--resource
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(22px, 2vw, 28px);
  line-height: 1.2;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-card--resource
  .puck-card-description {
  margin: 14px 0 0;
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.55;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column
  > .puck-text {
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0 24px 24px;
  color: var(--nabip-text);
  font-size: 15px;
  line-height: 1.7;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column
  > .puck-text
  p {
  margin: 0;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column
  > .puck-button-container {
  display: flex;
  margin-top: auto;
  padding: 0 24px 26px;
  justify-content: stretch !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column
  > .puck-button-container
  .puck-button--resource-link {
  width: 100%;
  min-height: 48px !important;
  padding-inline: 16px;
  box-sizing: border-box;
  font-size: 13px;
  text-align: center;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-button--resource-link::after {
  margin-left: 8px;
  content: "↗";
  font-size: 16px;
  line-height: 1;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-button--resource-link:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 3px;
}

@media (max-width: 980px) {
  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--member-resources)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--member-resources)
    > .puck-hero
    .puck-hero-title {
    max-width: 100%;
    font-size: 34px !important;
    letter-spacing: -0.04em;
    overflow-wrap: anywhere;
  }

  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources {
    grid-template-columns: 1fr !important;
    padding: 24px var(--nabip-gutter) 56px;
  }

  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources
    .puck-card--resource {
    min-height: 0;
    padding: 24px 20px 18px !important;
  }

  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources
    .puck-grid-column
    > .puck-text {
    padding-inline: 20px;
    padding-bottom: 22px;
  }

  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources
    .puck-grid-column
    > .puck-button-container {
    padding-inline: 20px;
    padding-bottom: 22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources
    .puck-grid-column,
  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources
    .puck-button--resource-link {
    transition: none;
  }
}

/*
 * Consumer Information interior page
 * Explanatory copy stays editorial; only linked guidance/resource cards and
 * partner destinations receive contained surfaces and action affordances.
 */
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-text:nth-child(2) {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter);
  color: var(--nabip-text);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
  text-align: center;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-text:nth-child(3) {
  max-width: 1216px;
  margin: 0 auto;
  padding: clamp(30px, 4vw, 44px) clamp(28px, 4vw, 52px);
  border: 1px solid var(--nabip-border);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  color: var(--nabip-muted);
  font-size: 15px;
  line-height: 1.8;
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > h2 {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(48px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources {
  width: 100%;
  max-width: none;
  align-items: stretch;
  gap: clamp(16px, 2.5vw, 28px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(48px, 6vw, 72px);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  background: var(--nabip-surface-blue);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-grid-column {
  display: flex;
  min-width: 0;
  align-items: stretch;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column
  > a,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-grid-column
  > a {
  position: relative;
  display: flex;
  width: 100%;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource {
  display: flex;
  width: 100%;
  min-height: 270px;
  flex-direction: column;
  justify-content: flex-start;
  padding: 28px 26px 54px !important;
  border: 1px solid var(--nabip-border);
  border-top: 4px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  text-align: left !important;
  box-sizing: border-box;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column:nth-child(2)
  .puck-card--resource {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource::after,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource::after {
  position: absolute;
  right: 26px;
  bottom: 22px;
  color: var(--nabip-teal-dark);
  content: "↗";
  font-size: 20px;
  line-height: 1;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource:hover,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource:hover {
  border-color: rgba(0, 155, 149, 0.52);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column
  > a:focus-visible,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-grid-column
  > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 4px;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource
  .puck-card-eyebrow {
  margin: 0 0 14px;
  color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource
  .puck-card-title,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.2;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource
  .puck-card-description,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-description {
  margin: 14px 0 0;
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.65;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-meta {
  margin: auto 0 0;
  padding: 16px 0 0;
  border-top: 1px solid var(--nabip-border);
  list-style: none;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-meta-value {
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-text:nth-child(8) {
  max-width: 760px;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter) 14px;
  color: var(--nabip-muted);
  font-size: 16px;
  line-height: 1.7;
  text-align: center;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-button-container {
  display: flex;
  justify-content: center;
  padding: 0 var(--nabip-gutter) clamp(48px, 6vw, 72px);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-button-container
  .puck-button--consumer-board {
  min-width: 240px;
  min-height: 48px !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-button-container
  .puck-button--consumer-board:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 3px;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > h2:nth-child(10) {
  padding-top: clamp(48px, 6vw, 76px);
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 22px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(52px, 7vw, 84px);
  background: var(--nabip-surface-blue);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column {
  display: grid;
  min-width: 0;
  align-content: start;
  gap: clamp(14px, 2vw, 22px);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a {
  min-width: 0;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a
  > div:first-child {
  height: 112px !important;
  padding: 14px;
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a
  > div:first-child
  img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 4px;
}

@media (max-width: 980px) {
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-oklahoma-resources {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-hero
    .puck-hero-title {
    max-width: 100%;
    font-size: 34px !important;
    letter-spacing: -0.04em;
    overflow-wrap: anywhere;
  }

  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-text:nth-child(3) {
    margin-inline: var(--nabip-gutter);
    padding-inline: 20px;
  }

  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-guidance,
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-oklahoma-resources,
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-partners {
    grid-template-columns: 1fr !important;
    padding-inline: var(--nabip-gutter);
  }

  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-partners
    .puck-grid-column
    > a
    > div:first-child {
    height: 118px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    .puck-card--resource,
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    .puck-card--partner {
    transition: none;
  }

  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    .puck-card--resource:hover,
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    .puck-card--partner:hover {
    transform: none;
  }
}

/*
 * Consumer Information scope correction
 * Keep all consumer-only rules anchored to the page root and all three
 * distinctive native grid markers.
 */
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-text:nth-child(2) {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
  text-align: center;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-text:nth-child(3) {
  max-width: 1216px;
  margin: 0 auto;
  padding: clamp(30px, 4vw, 44px) clamp(28px, 4vw, 52px);
  border: 1px solid var(--nabip-border);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  color: var(--nabip-muted);
  font-size: 15px;
  line-height: 1.8;
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > h2 {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(48px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources {
  width: 100%;
  max-width: none;
  align-items: stretch;
  gap: clamp(16px, 2.5vw, 28px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(48px, 6vw, 72px);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  background: var(--nabip-surface-blue);
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-grid-column {
  display: flex;
  min-width: 0;
  align-items: stretch;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column
  > a,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-grid-column
  > a {
  position: relative;
  display: flex;
  width: 100%;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource {
  display: flex;
  width: 100%;
  min-height: 270px;
  flex-direction: column;
  justify-content: flex-start;
  padding: 28px 26px 54px !important;
  border: 1px solid var(--nabip-border);
  border-top: 4px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  text-align: left !important;
  box-sizing: border-box;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource
  .puck-card-eyebrow {
  margin: 0 0 14px;
  color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource
  .puck-card-title,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.2;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource
  .puck-card-description,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-description {
  margin: 14px 0 0;
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.65;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource::after,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource::after {
  position: absolute;
  right: 26px;
  bottom: 22px;
  color: var(--nabip-teal-dark);
  content: "↗";
  font-size: 20px;
  line-height: 1;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-meta {
  margin: auto 0 0;
  padding: 16px 0 0;
  border-top: 1px solid var(--nabip-border);
  list-style: none;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-meta-value {
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource:hover,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource:hover {
  border-color: rgba(0, 155, 149, 0.52);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column
  > a:focus-visible,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-grid-column
  > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 4px;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-text:nth-child(8) {
  max-width: 760px;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter) 14px;
  color: var(--nabip-muted);
  font-size: 16px;
  line-height: 1.7;
  text-align: center;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-button-container {
  display: flex;
  justify-content: center;
  padding: 0 var(--nabip-gutter) clamp(48px, 6vw, 72px);
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-button-container
  .puck-button--consumer-board {
  min-width: 240px;
  min-height: 48px !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > h2:nth-child(10) {
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 22px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(52px, 7vw, 84px);
  background: var(--nabip-surface-blue);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a
  > div:first-child {
  height: 112px !important;
  padding: 14px;
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a
  > div:first-child
  img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 4px;
}

@media (max-width: 980px) {
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-oklahoma-resources,
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-hero
    .puck-hero-title {
    max-width: 100%;
    font-size: 34px !important;
    letter-spacing: -0.04em;
    overflow-wrap: anywhere;
  }

  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-text:nth-child(3) {
    margin-inline: var(--nabip-gutter);
    padding-inline: 20px;
  }

  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-guidance,
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-oklahoma-resources,
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-partners {
    grid-template-columns: 1fr !important;
    padding-inline: var(--nabip-gutter);
  }

  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-partners
    .puck-grid-column
    > a
    > div:first-child {
    height: 118px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    .puck-card--resource,
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    .puck-card--partner {
    transition: none;
  }
}

/*
 * Consumer Information renderer-targeted rules
 * Scoped to Consumer's verified direct-child structure for compatibility with
 * the native shared grid variants used by the live Recur payload.
 */
@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-text:nth-child(2) {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
  text-align: center;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-text:nth-child(3) {
  max-width: 1216px;
  margin: 0 auto;
  padding: clamp(30px, 4vw, 44px) clamp(28px, 4vw, 52px);
  border: 1px solid var(--nabip-border);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  color: var(--nabip-muted);
  font-size: 15px;
  line-height: 1.8;
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > h2 {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(48px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards {
  width: 100%;
  max-width: none;
  align-items: stretch;
  gap: clamp(16px, 2.5vw, 28px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(48px, 6vw, 72px);
  box-sizing: border-box;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards:nth-child(5) {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards:nth-child(7) {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  background: var(--nabip-surface-blue);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-grid-column {
  display: flex;
  min-width: 0;
  align-items: stretch;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 270px;
  flex-direction: column;
  justify-content: flex-start;
  padding: 28px 26px 54px !important;
  border: 1px solid var(--nabip-border);
  border-top: 4px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  color: inherit;
  text-align: left !important;
  text-decoration: none;
  box-sizing: border-box;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards:nth-child(5)
  .puck-grid-column:nth-child(2)
  .puck-card--resource {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource::after {
  position: absolute;
  right: 26px;
  bottom: 22px;
  color: var(--nabip-teal-dark);
  content: "↗";
  font-size: 20px;
  line-height: 1;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource:hover {
  border-color: rgba(0, 155, 149, 0.52);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 4px;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource
  .puck-card-eyebrow {
  margin: 0 0 14px;
  color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.2;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource
  .puck-card-description {
  margin: 14px 0 0;
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.65;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards:nth-child(7)
  .puck-card--resource
  .puck-card-meta {
  margin: auto 0 0;
  padding: 16px 0 0;
  border-top: 1px solid var(--nabip-border);
  list-style: none;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards:nth-child(7)
  .puck-card--resource
  .puck-card-meta-value {
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-text:nth-child(8) {
  max-width: 760px;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter) 14px;
  color: var(--nabip-muted);
  font-size: 16px;
  line-height: 1.7;
  text-align: center;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-button-container {
  display: flex;
  justify-content: center;
  padding: 0 var(--nabip-gutter) clamp(48px, 6vw, 72px);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-button-container
  .puck-button--consumer-board {
  min-width: 240px;
  min-height: 48px !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > h2:nth-child(10) {
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--partners {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 22px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(52px, 7vw, 84px);
  background: var(--nabip-surface-blue);
  box-sizing: border-box;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--partners
  .puck-card--partner {
  overflow: hidden;
  border-color: var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--partners
  .puck-grid-column
  > a
  > div:first-child {
  height: 112px !important;
  padding: 14px;
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--partners
  .puck-grid-column
  > a
  > div:first-child
  img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--partners
  .puck-card--partner:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 4px;
}

@media (max-width: 980px) {
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-grid--resource-cards:nth-child(7),
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-grid--partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-hero
    .puck-hero-title {
    max-width: 100%;
    font-size: 34px !important;
    letter-spacing: -0.04em;
    overflow-wrap: anywhere;
  }

  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-text:nth-child(3) {
    margin-inline: var(--nabip-gutter);
    padding-inline: 20px;
  }

  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-grid--resource-cards:nth-child(5),
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-grid--resource-cards:nth-child(7),
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-grid--partners {
    grid-template-columns: 1fr !important;
    padding-inline: var(--nabip-gutter);
  }

  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-grid--partners
    .puck-grid-column
    > a
    > div:first-child {
    height: 118px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    .puck-card--resource,
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    .puck-card--partner {
    transition: none;
  }
}
}

/*
 * Consumer Information — verified structural scope
 * Consumer's live payload has resource grids at children 5 and 7, a board
 * action at child 9, and its partner directory at child 11. Foundation and
 * Scholarships do not share this direct-child sequence.
 */
@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > .puck-text:nth-child(2) {
    max-width: 900px;
    margin: 0 auto;
    padding: clamp(28px, 4vw, 44px) var(--nabip-gutter);
    font-size: clamp(15px, 1.3vw, 18px);
    line-height: 1.75;
    text-align: center;
  }

  :scope > .puck-text:nth-child(3) {
    max-width: 1216px;
    margin: 0 auto;
    padding: clamp(30px, 4vw, 44px) clamp(16px, 2vw, 28px);
    border: 1px solid var(--nabip-border);
    border-left: 5px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    color: var(--nabip-muted);
    font-size: 15px;
    line-height: 1.8;
    box-shadow: var(--nabip-shadow-sm);
    box-sizing: border-box;
  }

  :scope > h2 {
    max-width: var(--nabip-content);
    margin: 0 auto;
    padding: clamp(48px, 6vw, 76px) var(--nabip-gutter) 20px;
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
  }

  :scope > .puck-grid--resource-cards {
    width: 100%;
    max-width: none;
    align-items: stretch;
    gap: clamp(16px, 2.5vw, 28px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(48px, 6vw, 72px);
    box-sizing: border-box;
  }

  :scope > .puck-grid--resource-cards:nth-child(5) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  :scope > .puck-grid--resource-cards:nth-child(7) {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    background: var(--nabip-surface-blue);
  }

  :scope > .puck-grid--resource-cards .puck-grid-column {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
    align-items: stretch;
  }

  :scope > .puck-grid--resource-cards .puck-grid-column > .puck-card--resource {
    width: 100%;
  }

  :scope > .puck-grid--resource-cards .puck-card--resource {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 270px;
    flex-direction: column;
    justify-content: flex-start;
    padding: 28px 26px 54px !important;
    border: 1px solid var(--nabip-border);
    border-top: 4px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    color: inherit;
    text-align: left !important;
    text-decoration: none;
    box-sizing: border-box;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  }

  :scope > .puck-grid--resource-cards:nth-child(5)
    .puck-grid-column:nth-child(2)
    .puck-card--resource {
    border-top-color: var(--nabip-blue);
  }

  :scope > .puck-grid--resource-cards .puck-card--resource::after {
    position: absolute;
    right: 26px;
    bottom: 22px;
    color: var(--nabip-teal-dark);
    content: "↗";
    font-size: 20px;
    line-height: 1;
  }

  :scope > .puck-grid--resource-cards .puck-card--resource:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--resource-cards .puck-card--resource:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--resource-cards .puck-card-eyebrow {
    margin: 0 0 14px;
    color: var(--nabip-teal-dark);
  }

  :scope > .puck-grid--resource-cards .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: clamp(20px, 2vw, 28px);
    line-height: 1.2;
  }

  :scope > .puck-grid--resource-cards .puck-card-description {
    margin: 14px 0 0;
    color: var(--nabip-muted);
    font-size: 14px;
    line-height: 1.65;
  }

  :scope > .puck-grid--resource-cards:nth-child(7)
    .puck-card--resource
    .puck-card-meta {
    margin: auto 0 0;
    padding: 16px 0 0;
    border-top: 1px solid var(--nabip-border);
    list-style: none;
  }

  :scope > .puck-grid--resource-cards:nth-child(7)
    .puck-card-meta-value {
    color: var(--nabip-teal-dark);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  :scope > .puck-text:nth-child(8) {
    max-width: 760px;
    padding: clamp(28px, 4vw, 44px) var(--nabip-gutter) 14px;
    color: var(--nabip-muted);
    font-size: 16px;
    line-height: 1.7;
    text-align: center;
  }

  :scope > .puck-button-container {
    display: flex;
    justify-content: center;
    padding: 0 var(--nabip-gutter) clamp(48px, 6vw, 72px);
  }

  :scope > .puck-button-container .puck-button--consumer-board {
    min-width: 240px;
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > h2:nth-child(10) {
    border-top: 1px solid var(--nabip-border);
  }

  :scope > .puck-grid--partners {
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(14px, 2vw, 22px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(52px, 7vw, 84px);
    background: var(--nabip-surface-blue);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners .puck-card--partner {
    overflow: hidden;
    border-color: var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
  }

  :scope > .puck-grid--partners .puck-grid-column > a > div:first-child {
    height: 112px !important;
    padding: 14px;
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners
    .puck-grid-column
    > a
    > div:first-child
    img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--partners .puck-card--partner:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }
}

@media (max-width: 980px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
    :scope > .puck-grid--resource-cards:nth-child(7),
    :scope > .puck-grid--partners {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-text:nth-child(3) {
      margin-inline: var(--nabip-gutter);
      padding-inline: 20px;
    }

    :scope > .puck-grid--resource-cards:nth-child(5),
    :scope > .puck-grid--resource-cards:nth-child(7),
    :scope > .puck-grid--partners {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--partners .puck-grid-column > a > div:first-child {
      height: 118px !important;
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
    .puck-card--resource,
    .puck-card--partner {
      transition: none;
    }
  }
}

/*
 * Legislative Resources interior page
 * The live native payload is uniquely identified by one resource grid at
 * child 4 and the legislative-advocacy Button at child 5.
 */
@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5)):has(.puck-button--legislative-advocacy)) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > .puck-text:nth-child(2) {
    max-width: 900px;
    margin: 0 auto;
    padding: clamp(28px, 4vw, 44px) var(--nabip-gutter);
    font-size: clamp(15px, 1.3vw, 18px);
    line-height: 1.75;
    text-align: center;
  }

  :scope > .puck-text:nth-child(2):empty {
    display: none;
  }

  :scope > h2:nth-child(3) {
    max-width: var(--nabip-content);
    margin: 0 auto;
    padding: clamp(48px, 6vw, 76px) var(--nabip-gutter) 20px;
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
  }

  :scope > .puck-grid--resource-cards:nth-child(4) {
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: stretch;
    gap: clamp(16px, 2.5vw, 28px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(48px, 6vw, 72px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--resource-cards:nth-child(4) .puck-grid-column {
    display: flex;
    min-width: 0;
    align-items: stretch;
  }

  :scope > .puck-grid--resource-cards:nth-child(4) .puck-card--resource {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 270px;
    flex-direction: column;
    justify-content: flex-start;
    padding: 28px 26px 54px !important;
    border: 1px solid var(--nabip-border);
    border-top: 4px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    color: inherit;
    text-align: left !important;
    text-decoration: none;
    box-sizing: border-box;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  }

  :scope > .puck-grid--resource-cards:nth-child(4)
    .puck-grid-column:nth-child(2)
    .puck-card--resource {
    border-top-color: var(--nabip-blue);
  }

  :scope > .puck-grid--resource-cards:nth-child(4) .puck-card--resource::after {
    position: absolute;
    right: 26px;
    bottom: 22px;
    color: var(--nabip-teal-dark);
    content: "↗";
    font-size: 20px;
    line-height: 1;
  }

  :scope > .puck-grid--resource-cards:nth-child(4) .puck-card--resource:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--resource-cards:nth-child(4)
    .puck-card--resource:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--resource-cards:nth-child(4)
    .puck-card--resource
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: clamp(20px, 2vw, 27px);
    line-height: 1.2;
  }

  :scope > .puck-grid--resource-cards:nth-child(4)
    .puck-card--resource
    .puck-card-description {
    margin: 14px 0 0;
    color: var(--nabip-muted);
    font-size: 14px;
    line-height: 1.65;
  }

  :scope > .puck-grid--resource-cards:nth-child(4)
    .puck-card--resource
    .puck-card-meta {
    margin: auto 0 0;
    padding: 16px 0 0;
    border-top: 1px solid var(--nabip-border);
    list-style: none;
  }

  :scope > .puck-grid--resource-cards:nth-child(4)
    .puck-card--resource
    .puck-card-meta-value {
    color: var(--nabip-teal-dark);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  :scope > .puck-button-container:nth-child(5) {
    display: flex;
    width: 100vw;
    min-height: 132px;
    margin-left: calc(50% - 50vw);
    align-items: center;
    justify-content: center;
    padding: 36px var(--nabip-gutter) 40px;
    background: var(--nabip-navy);
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(5)
    .puck-button--legislative-advocacy {
    min-width: 230px;
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(5)
    .puck-button--legislative-advocacy::after {
    margin-left: 8px;
    content: "↗";
    font-size: 16px;
    line-height: 1;
  }

  :scope > .puck-button-container:nth-child(5)
    .puck-button--legislative-advocacy:focus-visible {
    outline: 3px solid rgba(255, 255, 255, 0.74);
    outline-offset: 4px;
  }

  :scope > .puck-button-container:nth-child(5) {
    display: none;
  }
}

@media (max-width: 1100px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5)):has(.puck-button--legislative-advocacy)) {
    :scope > .puck-grid--resource-cards:nth-child(4) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5)):has(.puck-button--legislative-advocacy)) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-grid--resource-cards:nth-child(4) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--resource-cards:nth-child(4) .puck-card--resource {
      min-height: 240px;
    }

    :scope > .puck-button-container:nth-child(5) {
      min-height: 124px;
      padding-block: 32px 36px;
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5)):has(.puck-button--legislative-advocacy)) {
    .puck-card--resource {
      transition: none;
    }
  }
}

/*
 * NABIP Foundation interior page
 * Three resource grids at direct children 4, 6, and 8 distinguish this
 * page from the other resource-card interiors.
 */
@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > .puck-text:nth-child(2) {
    max-width: 960px;
    margin: 0 auto;
    padding: clamp(32px, 5vw, 60px) clamp(18px, 3vw, 32px)
      clamp(40px, 5vw, 64px);
    border-left: 5px solid var(--nabip-teal);
    background: var(--nabip-surface-blue);
    color: var(--nabip-text);
    font-size: clamp(16px, 1.4vw, 19px);
    line-height: 1.8;
    box-sizing: border-box;
  }

  :scope > h2 {
    max-width: none;
    margin: 0;
    padding: clamp(48px, 6vw, 76px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      20px;
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > h2:nth-child(5),
  :scope > .puck-grid--resource-cards:nth-child(6) {
    background: var(--nabip-surface-blue);
  }

  :scope > .puck-grid--resource-cards {
    width: 100%;
    max-width: none;
    align-items: stretch;
    gap: clamp(16px, 2.5vw, 28px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(52px, 7vw, 84px);
    box-sizing: border-box;
  }

  :scope > .puck-grid--resource-cards:nth-child(4) {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  :scope > .puck-grid--resource-cards:nth-child(6) {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  :scope > .puck-grid--resource-cards:nth-child(8) {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    padding-bottom: clamp(64px, 8vw, 96px);
  }

  :scope > .puck-grid--resource-cards:nth-child(8) .puck-grid-column {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
    align-items: stretch;
  }

  :scope > .puck-grid--resource-cards:nth-child(8)
    .puck-grid-column
    > .puck-card--resource {
    width: 100%;
  }

  :scope > .puck-grid--resource-cards .puck-card--resource {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 250px;
    flex-direction: column;
    justify-content: flex-start;
    padding: 26px 22px 52px !important;
    border: 1px solid var(--nabip-border);
    border-top: 4px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    color: inherit;
    text-align: left !important;
    text-decoration: none;
    box-sizing: border-box;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  }

  :scope > .puck-grid--resource-cards:nth-child(6)
    .puck-card--resource {
    min-height: 230px;
    border-top-color: var(--nabip-blue);
  }

  :scope > .puck-grid--resource-cards:nth-child(8)
    .puck-card--resource {
    min-height: 220px;
    border-top-color: var(--nabip-navy-soft);
  }

  :scope > .puck-grid--resource-cards .puck-card--resource::after {
    position: absolute;
    right: 22px;
    bottom: 20px;
    color: var(--nabip-teal-dark);
    content: "↗";
    font-size: 19px;
    line-height: 1;
  }

  :scope > .puck-grid--resource-cards .puck-card--resource:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--resource-cards .puck-card--resource:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--resource-cards .puck-card-eyebrow {
    margin: 0 0 12px;
    color: var(--nabip-teal-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.3;
  }

  :scope > .puck-grid--resource-cards .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: clamp(18px, 1.8vw, 25px);
    line-height: 1.22;
  }

  :scope > .puck-grid--resource-cards:nth-child(8) .puck-card-title {
    font-size: clamp(16px, 1.35vw, 20px);
  }

  :scope > .puck-grid--resource-cards .puck-card-description {
    margin: 13px 0 0;
    color: var(--nabip-muted);
    font-size: 13px;
    line-height: 1.62;
  }

  :scope > .puck-grid--resource-cards .puck-card-meta {
    margin: auto 0 0;
    padding: 14px 0 0;
    border-top: 1px solid var(--nabip-border);
    list-style: none;
  }

  :scope > .puck-grid--resource-cards .puck-card-meta-value {
    color: var(--nabip-teal-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
  }
}

@media (max-width: 1100px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))) {
    :scope > .puck-grid--resource-cards:nth-child(4) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    :scope > .puck-grid--resource-cards:nth-child(8) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-text:nth-child(2) {
      margin-inline: var(--nabip-gutter);
      padding-inline: 20px;
    }

    :scope > .puck-grid--resource-cards:nth-child(4),
    :scope > .puck-grid--resource-cards:nth-child(6),
    :scope > .puck-grid--resource-cards:nth-child(8) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--resource-cards .puck-card--resource {
      min-height: 230px;
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))) {
    .puck-card--resource {
      transition: none;
    }
  }
}

/*
 * Charitable Organization interior page
 * The charitable variants and direct-child sequence keep this image-led
 * partnership page isolated from shared gallery and partner grids.
 */
@scope (#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partners:nth-child(10))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > h2 {
    max-width: none;
    margin: 0;
    padding: clamp(48px, 6vw, 76px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      20px;
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch;
    gap: clamp(20px, 4vw, 48px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(56px, 7vw, 88px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3)
    .puck-grid-column {
    display: flex;
    min-width: 0;
    align-items: center;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3)
    .puck-grid-column:first-child {
    justify-content: center;
    padding: 20px;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3)
    .puck-grid-column:first-child
    .puck-image {
    width: 100%;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3)
    .puck-grid-column:first-child
    img {
    display: block;
    width: 100% !important;
    height: auto !important;
    max-height: 380px;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3)
    .puck-grid-column:last-child {
    padding: clamp(26px, 4vw, 42px);
    border-left: 5px solid var(--nabip-teal);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3)
    .puck-grid-column:last-child
    .puck-text {
    max-width: 100%;
    padding: 0;
    line-height: 1.8;
  }

  :scope > h2:nth-child(4),
  :scope > .puck-text:nth-child(5),
  :scope > .puck-button-container:nth-child(6),
  :scope > h2:nth-child(7),
  :scope > .puck-grid--charitable-gallery:nth-child(8) {
    width: 100vw !important;
    max-width: none !important;
    margin-inline: calc(50% - 50vw) !important;
    box-sizing: border-box;
  }

  :scope > h2:nth-child(4),
  :scope > .puck-text:nth-child(5),
  :scope > .puck-button-container:nth-child(6) {
    background: var(--nabip-navy);
  }

  :scope > h2:nth-child(4) {
    padding-bottom: 16px;
    color: var(--nabip-white);
  }

  :scope > .puck-text:nth-child(5) {
    max-width: none;
    padding: 8px max(var(--nabip-gutter), calc((100vw - 640px) / 2))
      22px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 16px;
    line-height: 1.8;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(6) {
    display: flex;
    width: 100%;
    min-height: 132px;
    align-items: flex-start;
    justify-content: center;
    padding: 8px var(--nabip-gutter) 44px;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(6)
    .puck-button--charitable-contribution {
    min-width: 260px;
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(6)
    .puck-button--charitable-contribution::after {
    margin-left: 8px;
    content: "↗";
    font-size: 16px;
    line-height: 1;
  }

  :scope > h2:nth-child(7) {
    border-top: 1px solid rgba(216, 225, 232, 0.9);
    background: var(--nabip-surface);
  }

  :scope > .puck-grid--charitable-gallery:nth-child(8) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: clamp(16px, 3vw, 32px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(56px, 7vw, 88px);
    background: var(--nabip-surface);
    box-sizing: border-box;
  }

  :scope > .puck-grid--charitable-gallery:nth-child(8)
    .puck-grid-column {
    display: flex;
    min-width: 0;
    align-items: stretch;
  }

  :scope > .puck-grid--charitable-gallery:nth-child(8)
    .puck-image {
    display: flex;
    width: 100%;
    min-height: 300px;
    flex-direction: column;
    justify-content: center;
    padding: 16px;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--charitable-gallery:nth-child(8)
    .puck-image-figure {
    display: flex;
    width: 100%;
    align-items: center;
    flex-direction: column;
    margin-inline: auto;
  }

  :scope > .puck-grid--charitable-gallery:nth-child(8)
    .puck-image
    img {
    display: block;
    width: 100% !important;
    height: 300px !important;
    margin-inline: auto;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--charitable-gallery:nth-child(8)
    .puck-image
    figcaption {
    margin-top: 10px;
    color: var(--nabip-muted);
    font-size: 12px;
    text-align: center;
  }

  :scope > h2:nth-child(9) {
    background: var(--nabip-white);
  }

  :scope > .puck-grid--partners:nth-child(10) {
    display: grid;
    width: 100%;
    max-width: var(--nabip-content);
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(14px, 2vw, 24px) !important;
    align-items: stretch;
    margin-inline: auto;
    padding: 28px var(--nabip-gutter) clamp(26px, 3.5vw, 42px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-grid-column {
    display: grid;
    min-width: 0;
    gap: clamp(14px, 2vw, 22px);
    align-content: stretch;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner {
    position: relative;
    display: flex;
    width: 100%;
    min-width: 0;
    min-height: 0;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(37, 71, 124, 0.16);
    border-radius: 10px;
    background:
      linear-gradient(135deg, rgba(234, 241, 247, 0.72), rgba(255, 255, 255, 0.98) 54%),
      var(--nabip-white);
    color: inherit;
    text-decoration: none;
    box-shadow: 0 5px 16px rgba(37, 71, 124, 0.07);
    transition:
      transform 180ms ease,
      border-color 180ms ease,
      box-shadow 180ms ease;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner:hover {
    border-color: rgba(0, 155, 149, 0.58);
    box-shadow: 0 13px 26px rgba(37, 71, 124, 0.14);
    color: inherit;
    transform: translateY(-3px);
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.38);
    outline-offset: 4px;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner
    > div:first-child {
    display: grid;
    width: 100%;
    height: 116px !important;
    min-height: 116px;
    flex: 0 0 116px;
    place-items: center;
    padding: 16px 18px 10px;
    background: rgba(255, 255, 255, 0.66);
    border-bottom: 1px solid rgba(37, 71, 124, 0.1);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner
    > div:first-child
    img {
    display: block;
    width: auto !important;
    max-width: 100%;
    height: auto !important;
    max-height: 82px;
    object-fit: contain !important;
    object-position: center center !important;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner
    > div:last-child {
    display: flex;
    min-width: 0;
    min-height: 56px;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: center;
    padding: 13px 38px 15px 16px;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner
    .puck-card-title {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    color: var(--nabip-navy);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: -0.015em;
    line-height: 1.25;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner
    .puck-card-description {
    display: -webkit-box;
    overflow: hidden;
    margin: 4px 0 0;
    color: var(--nabip-muted);
    font-size: 11px;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
}

@media (max-width: 980px) {
  @scope (#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partners:nth-child(10))) {
    :scope > .puck-grid--partners:nth-child(10) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partners:nth-child(10))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-grid--charitable-overview:nth-child(3),
    :scope > .puck-grid--charitable-gallery:nth-child(8) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--charitable-overview:nth-child(3)
      .puck-grid-column:last-child {
      padding: 24px 20px;
    }

    :scope > .puck-grid--charitable-gallery:nth-child(8)
      .puck-image {
      min-height: 260px;
    }

    :scope > .puck-grid--charitable-gallery:nth-child(8)
      .puck-image
      img {
      height: 240px !important;
    }

    :scope > .puck-grid--partners:nth-child(10) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      padding-inline: var(--nabip-gutter);
    }
  }
}

@media (max-width: 560px) {
  @scope (#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partners:nth-child(10))) {
    :scope > .puck-grid--partners:nth-child(10) {
      grid-template-columns: 1fr !important;
      gap: 14px !important;
      padding-top: 20px;
    }

    :scope > .puck-grid--partners:nth-child(10)
      .puck-grid-column {
      gap: 14px;
    }

    :scope > .puck-grid--partners:nth-child(10)
      .puck-card--partner
      > div:first-child {
      height: 108px !important;
      min-height: 108px;
      flex-basis: 108px;
    }

    :scope > .puck-grid--partners:nth-child(10)
      .puck-card--partner
      > div:first-child
      img {
      max-height: 76px;
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partners:nth-child(10))) {
    .puck-card--partner {
      transition: none;
    }
  }
}

/*
 * Scholarships interior page
 * The two native scholarship columns, contact action, and partner grid
 * distinguish this page from the other shared partner-grid interiors.
 */
@scope (#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > .puck-text:nth-child(2) {
    max-width: 900px;
    margin: 0 auto;
    padding: clamp(28px, 4vw, 44px) var(--nabip-gutter)
      clamp(32px, 4vw, 52px);
    color: var(--nabip-text);
    font-size: clamp(16px, 1.35vw, 19px);
    line-height: 1.75;
    text-align: center;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch;
    gap: clamp(20px, 3vw, 36px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(56px, 7vw, 88px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-grid-column {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 18px;
    align-items: stretch;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-card--scholarship {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 300px;
    flex-direction: column;
    padding: 30px 28px 34px !important;
    border: 1px solid var(--nabip-border);
    border-top: 4px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    text-align: left !important;
    box-sizing: border-box;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-grid-column:nth-child(2)
    .puck-card--scholarship {
    border-top-color: var(--nabip-blue);
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-card--scholarship
    .puck-card-eyebrow {
    margin: 0 0 14px;
    color: var(--nabip-teal-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.3;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-card--scholarship
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: clamp(22px, 2.3vw, 31px);
    line-height: 1.18;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-card--scholarship
    .puck-card-description {
    margin: 16px 0 0;
    color: var(--nabip-muted);
    font-size: 14px;
    line-height: 1.72;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-grid-column
    > div:has(> a[href$=".pdf"]) {
    height: auto !important;
    min-height: 112px;
    flex: 0 0 auto;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    box-sizing: border-box;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-grid-column
    > div:has(> a[href$=".pdf"])
    > a {
    display: block !important;
    height: auto !important;
    min-height: 112px;
    padding: 18px 20px;
    color: var(--nabip-navy);
    text-align: left;
    text-decoration: none;
    box-sizing: border-box;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    a[href$=".pdf"]
    div[style*="white-space"] {
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    a[href$=".pdf"]:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    a[href$=".pdf"]:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > h2:nth-child(4),
  :scope > .puck-text:nth-child(5),
  :scope > .puck-button-container:nth-child(6) {
    background: var(--nabip-navy);
  }

  :scope > h2:nth-child(4) {
    max-width: none;
    margin: 0;
    padding: clamp(52px, 6vw, 76px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      18px;
    color: var(--nabip-white);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-text:nth-child(5) {
    max-width: none;
    padding: 10px max(var(--nabip-gutter), calc((100vw - 760px) / 2))
      24px;
    color: rgba(255, 255, 255, 0.92);
    font-size: 16px;
    line-height: 1.85;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(6) {
    display: flex;
    min-height: 132px;
    align-items: flex-start;
    justify-content: center;
    padding: 8px var(--nabip-gutter) 44px;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(6)
    .puck-button--scholarship-contact {
    min-width: 190px;
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(6)
    .puck-button--scholarship-contact::after {
    margin-left: 8px;
    content: "↗";
    font-size: 16px;
    line-height: 1;
  }

  :scope > h2:nth-child(7) {
    max-width: none;
    margin: 0;
    padding: clamp(48px, 6vw, 72px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      20px;
    background: var(--nabip-surface-blue);
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: start;
    gap: clamp(14px, 2vw, 22px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(60px, 8vw, 96px);
    background: var(--nabip-surface-blue);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8) .puck-grid-column {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
    align-items: stretch;
  }

  :scope > .puck-grid--partners:nth-child(8) .puck-card--partner {
    display: flex;
    width: 100%;
    min-height: 230px;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    text-decoration: none;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8) .puck-card--partner:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    > div:first-child {
    display: flex;
    height: 132px !important;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    > div:first-child
    img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    > div:last-child {
    flex: 1 1 auto;
    padding: 18px 18px 20px;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: 16px;
    line-height: 1.3;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    .puck-card-description {
    margin: 8px 0 0;
    color: var(--nabip-muted);
    font-size: 12px;
  }
}

@media (max-width: 980px) {
  @scope (#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    :scope > .puck-grid--scholarship-options:nth-child(3)
      a[href$=".pdf"]
      > div:first-child {
      display: grid !important;
      grid-template-columns: 48px minmax(0, 1fr);
      align-items: start !important;
      gap: 12px 16px !important;
    }

    :scope > .puck-grid--scholarship-options:nth-child(3)
      a[href$=".pdf"]
      > div:first-child
      > div:first-child {
      grid-column: 1;
      grid-row: 1;
    }

    :scope > .puck-grid--scholarship-options:nth-child(3)
      a[href$=".pdf"]
      > div:first-child
      > div:nth-child(2) {
      grid-column: 2;
      grid-row: 1;
      min-width: 0;
    }

    :scope > .puck-grid--scholarship-options:nth-child(3)
      a[href$=".pdf"]
      > div:first-child
      > div:last-child {
      grid-column: 2;
      grid-row: 2;
      justify-content: flex-start !important;
    }

    :scope > .puck-grid--partners:nth-child(8) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-grid--scholarship-options:nth-child(3) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--scholarship-options:nth-child(3)
      .puck-card--scholarship {
      min-height: 260px;
    }

    :scope > .puck-grid--partners:nth-child(8) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    .puck-card--scholarship,
    .puck-card--partner,
    a[href$=".pdf"] {
      transition: none;
    }
  }
}

/*
 * Contests & Awards interior page
 * The direct child sequence keeps the two native award stories and their
 * shared partner directory isolated from other image-led interiors.
 */
@scope (#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
  :scope {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  :scope > * {
    grid-column: 1 / -1;
  }

  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > h2:nth-child(2),
  :scope > .puck-image:nth-child(3),
  :scope > .puck-text:nth-child(4) {
    width: 100%;
    max-width: none;
    box-sizing: border-box;
    background: var(--nabip-white);
  }

  :scope > h2:nth-child(2),
  :scope > h2:nth-child(5),
  :scope > h2:nth-child(7) {
    margin: 0;
    padding: clamp(48px, 6vw, 76px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      20px;
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > h2:nth-child(2) {
    color: var(--nabip-navy);
  }

  :scope > .puck-image:nth-child(3) {
    grid-column: 1;
    padding: 16px 12px clamp(56px, 7vw, 88px)
      max(var(--nabip-gutter), 24px);
  }

  :scope > .puck-text:nth-child(4) {
    grid-column: 2;
    padding: 28px max(var(--nabip-gutter), 24px)
      clamp(56px, 7vw, 88px) 24px;
  }

  :scope > .puck-image:nth-child(3) {
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      24px;
    text-align: center;
  }

  :scope > .puck-image:nth-child(3) .puck-image-figure {
    width: min(100%, 960px);
    margin: 0 auto;
    padding: 20px;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-surface);
    box-shadow: var(--nabip-shadow-sm);
    box-sizing: border-box;
  }

  :scope > .puck-image:nth-child(3) .puck-image-viewer-trigger {
    display: block;
    width: 100%;
    min-height: 320px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: zoom-in;
  }

  :scope > .puck-image:nth-child(3) img {
    display: block;
    width: min(100%, 420px) !important;
    height: 320px !important;
    margin: 0 auto;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-image:nth-child(3) figcaption {
    margin-top: 12px;
    color: var(--nabip-muted);
    font-size: 12px;
    text-align: center;
  }

  :scope > .puck-text:nth-child(4),
  :scope > .puck-text:nth-child(6) {
    padding: 16px max(var(--nabip-gutter), calc((100vw - 900px) / 2))
      clamp(56px, 7vw, 88px);
    color: var(--nabip-text);
    font-size: 16px;
    line-height: 1.85;
  }

  :scope > .puck-text:nth-child(4) p,
  :scope > .puck-text:nth-child(6) p,
  :scope > .puck-text:nth-child(4) ul,
  :scope > .puck-text:nth-child(6) ul {
    max-width: 900px;
    margin-inline: auto;
  }

  :scope > h2:nth-child(5),
  :scope > .puck-text:nth-child(6) {
    width: 100vw !important;
    max-width: none !important;
    margin-inline: calc(50% - 50vw);
    box-sizing: border-box;
  }

  :scope > h2:nth-child(5),
  :scope > .puck-text:nth-child(6),
  :scope > h2:nth-child(7),
  :scope > .puck-grid--partners:nth-child(8) {
    background: var(--nabip-surface-blue);
  }

  :scope > h2:nth-child(5) {
    color: var(--nabip-navy);
    border-top: 1px solid var(--nabip-border);
  }

  :scope > h2:nth-child(7) {
    border-top: 1px solid var(--nabip-border);
    background: var(--nabip-white);
    color: var(--nabip-navy);
  }

  :scope > .puck-grid--partners:nth-child(8) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: start;
    gap: clamp(14px, 2vw, 22px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(60px, 8vw, 96px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8) .puck-grid-column {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
    align-items: stretch;
  }

  :scope > .puck-grid--partners:nth-child(8) .puck-card--partner {
    display: flex;
    width: 100%;
    min-height: 230px;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    text-decoration: none;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    > div:first-child {
    display: flex;
    height: 132px !important;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    > div:first-child
    img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    > div:last-child {
    flex: 1 1 auto;
    padding: 18px 18px 20px;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: 16px;
    line-height: 1.3;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    .puck-card-description {
    margin: 8px 0 0;
    color: var(--nabip-muted);
    font-size: 12px;
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    :scope {
      grid-template-columns: 1fr;
    }

    :scope > .puck-image:nth-child(3),
    :scope > .puck-text:nth-child(4) {
      grid-column: 1;
    }

    :scope > .puck-image:nth-child(3) {
      padding: 16px var(--nabip-gutter) 24px;
    }

    :scope > .puck-text:nth-child(4) {
      padding: 16px var(--nabip-gutter) clamp(56px, 7vw, 88px);
    }
  }
}

@media (max-width: 980px) {
  @scope (#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    :scope > .puck-grid--partners:nth-child(8) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-image:nth-child(3) {
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-image:nth-child(3) .puck-image-viewer-trigger {
      min-height: 260px;
    }

    :scope > .puck-image:nth-child(3) img {
      height: 260px !important;
    }

    :scope > .puck-grid--partners:nth-child(8) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    .puck-card--partner,
    .puck-image-viewer-trigger {
      transition: none;
    }
  }
}

/*
 * Leading Producers Round Table interior page
 * The full direct-child sequence isolates the program hierarchy, CTA,
 * qualifier list, and native partner directory from other interiors.
 */
main:has(#puck-content > .puck-grid--qualifier-discounts:nth-child(5)):has(
    #puck-content > .puck-grid--partners:nth-child(15)
  ) {
  padding-bottom: 0 !important;
}

main:has(#puck-content > .puck-grid--qualifier-discounts:nth-child(5)):has(
    #puck-content > .puck-grid--partners:nth-child(15)
  )
  + .site-footer {
  margin-top: 0 !important;
}

@scope (#puck-content:has(> .puck-grid--qualifier-discounts:nth-child(5)):has(> .puck-cta:nth-child(6)):has(> .puck-button-container:nth-child(11)):has(> .puck-grid--partners:nth-child(15))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > h2:nth-child(2),
  :scope > .puck-text:nth-child(3),
  :scope > h2:nth-child(4),
  :scope > .puck-grid--qualifier-discounts:nth-child(5),
  :scope > .puck-cta:nth-child(6),
  :scope > h2:nth-child(7),
  :scope > .puck-text:nth-child(8),
  :scope > h2:nth-child(9),
  :scope > .puck-text:nth-child(10),
  :scope > .puck-button-container:nth-child(11),
  :scope > h2:nth-child(12),
  :scope > .puck-text:nth-child(13),
  :scope > h2:nth-child(14),
  :scope > .puck-grid--partners:nth-child(15) {
    box-sizing: border-box;
  }

  :scope > h2:nth-child(2),
  :scope > h2:nth-child(4),
  :scope > h2:nth-child(7),
  :scope > h2:nth-child(9),
  :scope > h2:nth-child(12),
  :scope > h2:nth-child(14) {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: clamp(48px, 6vw, 76px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      20px;
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
  }

  :scope > h2:nth-child(2),
  :scope > .puck-text:nth-child(3),
  :scope > h2:nth-child(7),
  :scope > .puck-text:nth-child(8),
  :scope > h2:nth-child(12),
  :scope > .puck-text:nth-child(13) {
    background: var(--nabip-white);
  }

  :scope > .puck-text:nth-child(3),
  :scope > .puck-text:nth-child(8),
  :scope > .puck-text:nth-child(10),
  :scope > .puck-text:nth-child(13) {
    width: 100%;
    max-width: none;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - 900px) / 2))
      clamp(56px, 7vw, 88px);
    color: var(--nabip-text);
    font-size: 16px;
    line-height: 1.85;
  }

  :scope > .puck-text:nth-child(3) p,
  :scope > .puck-text:nth-child(8) p,
  :scope > .puck-text:nth-child(10) p,
  :scope > .puck-text:nth-child(13) p,
  :scope > .puck-text:nth-child(3) ul,
  :scope > .puck-text:nth-child(8) ul,
  :scope > .puck-text:nth-child(10) ul,
  :scope > .puck-text:nth-child(13) ul {
    max-width: 900px;
    margin-inline: auto;
  }

  :scope > h2:nth-child(4),
  :scope > .puck-grid--qualifier-discounts:nth-child(5),
  :scope > .puck-cta:nth-child(6),
  :scope > h2:nth-child(9),
  :scope > .puck-text:nth-child(10),
  :scope > .puck-button-container:nth-child(11),
  :scope > h2:nth-child(14),
  :scope > .puck-grid--partners:nth-child(15) {
    background: var(--nabip-surface-blue);
    box-sizing: border-box;
  }

  :scope > h2:nth-child(4),
  :scope > h2:nth-child(9),
  :scope > h2:nth-child(14) {
    border-top: 1px solid var(--nabip-border);
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch;
    gap: clamp(20px, 3vw, 36px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(56px, 7vw, 88px);
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5)
    .puck-grid-column {
    display: flex;
    min-width: 0;
    align-items: stretch;
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5)
    .puck-card--discount {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 240px;
    flex-direction: column;
    padding: 30px 28px 34px !important;
    border: 1px solid var(--nabip-border);
    border-top: 4px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    text-align: left !important;
    box-sizing: border-box;
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5)
    .puck-grid-column:nth-child(2)
    .puck-card--discount {
    border-top-color: var(--nabip-blue);
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5)
    .puck-card--discount
    .puck-card-eyebrow {
    margin: 0 0 14px;
    color: var(--nabip-teal-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.35;
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5)
    .puck-card--discount
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: clamp(26px, 3vw, 36px);
    line-height: 1.1;
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5)
    .puck-card--discount
    .puck-card-description {
    margin: 16px 0 0;
    color: var(--nabip-muted);
    font-size: 14px;
    line-height: 1.72;
  }

  :scope > .puck-cta--application:nth-child(6) {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: clamp(42px, 6vw, 68px)
      max(var(--nabip-gutter), calc((100vw - 900px) / 2));
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 0;
    background: var(--nabip-navy);
    color: var(--nabip-white);
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-cta--application:nth-child(6) .puck-cta-title {
    color: var(--nabip-white);
  }

  :scope > .puck-cta--application:nth-child(6) .puck-cta-description {
    max-width: 640px;
    margin-inline: auto;
    color: rgba(255, 255, 255, 0.9);
  }

  :scope > .puck-cta--application:nth-child(6)
    a[href="https://nabip.org/membership-resources/lprt-leading-producers-round-table"] {
    min-height: 48px;
    margin-top: 22px;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(11) {
    display: flex;
    width: 100%;
    min-height: 112px;
    align-items: flex-start;
    justify-content: center;
    padding: 8px var(--nabip-gutter) 36px;
  }

  :scope > .puck-button-container:nth-child(11)
    .puck-button--national-link {
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(11)
    .puck-button--national-link::after {
    margin-left: 8px;
    content: "↗";
    font-size: 16px;
    line-height: 1;
  }

  :scope > .puck-grid--partners:nth-child(15) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: start;
    gap: clamp(14px, 2vw, 22px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(60px, 8vw, 96px);
  }

  :scope > .puck-grid--partners:nth-child(15) .puck-grid-column {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
    align-items: stretch;
  }

  :scope > .puck-grid--partners:nth-child(15) .puck-card--partner {
    display: flex;
    width: 100%;
    min-height: 230px;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    text-decoration: none;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner
    > div:first-child {
    display: flex;
    height: 132px !important;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner
    > div:first-child
    img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner
    > div:last-child {
    flex: 1 1 auto;
    padding: 18px 18px 20px;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: 16px;
    line-height: 1.3;
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner
    .puck-card-description {
    margin: 8px 0 0;
    color: var(--nabip-muted);
    font-size: 12px;
  }
}

@media (max-width: 980px) {
  @scope (#puck-content:has(> .puck-grid--qualifier-discounts:nth-child(5)):has(> .puck-cta:nth-child(6)):has(> .puck-button-container:nth-child(11)):has(> .puck-grid--partners:nth-child(15))) {
    :scope > .puck-grid--partners:nth-child(15) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--qualifier-discounts:nth-child(5)):has(> .puck-cta:nth-child(6)):has(> .puck-button-container:nth-child(11)):has(> .puck-grid--partners:nth-child(15))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-grid--qualifier-discounts:nth-child(5) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--qualifier-discounts:nth-child(5)
      .puck-card--discount {
      min-height: 324px;
    }

    :scope > .puck-grid--partners:nth-child(15) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--qualifier-discounts:nth-child(5)):has(> .puck-cta:nth-child(6)):has(> .puck-button-container:nth-child(11)):has(> .puck-grid--partners:nth-child(15))) {
    .puck-card--discount,
    .puck-card--partner,
    .puck-cta a,
    .puck-button {
      transition: none;
    }
  }
}

/*
 * Member of the Year interior page
 * Native invitation, deadline, file, contact, and partner children keep
 * this nomination page isolated from the other announcement interiors.
 */
@scope (#puck-content:has(> .puck-text:nth-child(2)):has(> .puck-text:nth-child(3)):has(> .puck-button-container:nth-child(7)):has(> .puck-grid--partners:nth-child(9))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > .puck-text:nth-child(2),
  :scope > .puck-text:nth-child(3) {
    width: 100%;
    max-width: none;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - 900px) / 2));
    background: var(--nabip-white);
    box-sizing: border-box;
    color: var(--nabip-text);
    font-size: 16px;
    line-height: 1.8;
  }

  :scope > .puck-text:nth-child(2) {
    padding-top: clamp(38px, 5vw, 60px);
    padding-bottom: 18px;
    font-size: clamp(17px, 1.5vw, 20px);
    font-weight: 600;
  }

  :scope > .puck-text:nth-child(3) {
    padding-top: 18px;
    padding-bottom: clamp(38px, 5vw, 60px);
    border-top: 1px solid rgba(37, 71, 124, 0.16);
    text-align: center;
  }

  :scope > div:nth-child(4):has(a[href$=".pdf"]) {
    width: 100%;
    max-width: none;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - 820px) / 2))
      clamp(56px, 7vw, 88px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > div:nth-child(4):has(a[href$=".pdf"])
    > a {
    display: block !important;
    min-height: 112px;
    padding: 18px 20px;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    color: var(--nabip-navy);
    text-align: left;
    text-decoration: none;
    box-sizing: border-box;
  }

  :scope > div:nth-child(4):has(a[href$=".pdf"])
    > a:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
  }

  :scope > div:nth-child(4):has(a[href$=".pdf"])
    > a:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > div:nth-child(4):has(a[href$=".pdf"])
    a[href$=".pdf"]
    div[style*="white-space"] {
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere;
  }

  :scope > h2:nth-child(5),
  :scope > .puck-text:nth-child(6),
  :scope > .puck-button-container:nth-child(7) {
    width: 100%;
    max-width: none;
    background: var(--nabip-navy);
    box-sizing: border-box;
  }

  :scope > h2:nth-child(5) {
    margin: 0;
    padding: clamp(48px, 6vw, 72px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      18px;
    color: var(--nabip-white);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
  }

  :scope > .puck-text:nth-child(6) {
    padding: 10px
      max(var(--nabip-gutter), calc((100vw - 760px) / 2))
      24px;
    color: rgba(255, 255, 255, 0.92);
    font-size: 16px;
    line-height: 1.8;
    text-align: center;
  }

  :scope > .puck-button-container:nth-child(7) {
    display: flex;
    min-height: 132px;
    align-items: flex-start;
    justify-content: center;
    padding: 8px var(--nabip-gutter) 44px;
  }

  :scope > .puck-button-container:nth-child(7)
    .puck-button--moty-contact {
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(7)
    a[href="mailto:lisa@benefitsok.com"] {
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(7)
    .puck-button--moty-contact::after {
    margin-left: 8px;
    content: "↗";
    font-size: 16px;
    line-height: 1;
  }

  :scope > h2:nth-child(8) {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: clamp(48px, 6vw, 72px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      20px;
    border-top: 1px solid var(--nabip-border);
    background: var(--nabip-white);
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(9) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: start;
    gap: clamp(14px, 2vw, 22px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(60px, 8vw, 96px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(9) .puck-grid-column {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
    align-items: stretch;
  }

  :scope > .puck-grid--partners:nth-child(9) .puck-card--partner {
    display: flex;
    width: 100%;
    min-height: 230px;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    text-decoration: none;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner
    > div:first-child {
    display: flex;
    height: 132px !important;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner
    > div:first-child
    img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner
    > div:last-child {
    flex: 1 1 auto;
    padding: 18px 18px 20px;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: 16px;
    line-height: 1.3;
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner
    .puck-card-description {
    margin: 8px 0 0;
    color: var(--nabip-muted);
    font-size: 12px;
  }
}

@media (max-width: 980px) {
  @scope (#puck-content:has(> .puck-text:nth-child(2)):has(> .puck-text:nth-child(3)):has(> .puck-button-container:nth-child(7)):has(> .puck-grid--partners:nth-child(9))) {
    :scope > div:nth-child(4):has(a[href$=".pdf"])
      > a
      > div:first-child {
      display: grid !important;
      grid-template-columns: 48px minmax(0, 1fr);
      align-items: start !important;
      gap: 12px 16px !important;
    }

    :scope > div:nth-child(4):has(a[href$=".pdf"])
      > a
      > div:first-child
      > div:first-child {
      grid-column: 1;
      grid-row: 1;
    }

    :scope > div:nth-child(4):has(a[href$=".pdf"])
      > a
      > div:first-child
      > div:nth-child(2) {
      grid-column: 2;
      grid-row: 1;
      min-width: 0;
    }

    :scope > div:nth-child(4):has(a[href$=".pdf"])
      > a
      > div:first-child
      > div:last-child {
      grid-column: 2;
      grid-row: 2;
      justify-content: flex-start !important;
    }

    :scope > .puck-grid--partners:nth-child(9) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-text:nth-child(2)):has(> .puck-text:nth-child(3)):has(> .puck-button-container:nth-child(7)):has(> .puck-grid--partners:nth-child(9))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-grid--partners:nth-child(9) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-text:nth-child(2)):has(> .puck-text:nth-child(3)):has(> .puck-button-container:nth-child(7)):has(> .puck-grid--partners:nth-child(9))) {
    .puck-card--partner,
    a[href$=".pdf"],
    .puck-button {
      transition: none;
    }
  }
}

/*
 * Award and recognition page frame alignment
 * Keep every non-hero section on these three pages at Home's selected
 * quick-links frame while retaining narrower reading measures inside.
 */
@scope (#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
  :scope
    > h2:nth-child(2),
  :scope
    > .puck-image:nth-child(3),
  :scope
    > .puck-text:nth-child(4),
  :scope
    > h2:nth-child(5),
  :scope
    > .puck-text:nth-child(6),
  :scope
    > h2:nth-child(7),
  :scope
    > .puck-grid--partners:nth-child(8) {
    width: min(100%, var(--nabip-content)) !important;
    max-width: var(--nabip-content) !important;
    margin-inline: auto !important;
    box-sizing: border-box;
  }

  :scope
    > h2:nth-child(2),
  :scope
    > h2:nth-child(5),
  :scope
    > h2:nth-child(7) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > .puck-image:nth-child(3) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > .puck-image:nth-child(3) img {
    max-width: 100% !important;
  }

  :scope
    > .puck-text:nth-child(4),
  :scope
    > .puck-text:nth-child(6) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > .puck-text:nth-child(4) p,
  :scope
    > .puck-text:nth-child(4) ul,
  :scope
    > .puck-text:nth-child(6) p,
  :scope
    > .puck-text:nth-child(6) ul {
    width: min(100%, 900px);
    max-width: 900px;
    margin-inline: auto;
  }

  :scope
    > .puck-grid--partners:nth-child(8) {
    padding-inline: var(--nabip-gutter) !important;
  }
}

@scope (#puck-content:has(> .puck-grid--qualifier-discounts:nth-child(5)):has(> .puck-cta:nth-child(6)):has(> .puck-button-container:nth-child(11)):has(> .puck-grid--partners:nth-child(15))) {
  :scope
    > h2:nth-child(2),
  :scope
    > .puck-text:nth-child(3),
  :scope
    > h2:nth-child(4),
  :scope
    > .puck-grid--qualifier-discounts:nth-child(5),
  :scope
    > .puck-cta:nth-child(6),
  :scope
    > h2:nth-child(7),
  :scope
    > .puck-text:nth-child(8),
  :scope
    > h2:nth-child(9),
  :scope
    > .puck-text:nth-child(10),
  :scope
    > .puck-button-container:nth-child(11),
  :scope
    > h2:nth-child(12),
  :scope
    > .puck-text:nth-child(13),
  :scope
    > h2:nth-child(14),
  :scope
    > .puck-grid--partners:nth-child(15) {
    width: min(100%, var(--nabip-content)) !important;
    max-width: var(--nabip-content) !important;
    margin-inline: auto !important;
    box-sizing: border-box;
  }

  :scope
    > h2:nth-child(2),
  :scope
    > h2:nth-child(4),
  :scope
    > h2:nth-child(7),
  :scope
    > h2:nth-child(9),
  :scope
    > h2:nth-child(12),
  :scope
    > h2:nth-child(14),
  :scope
    > .puck-cta:nth-child(6),
  :scope
    > .puck-button-container:nth-child(11) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > .puck-text:nth-child(3),
  :scope
    > .puck-text:nth-child(8),
  :scope
    > .puck-text:nth-child(10),
  :scope
    > .puck-text:nth-child(13) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > .puck-grid--qualifier-discounts:nth-child(5),
  :scope
    > .puck-grid--partners:nth-child(15) {
    padding-inline: var(--nabip-gutter) !important;
  }

  :scope > h2:nth-child(4),
  :scope > .puck-grid--qualifier-discounts:nth-child(5),
  :scope > .puck-cta:nth-child(6),
  :scope > h2:nth-child(9),
  :scope > .puck-text:nth-child(10),
  :scope > .puck-button-container:nth-child(11),
  :scope > h2:nth-child(14),
  :scope > .puck-grid--partners:nth-child(15) {
    position: relative;
    background: transparent;
    isolation: isolate;
  }

  :scope > h2:nth-child(4)::before,
  :scope > .puck-grid--qualifier-discounts:nth-child(5)::before,
  :scope > h2:nth-child(9)::before,
  :scope > .puck-text:nth-child(10)::before,
  :scope > .puck-button-container:nth-child(11)::before,
  :scope > h2:nth-child(14)::before,
  :scope > .puck-grid--partners:nth-child(15)::before {
    position: absolute;
    z-index: -1;
    inset: 0 calc(50% - 50vw);
    background: var(--nabip-surface-blue);
    content: "";
  }

  :scope > .puck-cta:nth-child(6)::before {
    position: absolute;
    z-index: -1;
    inset: 0 calc(50% - 50vw);
    background: var(--nabip-navy);
    content: "";
  }

  :scope
    > .puck-text:nth-child(3) p,
  :scope
    > .puck-text:nth-child(8) p,
  :scope
    > .puck-text:nth-child(10) p,
  :scope
    > .puck-text:nth-child(13) p,
  :scope
    > .puck-text:nth-child(13) ul {
    width: min(100%, 900px);
    max-width: 900px;
    margin-inline: auto;
  }
}

@scope (#puck-content:has(> .puck-text:nth-child(2)):has(> .puck-text:nth-child(3)):has(> .puck-button-container:nth-child(7)):has(> .puck-grid--partners:nth-child(9))) {
  :scope
    > .puck-text:nth-child(2),
  :scope
    > .puck-text:nth-child(3),
  :scope
    > div:nth-child(4):has(a[href$=".pdf"]),
  :scope
    > h2:nth-child(5),
  :scope
    > .puck-text:nth-child(6),
  :scope
    > .puck-button-container:nth-child(7),
  :scope
    > h2:nth-child(8),
  :scope
    > .puck-grid--partners:nth-child(9) {
    width: min(100%, var(--nabip-content)) !important;
    max-width: var(--nabip-content) !important;
    margin-inline: auto !important;
    box-sizing: border-box;
  }

  :scope
    > .puck-text:nth-child(2),
  :scope
    > .puck-text:nth-child(3),
  :scope
    > .puck-text:nth-child(6) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > div:nth-child(4):has(a[href$=".pdf"]) {
    padding-inline: var(--nabip-gutter) !important;
  }

  :scope
    > h2:nth-child(5),
  :scope
    > h2:nth-child(8),
  :scope
    > .puck-button-container:nth-child(7) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > .puck-text:nth-child(2) p,
  :scope
    > .puck-text:nth-child(3) p,
  :scope
    > .puck-text:nth-child(6) p {
    width: min(100%, 900px);
    max-width: 900px;
    margin-inline: auto;
  }

  :scope
    > div:nth-child(4):has(a[href$=".pdf"])
    img {
    max-width: 100%;
  }

  :scope
    > .puck-grid--partners:nth-child(9) {
    padding-inline: var(--nabip-gutter) !important;
  }
}

#puck-content:has(> .puck-text:nth-child(2)):has(
    > .puck-text:nth-child(3)
  ):has(> .puck-button-container:nth-child(7)):has(
    > .puck-grid--partners:nth-child(9)
  )
  > :is(
    h2:nth-child(5),
    .puck-text:nth-child(6),
    .puck-button-container:nth-child(7)
  ) {
  width: 100vw !important;
  max-width: none !important;
  margin-inline: calc(50% - 50vw) !important;
  box-sizing: border-box;
}

/*
 * Shared section frame alignment
 * Events, Calendar, and Public Announcements use the Home quick-links frame
 * as their outer-width reference. Text remains readable inside that frame.
 */
#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(3),
#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(6),
#puck-content:has(.recur-event-calendar)
  > .recur-event-calendar,
#puck-content:has(.puck-grid--announcements)
  > .puck-text:nth-child(2),
#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  box-sizing: border-box;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(3),
#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(6) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(.puck-grid--announcements)
  > .puck-text:nth-child(2) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 756px) / 2)
  );
}

@media (max-width: 700px) {
  #puck-content:has(> .recur-event-list:nth-child(5))
    > .puck-text:nth-child(3) {
    padding-inline: 24px;
  }
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-list,
#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
}

/*
 * Shared section frame alignment — resource pages
 * Affiliations, Member Resources, and Newsletter use Home's quick-links
 * section as their outer-width reference. Existing card grids, file links,
 * and responsive column rules remain page-scoped above.
 */
#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features,
#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources,
#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  padding-inline: var(--nabip-gutter);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-text:nth-child(2) {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 756px) / 2)
  );
  box-sizing: border-box;
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-text:nth-child(2) {
    padding-inline: var(--nabip-gutter);
  }
}

/*
 * Shared section frame alignment — membership pages
 * Keep each page's native cards, files, CTAs, buttons, partner links, and
 * intentional readable text measures while aligning their outer components
 * with Home's quick-links frame.
 */
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-text:nth-child(3),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--mission-vision,
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(6),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--ethics:nth-child(7),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(8),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-text:nth-child(9),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--documents,
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(11),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--partners {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(6),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(8),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(11) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--mission-vision,
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--documents,
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--partners {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-text:nth-child(9) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-text:nth-child(3) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--ethics:nth-child(7) {
  width: min(
    calc(100% - (2 * var(--nabip-gutter))),
    calc(var(--nabip-content) - (2 * var(--nabip-gutter)))
  ) !important;
}

#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(6),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(8),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(11),
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > h2,
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(4),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(7) {
  width: min(100%, var(--nabip-content)) !important;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-grid--join-actions,
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-button-container,
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-grid--partners,
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > h2,
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-grid--join-actions,
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-button-container,
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-grid--partners {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > h2 {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 1056px) / 2)
  );
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(4),
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(6) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 812px) / 2)
  );
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(8) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(2),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-grid--scholarship-options:nth-child(3),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(4),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(5),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-button-container:nth-child(6),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(7),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-grid--partners:nth-child(8) {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-grid--scholarship-options:nth-child(3),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(4),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-button-container:nth-child(6),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(7),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-grid--partners:nth-child(8) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(2) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(5) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 696px) / 2)
  );
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(3) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: var(--nabip-content) !important;
  padding-inline: clamp(16px, 2vw, 28px) !important;
}

@media (max-width: 700px) {
  #puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
    > .puck-text:nth-child(2),
  #puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
    > .puck-text:nth-child(5),
  #puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
    > .puck-text:nth-child(7),
  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(4),
  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(6),
  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(8),
  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(8) {
    padding-inline: var(--nabip-gutter);
  }

  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(4),
  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(6) {
    margin-inline: 0;
  }

  #puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
    > .puck-text:nth-child(2),
  #puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
    > .puck-text:nth-child(5) {
    padding-inline: var(--nabip-gutter);
  }
}

/*
 * Final program-page frame pass
 * These exact child selectors intentionally sit last: several native page
 * rules use nth-child specificity, and Heading Pucks emit inline widths.
 */
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > :is(
    .puck-text:nth-child(2),
    h2:nth-child(3),
    .puck-grid--people,
    h2:nth-child(5),
    .puck-grid--committee-people
  ),
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > :is(
    .puck-text:nth-child(3),
    h2,
    .puck-grid--monthly-education,
    .puck-image,
    .puck-text:nth-child(7),
    .puck-text:nth-child(8),
    .puck-button-container,
    .puck-grid--partners
  ),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > :is(
    .puck-text:nth-child(2),
    h2:nth-child(3),
    .puck-grid--resource-cards:nth-child(4),
    h2:nth-child(5),
    .puck-grid--resource-cards:nth-child(6),
    h2:nth-child(7),
    .puck-grid--resource-cards:nth-child(8)
  ) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: none !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > :is(
    h2:nth-child(3),
    .puck-grid--people,
    h2:nth-child(5),
    .puck-grid--committee-people
  ),
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > :is(
    h2,
    .puck-grid--monthly-education,
    .puck-image,
    .puck-button-container,
    .puck-grid--partners
  ),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > :is(
    h2:nth-child(3),
    .puck-grid--resource-cards:nth-child(4),
    h2:nth-child(5),
    .puck-grid--resource-cards:nth-child(6),
    h2:nth-child(7),
    .puck-grid--resource-cards:nth-child(8)
  ) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-text:nth-child(2) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 856px) / 2)
  );
}

#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text:nth-child(3) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text:nth-child(7) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text:nth-child(8) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 696px) / 2)
  );
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-text:nth-child(2) {
  padding-inline: clamp(16px, 4vw, 52px);
}


            /* Base styles */
            * {
              margin: 0;
              padding: 0;
              box-sizing: border-box;
            }
            
            body {
              font-family: Montserrat;
              line-height: 1.6;
              color: var(--color-text, #333);
              background-color: var(--color-background, #ffffff);
            }

            /* Global image safety — prevents oversized AMS/Quill images from breaking layouts */
            img {
              max-width: 100%;
              height: auto;
            }

            /* Public search: uses theme tokens and stays compact in either
               chrome region while allowing the full results page to breathe. */
            .site-search { position:relative; display:flex; align-items:center; gap:.4rem; min-width:0; }
            .site-search-input, .public-search-form input { min-width:0; width:100%; padding:.5rem .65rem; border:1px solid var(--color-border,#d1d5db); border-radius:.375rem; color:var(--color-text,#111827); background:var(--color-background,#fff); font:inherit; }
            .site-search-input[data-input-background="transparent"] { background:transparent; }
            .site-search-button, .public-search-form button { border:0; border-radius:.375rem; padding:.5rem .7rem; background:var(--color-primary,#2563eb); color:var(--color-on-primary,#fff); font:inherit; cursor:pointer; }
            .site-search-icon-button { min-width:2.4rem; min-height:2.4rem; padding:.35rem; font-size:1.35rem; line-height:1; }
            .site-search-suggestions { position:absolute; z-index:100; top:calc(100% + .3rem); left:0; right:0; max-height:18rem; overflow:auto; margin:0; padding:.25rem; list-style:none; border:1px solid var(--color-border,#d1d5db); border-radius:.375rem; background:var(--color-background,#fff); box-shadow:0 8px 20px rgba(0,0,0,.15); }
            .site-search-suggestion { padding:.55rem .65rem; cursor:pointer; color:var(--color-text,#111827); border-radius:.25rem; }
            .site-search-suggestion[aria-selected="true"], .site-search-suggestion:hover { background:var(--color-surface,#f3f4f6); }
            .public-search-page { max-width:900px; margin:0 auto; padding:3rem 1.25rem; color:var(--color-text,#111827); }
            .public-search-page h1 { margin:0 0 1rem; font-size:2rem; }
            .public-search-form { display:flex; gap:.6rem; align-items:end; flex-wrap:wrap; margin-bottom:1.5rem; }
            .public-search-form label { width:100%; font-weight:600; }
            .public-search-form input { flex:1 1 18rem; }
            .public-search-results { display:grid; gap:1rem; padding:0; list-style:none; }
            .public-search-result { padding:1rem; border:1px solid var(--color-border,#e5e7eb); border-radius:.5rem; }
            .public-search-result h2 { margin:.35rem 0; font-size:1.2rem; }.public-search-result p { margin:.35rem 0 .65rem; color:var(--color-textSecondary,#4b5563); }
            .public-search-result a, .public-search-pages a { color:var(--color-primary,#2563eb); }.public-search-type,.public-search-strength { font-size:.8rem; }.public-search-strength { float:right; color:var(--color-textSecondary,#4b5563); }
            .public-search-pages { display:flex; justify-content:center; gap:1rem; margin-top:1.5rem; }
            @media (max-width: 640px) { .site-search { width:100%; }.public-search-form { align-items:stretch; }.public-search-form button { width:100%; } }
            
            /* Quill alignment styles for rich text content */
            .ql-align-center {
              text-align: center;
            }
            .ql-align-right {
              text-align: right;
            }
            .ql-align-justify {
              text-align: justify;
            }
            .ql-indent-1 { padding-left: 3em; }
            .ql-indent-2 { padding-left: 6em; }
            .ql-indent-3 { padding-left: 9em; }
            .ql-indent-4 { padding-left: 12em; }
            .ql-indent-5 { padding-left: 15em; }
            
            /* Quill font families - matches Quill whitelist */
            .ql-font-arial { font-family: Arial, sans-serif; }
            .ql-font-helvetica { font-family: Helvetica, sans-serif; }
            .ql-font-georgia { font-family: Georgia, serif; }
            .ql-font-times-new-roman { font-family: 'Times New Roman', serif; }
            .ql-font-courier-new { font-family: 'Courier New', monospace; }
            .ql-font-verdana { font-family: Verdana, sans-serif; }
            .ql-font-comic-sans { font-family: 'Comic Sans MS', cursive; }
            .ql-font-lucida { font-family: 'Lucida Console', monospace; }
            .ql-font-inter { font-family: 'Inter', sans-serif; }
            .ql-font-poppins { font-family: 'Poppins', sans-serif; }
            .ql-font-permanent-marker { font-family: 'Permanent Marker', cursive; }
            .ql-font-theme-body { font-family: var(--font-primary, system-ui, sans-serif); }
            .ql-font-theme-header { font-family: var(--font-secondary, var(--font-primary, system-ui)); }
            .ql-font-serif { font-family: Georgia, 'Times New Roman', serif; }
            .ql-font-monospace { font-family: 'Courier New', Consolas, monospace; }
            
            /* Quill code blocks */
            pre.ql-syntax,
            .rich-text-content pre,
            .puck-text pre {
              background-color: var(--color-surface, #f5f5f5);
              color: var(--color-text, #333);
              padding: 12px 16px;
              border-radius: 6px;
              overflow-x: auto;
              font-family: 'Courier New', Consolas, monospace;
              font-size: 0.9em;
              line-height: 1.5;
              margin: 16px 0;
              white-space: pre-wrap;
              word-wrap: break-word;
            }
            
            /* Quill inline code */
            .rich-text-content code,
            .puck-text code {
              background-color: var(--color-surface, #f0f0f0);
              padding: 2px 6px;
              border-radius: 3px;
              font-family: 'Courier New', Consolas, monospace;
              font-size: 0.9em;
            }
            
            /* Quill blockquote */
            .rich-text-content blockquote,
            .puck-text blockquote,
            blockquote.ql-blockquote {
              border-left: 4px solid var(--color-primary, #3b82f6);
              padding-left: 16px;
              margin: 16px 0;
              font-style: italic;
              color: var(--color-text-secondary, #666);
            }
            
            /* Quill paragraph spacing */
            p {
              margin-bottom: 15px;
            }
            p:last-child {
              margin-bottom: 0;
            }
            
            /* Rich text content - Quill formatting styles */
            .rich-text-content ul,
            .puck-text ul {
              margin: 15px 0;
              padding-left: 1.5em;
              list-style-type: disc;
              list-style-position: outside;
            }
            
            .rich-text-content ol,
            .puck-text ol {
              margin: 15px 0;
              padding-left: 1.5em;
              list-style-type: decimal;
              list-style-position: outside;
            }
            
            .rich-text-content li,
            .puck-text li {
              margin-bottom: 8px;
              display: list-item;
              padding-left: 0.5em;
            }
            
            /* Nested lists */
            .rich-text-content ul ul,
            .puck-text ul ul {
              list-style-type: circle;
              margin-top: 8px;
              margin-bottom: 8px;
            }
            
            .rich-text-content ul ul ul,
            .puck-text ul ul ul {
              list-style-type: square;
            }
            
            .rich-text-content ol ol,
            .puck-text ol ol {
              list-style-type: lower-alpha;
              margin-top: 8px;
              margin-bottom: 8px;
            }
            
            .rich-text-content ol ol ol,
            .puck-text ol ol ol {
              list-style-type: lower-roman;
            }
            
            /* Responsive Grid - matches Puck editor behavior */
            /* Uses CSS variable for column count set via inline style */
            .puck-grid {
              display: grid;
              gap: 1rem;
            }
            .puck-grid.responsive-grid {
              grid-template-columns: 1fr;  /* Mobile: single column */
            }
            @media (min-width: 768px) {
              .puck-grid.responsive-grid {
                grid-template-columns: var(--grid-template, repeat(var(--grid-columns, 2), 1fr));
              }
            }
            .puck-grid-column {
              /* Structural child wrapper: content components own appearance. */
            }
            
            /* Header Navigation */
            .site-header {
              position: sticky;
              top: 0; z-index: 1000;
              background: var(--color-surface, #f5f5f5);
              
              padding: 1rem;
              border-bottom: 1px solid var(--color-border, #ddd);
              
              
            }
            
            /* Background image layer — sits above bg color, below all content (same as React approach) */
            
            
            .site-header nav > ul {
              list-style: none;
              display: flex;
              flex-direction: row;
              gap: 2rem;
              max-width: var(--header-max-width, var(--content-max-width, 1200px));
              margin: 0 auto;
              align-items: center;
              justify-content: center;
            }
            
            .site-header nav a,
            .site-header nav a:link,
            .site-header nav a:visited,
            .site-header nav a:hover,
            .site-header nav a:active,
            .site-header .nav-link,
            .site-header .nav-link-dropdown,
            .site-header .nav-menu a {
              color: var(--color-text, #333);
              text-decoration: none;
            }
            
            .site-header nav a:hover,
            .site-header .nav-link:hover,
            .site-header .nav-link-dropdown:hover {
              opacity: 0.8;
              
              text-decoration: none;
            }
            
            /* Navigation Style variants */
            .site-header .nav-link,
                  .site-header .nav-link-dropdown {
                    padding: 0.5rem 1rem;
                    border-radius: 0.375rem;
                    transition: background-color 0.2s ease;
                  }
                  .site-header .nav-link:hover,
                  .site-header .nav-link-dropdown:hover {
                    background-color: rgba(0,0,0,0.05);
                    opacity: 1;
                  }
            
            /* Footer */
            .site-footer {
              background: var(--color-surface, #f5f5f5);
              color: var(--color-text, #333);
              padding: 2rem 1rem 1rem;
              margin-top: 4rem;
              border-top: 1px solid var(--color-border, #ddd);
              
            }
            
            .site-footer a {
              color: var(--color-primary, #1976d2);
              text-decoration: none;
            }
            
            .site-footer a:hover {
              opacity: 0.8;
            }
            
            /* Ensure all footer navigation links have no underline */
            .site-footer ul a,
            .site-footer nav a,
            .site-footer li a {
              text-decoration: none;
            }
            
            /* Main content */
            main {
              max-width: var(--content-max-width, 1200px);
              margin: 0 auto;
              padding: 2rem;
            }

            /* A leading hero sits flush beneath the site header by cancelling main's
               2rem top padding. This applies in every content-width mode (not just
               full width). Only the FIRST child matches, so a hero placed lower on the
               page is never pulled upward. */
            #puck-content > .puck-hero:first-child {
              margin-top: -2rem;
            }
            
            h1, h2, h3, h4, h5, h6 {
              color: var(--color-heading, var(--color-text, #333));
              /* Parity with the editor/preview: .puck-root h1–h6 use the theme's
                 header font (--font-secondary). Without this, published headings
                 silently fall back to the body font. */
              font-family: var(--font-secondary, var(--font-primary, system-ui));
            }

            h1 {
              margin-bottom: 1rem;
            }
            
            .published-note {
              color: var(--color-textSecondary, #666);
              font-size: 0.875rem;
              margin-bottom: 2rem;
            }
            
            .content-preview {
              background: var(--color-surface, #f9f9f9);
              padding: 2rem;
              border-radius: 8px;
              border: 1px solid var(--color-border, #ddd);
            }
            
            /* @pqina/flip v1.8.4 - Vendor CSS for Flip Counter */
            .tick{box-sizing:border-box;-webkit-user-select:none;-ms-user-select:none;user-select:none;cursor:default;position:relative;z-index:1;line-height:1.4}.tick *{box-sizing:inherit}.tick [data-view]{max-width:100%}.tick span[data-view]{display:inline-block}.tick .tick-credits{position:absolute;right:0;bottom:0;opacity:.4;text-decoration:none;font-size:11px;color:inherit}.tick [data-layout~=pad]{margin:-.25em}.tick [data-layout~=pad]>*{margin:.25em}.tick [data-layout~=horizontal]{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:center;justify-content:center}.tick [data-layout~=horizontal][data-layout~=baseline]{-ms-flex-align:baseline;align-items:baseline}.tick [data-layout~=horizontal][data-layout~=center]{-ms-flex-pack:center;justify-content:center}.tick [data-layout~=horizontal][data-layout~=right]{-ms-flex-pack:end;justify-content:flex-end}.tick [data-layout~=horizontal][data-layout~=left]{-ms-flex-pack:start;justify-content:flex-start}.tick [data-layout~=horizontal][data-layout~=fill],.tick [data-layout~=horizontal][data-layout~=stretch]{-ms-flex-line-pack:stretch;align-content:stretch;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.tick [data-layout~=horizontal][data-layout~=fill]>*,.tick [data-layout~=horizontal][data-layout~=stretch]>*{-ms-flex:1 0 0px;flex:1 0 0;width:100%}.tick [data-layout~=horizontal][data-layout~=multi-line]{-ms-flex-wrap:wrap;flex-wrap:wrap}.tick [data-layout~=horizontal][data-layout~=fit]{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-line-pack:center;align-content:center;white-space:nowrap;-ms-flex-pack:start;justify-content:flex-start}.tick [data-layout~=vertical]{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center}.tick [data-layout~=vertical][data-layout~=top]{-ms-flex-pack:start;justify-content:flex-start}.tick [data-layout~=vertical][data-layout~=bottom]{-ms-flex-pack:end;justify-content:flex-end;min-height:100%}.tick [data-layout~=vertical][data-layout~=middle]{-ms-flex-pack:center;justify-content:center;min-height:100%}.tick [data-layout~=vertical][data-layout~=left]{-ms-flex-align:start;align-items:flex-start}.tick [data-layout~=vertical][data-layout~=right]{-ms-flex-align:end;align-items:flex-end}.tick [data-layout~=vertical][data-layout~=center]{text-align:center}.tick [data-layout~=vertical][data-layout~=fill],.tick [data-layout~=vertical][data-layout~=stretch]{-ms-flex-align:stretch;align-items:stretch;min-height:100%}.tick [data-layout~=vertical][data-layout~=fill]>*,.tick [data-layout~=vertical][data-layout~=stretch]>*{-ms-flex:1 0 0px;flex:1 0 0}.tick [data-layout~=vertical]>*+*{margin-top:.5em}.tick [data-layout~=overlay]{position:relative}.tick [data-layout~=overlay]>*{margin:0}.tick [data-layout~=overlay][data-layout~=center]{text-align:center}.tick [data-layout~=overlay][data-layout~=left]{text-align:left}.tick [data-layout~=overlay][data-layout~=right]{text-align:right}.tick [data-layout~=overlay]>[data-overlay=fill],.tick [data-layout~=overlay]>[data-overlay=stretch]{position:absolute;left:0;right:0;top:0;bottom:0}.tick [data-layout~=overlay]>[data-overlay=center]{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;position:absolute;left:0;right:0;top:0;bottom:0}.tick-flip{position:relative;text-align:center}.tick-flip *{border-radius:inherit;white-space:pre;letter-spacing:inherit;text-indent:inherit}.tick-flip-front{border-bottom-left-radius:0;border-bottom-right-radius:0}.tick-flip-back{border-top-left-radius:0;border-top-right-radius:0}.tick-flip-spacer{display:block;visibility:hidden}.tick-flip-shadow{position:absolute;left:1px;right:1px;top:1px;bottom:1px;color:transparent!important;background:transparent!important}.tick-flip-shadow-top{bottom:calc(50% - 1px)}.tick-flip-shadow-bottom{top:calc(50% + 1px)}.tick-flip-card-shadow{position:absolute;left:.15em;right:.15em;bottom:.125em;height:.5em;background-color:transparent;border-radius:0;opacity:0;transform-origin:0 100%;box-shadow:0 .125em .25em rgba(0,0,0,.5),0 .125em .5em rgba(0,0,0,.75);z-index:0}.tick-flip-card{position:absolute;z-index:1;left:0;top:0;width:100%;height:100%;perspective:4em}.tick-flip-panel-back,.tick-flip-panel-front{position:absolute;left:0;width:100%;height:51%;backface-visibility:hidden;transform-style:preserve-3d}.tick-flip-panel-back-text,.tick-flip-panel-front-text{position:absolute;left:-1px;top:0;right:-1px;height:100%;overflow:hidden}.tick-flip-panel-text-wrapper{position:absolute;left:0;top:0;right:0;height:100%}.tick-flip-panel-back-text .tick-flip-panel-text-wrapper{height:200%;top:-100%}.tick-flip-panel-front{transform-origin:center bottom;top:0;z-index:2;box-shadow:inset 0 1px hsla(0,0%,100%,.05)}.tick-flip-panel-back{transform-origin:center top;top:50%;z-index:1;box-shadow:inset 0 -1px rgba(0,0,0,.1)}.tick-flip-panel-back:after{z-index:1;content:"";position:absolute;left:0;top:0;width:100%;height:100%;background-image:linear-gradient(180deg,rgba(0,0,0,.3) 1px,rgba(0,0,0,.15) 0,transparent 30%)}.tick-flip-panel-back-shadow{z-index:2}.tick-flip-panel-back-highlight{z-index:3}.tick-flip-panel-back-highlight,.tick-flip-panel-back-shadow{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.tick-flip-panel-back-highlight,.tick-flip-panel-back-shadow,.tick-flip-panel-front-shadow{position:absolute;left:0;top:0;right:0;bottom:0;opacity:0}.tick-flip-panel-front-shadow{background-image:linear-gradient(0deg,rgba(0,0,0,.8),rgba(0,0,0,.3))}.tick-flip-panel-back-shadow{background-image:linear-gradient(180deg,rgba(0,0,0,.7),rgba(0,0,0,.5))}.tick-flip-panel-back-highlight{background-image:linear-gradient(180deg,hsla(0,0%,100%,.15),hsla(0,0%,100%,.3))}.tick [data-style*="shadow:inner"],.tick [data-style*="shadow:inner"] .tick-flip-card-shadow,.tick [data-style*="shadow:none"] .tick-flip-card-shadow,.tick [data-style*="shadow:none"] .tick-flip-panel-back,.tick [data-style*="shadow:none"] .tick-flip-panel-front,.tick [data-style*="shadow:none"] .tick-flip-shadow{box-shadow:none}.tick [data-style*="shadow:none"] .tick-flip-back:after,.tick [data-style*="shadow:none"] .tick-flip-panel-back-shadow,.tick [data-style*="shadow:none"] .tick-flip-panel-back-text:after,.tick [data-style*="shadow:none"] .tick-flip-panel-front-shadow{background-image:none}.tick [data-style*="rounded:none"]{border-radius:0}.tick [data-style*="rounded:panels"] .tick-flip-front,.tick [data-style*="rounded:panels"] .tick-flip-shadow-bottom{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.tick [data-style*="rounded:panels"] .tick-flip-back,.tick [data-style*="rounded:panels"] .tick-flip-panel-back:after,.tick [data-style*="rounded:panels"] .tick-flip-shadow-top{border-top-left-radius:inherit;border-top-right-radius:inherit}.tick-flip{margin-left:.0625em;margin-right:.0625em;min-width:1.125em;border-radius:.125em;letter-spacing:.25em;text-indent:.25em}.tick-flip-panel{color:#edebeb;background-color:#333232}.tick-flip-shadow{box-shadow:0 .125em .3125em rgba(0,0,0,.25),0 .02125em .06125em rgba(0,0,0,.25)}
            
            /* Custom Flip Counter Styling */
            .tick {
              font-size: 1rem;
              white-space: nowrap;
              font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
            }

            .tick-flip, .tick-text-inline {
              font-size: 2.5em;
            }

            .tick-label {
              margin-top: 1em;
              font-size: 1em;
              color: var(--color-textSecondary, #696996);
              text-transform: uppercase;
              letter-spacing: 0.1em;
            }

            .tick-char {
              width: 1.5em;
            }

            .tick-text-inline {
              display: inline-block;
              text-align: center;
              min-width: 1em;
              color: var(--color-text, #15151e);
            }

            .tick-text-inline + .tick-text-inline {
              margin-left: -0.325em;
            }

            .tick-group {
              margin: 0 0.5em;
              text-align: center;
            }

            /* Flip Clock Panel - Classic Segmented Display Style */
            .tick-flip-panel {
              color: #ffffff !important;
              background-color: #2b2b2b !important;
              border-radius: 0.15em !important;
              box-shadow: 
                0 0.05em 0 rgba(0, 0, 0, 0.6),
                0 0.15em 0.15em rgba(0, 0, 0, 0.4) !important;
            }

            /* Add subtle gradient for 3D depth effect */
            .tick-flip-panel::before {
              background: linear-gradient(
                to bottom,
                rgba(255, 255, 255, 0.1) 0%,
                rgba(255, 255, 255, 0) 50%,
                rgba(0, 0, 0, 0.2) 100%
              ) !important;
            }

            /* Flip card container with shadow */
            .tick-flip {
              border-radius: 0.15em !important;
              font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
              font-weight: 600 !important;
              box-shadow: 0 0.2em 0.4em rgba(0, 0, 0, 0.3) !important;
            }

            /* Middle divider line between flip panels for segmented look */
            .tick-flip::after {
              background: #1a1a1a !important;
              height: 0.05em !important;
            }

            /* Text positioning and line height */
            .tick-flip-panel-text-wrapper {
              line-height: 1.5 !important;
            }

            /* Spacing between individual digit cards */
            .tick-flip + .tick-flip {
              margin-left: 0.1em;
            }
            
            /* Navigation Dropdown Styles */
            .nav-menu {
              position: relative;
            }
            
            .nav-item-dropdown {
              position: relative;
            }
            
            .nav-link, .nav-link-dropdown {
              color: var(--color-text, #333);
              font-family: Montserrat;
              text-decoration: none;
              padding: 0.5rem 0.75rem;
              display: inline-flex;
              align-items: center;
              position: relative;
              border-radius: 4px;
              transition: background-color 0.2s, color 0.2s, border-color 0.2s;
              cursor: pointer;
              font-weight: 500;
            }
            
            /* Navigation underline element for underline style */
            .nav-link .nav-underline, .nav-link-dropdown .nav-underline {
              position: absolute;
              bottom: 0;
              left: 50%;
              transform: translateX(-50%);
              height: 2px;
              width: 0%;
              background-color: var(--color-text, #333);
              transition: width 0.2s ease;
            }
            
            /* Default style hover */
            
            .nav-link:hover, .nav-link-dropdown:hover {
              background-color: rgba(0,0,0,0.05);
              
            }
            
            
            /* Underline style hover */
            
            
            /* Pill style hover */
            
            
            /* Bar style hover */
            
            
            .dropdown-arrow {
              font-size: 0.7em;
              margin-left: 0.3rem;
              transition: transform 0.2s;
            }
            
            .nav-item-dropdown.active .dropdown-arrow {
              transform: rotate(180deg);
            }
            
            .nav-dropdown {
              display: none;
              position: absolute;
              top: 100%;
              left: 0;
              min-width: 200px;
              background: #ffffff;
              border: 1px solid var(--color-border, #e5e7eb);
              border-radius: 4px;
              box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
              padding: 0.5rem 0;
              margin-top: 0.25rem;
              list-style: none;
              z-index: 1000;
            }
            
            /* Dropdown visibility controlled by JavaScript with delay support */
            .nav-item-dropdown.active .nav-dropdown {
              display: block;
            }
            
            .nav-dropdown li {
              margin: 0;
            }
            
            .site-header .nav-dropdown a,
            .site-header .nav-dropdown a:link,
            .site-header .nav-dropdown a:visited,
            .site-header .nav-dropdown a:active {
              color: #333333;
              font-family: Montserrat;
              text-decoration: none;
              padding: 0.5rem 1rem;
              display: block;
              transition: background-color 0.2s, color 0.2s;
              font-weight: 400;
            }
            
            .site-header .nav-dropdown a:hover {
              background-color: rgba(0,0,0,0.05);
              color: #111111;
            }
            
            /* Nested dropdown (fly-out) styles */
            .nav-item-nested {
              position: relative;
            }
            
            .nav-item-nested .dropdown-arrow {
              transform: rotate(0deg);
            }
            
            /* Nested dropdowns fly out to the right - HIDDEN by default */
            .nav-item-nested > .nav-dropdown {
              display: none !important;
              top: 0;
              left: 100%;
              margin-top: 0;
              margin-left: 0;
            }
            
            /* Show nested dropdown ONLY on direct hover (CSS-based, no JS active class) */
            .nav-item-nested:hover > .nav-dropdown {
              display: block !important;
            }
            
            /* Note: Click mode and hover delays are now fully handled by JavaScript */
            
            /* Mobile Navigation Styles */
            .mobile-menu-toggle {
              display: none;
              background: none;
              border: none;
              cursor: pointer;
              padding: 0.5rem;
              color: var(--color-text, #333);
              font-size: 1.5rem;
              line-height: 1;
            }
            
            .mobile-nav {
              display: none;
            }
            
            @media (max-width: 768px) {
              .mobile-menu-toggle {
                display: block;
                margin-left: auto;
              }
              
              .desktop-nav {
                display: none !important;
              }
              
              .mobile-nav {
                display: none;
                position: fixed;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                background: var(--color-surface, #ffffff);
                color: var(--color-text, #333);
                z-index: 9999;
                overflow-y: auto;
              }
              
              .mobile-nav.active {
                display: block;
              }
              
              .mobile-nav-header {
                display: flex;
                justify-content: space-between;
                align-items: center;
                padding: 1rem;
                border-bottom: 1px solid var(--color-border, #ddd);
              }
              
              .mobile-nav-close {
                background: none;
                border: none;
                cursor: pointer;
                padding: 0.5rem;
                color: var(--color-text, #333);
                font-size: 1.5rem;
                line-height: 1;
              }
              
              .mobile-nav ul {
                list-style: none;
                margin: 0;
                padding: 0;
              }
              
              .mobile-nav ul li {
                border-bottom: 1px solid var(--color-border, #ddd);
              }
              
              .mobile-nav ul li a {
                display: block;
                padding: 1rem;
                color: var(--color-text, #333);
                text-decoration: none;
                font-size: 1.1rem;
              }
              
              .mobile-nav ul li a:active {
                background: rgba(0,0,0,0.05);
                
              }
              
              /* Nested sublists — real hierarchy: indented, slightly smaller,
                 with a left guide border so parent/child structure is visible */
              .mobile-nav ul ul.mobile-nav-sub {
                margin: 0 0 0 1rem;
                padding: 0;
                border-left: 2px solid var(--color-border, #ddd);
              }
              
              .mobile-nav ul ul.mobile-nav-sub li {
                border-bottom: none;
              }
              
              .mobile-nav ul ul.mobile-nav-sub li a {
                padding: 0.65rem 1rem;
                font-size: 1rem;
              }
            }
            
            /* ----------------------------------------------
               Custom Quill Blot Styles for Rich Text Content
               ---------------------------------------------- */
            
            /* Floatable Image Styles */
            .ql-floatable-image {
              display: inline-block;
              max-width: 100%;
              margin: 12px 0;
              vertical-align: top;
            }
            
            .ql-floatable-image img {
              display: block;
              max-width: 100%;
              height: auto;
              border-radius: 8px;
            }
            
            .ql-floatable-image.float-left {
              float: left;
              margin: 0 20px 12px 0;
              max-width: 50%;
              clear: none;
            }
            
            .ql-floatable-image.float-right {
              float: right;
              margin: 0 0 12px 20px;
              max-width: 50%;
              clear: none;
            }
            
            .ql-floatable-image.float-none {
              float: none;
              display: block;
              margin: 12px auto;
              max-width: 100%;
            }
            
            .ql-floatable-image.width-small { max-width: 25% !important; }
            .ql-floatable-image.width-medium { max-width: 50% !important; }
            .ql-floatable-image.width-large { max-width: 75% !important; }
            .ql-floatable-image.width-full { max-width: 100% !important; }
            
            /* Video Embed Styles */
            .ql-video-embed {
              display: block;
              margin: 16px 0;
              max-width: 100%;
              clear: both;
            }
            
            .ql-video-embed .video-embed-wrapper {
              position: relative;
              padding-bottom: 56.25%;
              height: 0;
              overflow: hidden;
              border-radius: 8px;
            }
            
            .ql-video-embed .video-embed-wrapper iframe,
            .ql-video-embed .video-embed-wrapper video {
              position: absolute;
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
            }
            
            .ql-video-embed.float-left {
              float: left;
              margin: 0 20px 12px 0;
              clear: none;
            }
            
            .ql-video-embed.float-right {
              float: right;
              margin: 0 0 12px 20px;
              clear: none;
            }
            
            .ql-video-embed.float-none {
              float: none;
              margin: 16px auto;
            }
            
            .ql-video-embed.width-small { width: 200px !important; min-width: 200px !important; }
            .ql-video-embed.width-medium { width: 320px !important; min-width: 320px !important; }
            .ql-video-embed.width-large { width: 480px !important; min-width: 480px !important; }
            .ql-video-embed.width-full { width: 100% !important; max-width: 100% !important; float: none !important; margin: 16px auto !important; }
            
            /* File Card Styles */
            .ql-file-card {
              display: inline-flex;
              align-items: center;
              gap: 12px;
              padding: 12px 16px;
              background: var(--color-surface, #f8fafc);
              border: 1px solid var(--color-border, #e2e8f0);
              border-radius: 8px;
              text-decoration: none;
              color: var(--color-text, inherit);
              margin: 8px 0;
              max-width: 320px;
              transition: all 0.2s ease;
              box-sizing: border-box;
            }
            
            .ql-file-card:hover {
              background: var(--color-surface, #f1f5f9);
              border-color: var(--color-text, #cbd5e1);
              opacity: 0.9;
            }
            
            .ql-file-card .file-icon {
              width: 40px;
              height: 40px;
              border-radius: 8px;
              display: flex;
              align-items: center;
              justify-content: center;
              font-size: 20px;
              flex-shrink: 0;
            }
            
            .ql-file-card .file-icon.pdf { background: #fef2f2; color: #dc2626; }
            .ql-file-card .file-icon.doc { background: #eff6ff; color: #2563eb; }
            .ql-file-card .file-icon.spreadsheet { background: #f0fdf4; color: #16a34a; }
            .ql-file-card .file-icon.default { background: var(--color-surface, #f8fafc); color: var(--color-textSecondary, #64748b); }
            
            .ql-file-card .file-info {
              flex: 1;
              min-width: 0;
              overflow: hidden;
            }
            
            .ql-file-card .file-name {
              font-weight: 600;
              font-size: 14px;
              color: var(--color-text, #1e293b);
              white-space: nowrap;
              overflow: hidden;
              text-overflow: ellipsis;
            }
            
            .ql-file-card .file-size {
              font-size: 12px;
              color: var(--color-textSecondary, #64748b);
              margin-top: 2px;
            }
            
            .ql-file-card.float-left {
              float: left;
              margin: 8px 16px 8px 0;
            }
            
            .ql-file-card.float-right {
              float: right;
              margin: 8px 0 8px 16px;
            }
            
            /* Mobile Responsive Styles for Quill Blots */
            @media (max-width: 768px) {
              /* File cards on mobile - stacked treatment */
              .ql-file-card {
                display: flex !important;
                flex-direction: column !important;
                align-items: center !important;
                max-width: 120px !important;
                width: auto !important;
                box-sizing: border-box !important;
                padding: 12px !important;
                gap: 6px !important;
                text-align: center !important;
              }
              
              .ql-file-card.float-left,
              .ql-file-card.float-right {
                float: none !important;
                margin: 8px 0 !important;
              }
              
              .ql-file-card .file-icon {
                width: 40px !important;
                height: 40px !important;
                font-size: 18px !important;
                border-radius: 8px !important;
              }
              
              .ql-file-card .file-info {
                min-width: 0 !important;
                width: 100% !important;
                overflow: hidden !important;
                text-align: center !important;
              }
              
              .ql-file-card .file-name {
                max-width: 100% !important;
                font-size: 11px !important;
                overflow: hidden !important;
                text-overflow: ellipsis !important;
                white-space: nowrap !important;
                display: block !important;
              }
              
              .ql-file-card .file-size {
                display: none !important;
              }
              
              /* Floatable images on mobile - remove float and constrain */
              .ql-floatable-image {
                max-width: 100% !important;
                box-sizing: border-box;
              }
              
              .ql-floatable-image.float-left,
              .ql-floatable-image.float-right {
                float: none !important;
                margin: 12px 0 !important;
                max-width: 100% !important;
              }
              
              .ql-floatable-image img {
                max-width: 100% !important;
                height: auto !important;
              }
              
              /* Video embeds on mobile */
              .ql-video-embed.float-left,
              .ql-video-embed.float-right {
                float: none !important;
                margin: 16px 0 !important;
                width: 100% !important;
              }
              
              /* Text content word wrapping */
              .rich-text-content,
              .puck-text {
                max-width: 100% !important;
                overflow-wrap: break-word !important;
                word-wrap: break-word !important;
                word-break: break-word !important;
              }
            }
            
            /* Pull Quote Styles */
            .ql-pull-quote {
              display: block;
              margin: 24px 0;
              padding: 0;
              position: relative;
            }
            
            .ql-pull-quote .pull-quote-wrapper {
              padding: 20px 24px;
              background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
              border-left: 4px solid #3b82f6;
              border-radius: 0 8px 8px 0;
              position: relative;
            }
            
            .ql-pull-quote .pull-quote-mark {
              font-size: 48px;
              line-height: 1;
              color: #3b82f6;
              opacity: 0.3;
              font-family: Georgia, serif;
              position: absolute;
            }
            
            .ql-pull-quote .pull-quote-mark.open {
              top: 8px;
              left: 12px;
            }
            
            .ql-pull-quote .pull-quote-mark.close {
              bottom: 0;
              right: 16px;
            }
            
            .ql-pull-quote .pull-quote-text {
              font-size: 1.25rem;
              font-style: italic;
              font-weight: 500;
              line-height: 1.6;
              color: #334155;
              text-align: center;
              margin: 0;
              padding: 8px 32px;
            }
            
            .ql-pull-quote.float-left {
              float: left;
              margin: 8px 24px 16px 0;
              clear: none;
            }
            
            .ql-pull-quote.float-right {
              float: right;
              margin: 8px 0 16px 24px;
              clear: none;
            }
            
            .ql-pull-quote.float-none {
              float: none;
              margin: 24px auto;
            }
            
            .ql-pull-quote.width-small { width: 200px !important; min-width: 200px !important; }
            .ql-pull-quote.width-medium { width: 280px !important; min-width: 280px !important; }
            .ql-pull-quote.width-large { width: 360px !important; min-width: 360px !important; }
            .ql-pull-quote.width-full { width: 100% !important; max-width: 100% !important; float: none !important; margin: 24px auto !important; }
            
            /* Clear floats after rich text content */
            .text-content::after,
            .rich-text-content::after {
              content: "";
              display: table;
              clear: both;
            }

            /* Render class contract (Task #156): default component structure on
               documented stable classes. Emitted here — after all base styles,
               immediately before the site's custom CSS — so custom CSS overrides
               it at equal specificity. Reproduces the renderer's previous inline
               defaults so sites without custom CSS are unchanged. */
            /* Render class contract v1.11.0 — site chrome structural-only (designer-owned appearance). */
.site-header .header-logo {
  flex-shrink: 0;
}
.site-header .header-logo-link {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.site-header .header-logo-img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.site-header .header-nav {
  flex: 1;
}
.site-header .nav-menu {
  list-style: none;
  display: flex;
  width: 100%;
  gap: 1.5rem;
  flex-wrap: wrap;
}
.site-header .header-cta {
  flex-shrink: 0;
}
.site-header .header-cta-button {
  display: inline-block;
}
.site-header .header-social {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}
.site-header .header-social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
}
.site-header .header-contact {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.site-header .header-grid {
  max-width: var(--header-max-width, var(--content-max-width, 1200px));
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.site-header .header-grid-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 40px;
}
.site-header .header-grid-zone {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.site-header .header-grid-zone--center {
  flex: 1;
}
.site-header .header-flex {
  max-width: var(--header-max-width, var(--content-max-width, 1200px));
  display: flex;
  align-items: center;
  gap: 2rem;
  flex-wrap: wrap;
}
.site-footer .site-footer-content {
  max-width: var(--footer-max-width, var(--content-max-width, 1200px));
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 2rem;
}
.site-footer .site-footer-logo {
  width: 100%;
  max-width: 150px;
  height: auto;
}
.site-footer .site-footer-links {
  list-style: none;
}
.site-footer .site-footer-social {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}
.site-footer .site-footer-empty {
  text-align: center;
}
.site-footer .footer-bottom-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}
.site-footer .footer-bottom-bar-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.site-footer .footer-bottom-bar-details {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.375rem 1rem;
}
            /* Render class contract v1.11.0 — structural-only (designer-owned appearance). */
.puck-card {
  display: block;
  overflow: hidden;
}
.puck-grid-heading {
  text-align: center;
}
.puck-grid-subheading {
  text-align: center;
}
.puck-columns {
  display: flex;
  gap: 2rem;
  flex-wrap: wrap;
}
.puck-columns-col {
  min-width: 200px;
}
.puck-column {
  min-width: 150px;
  min-height: 100px;
  display: flex;
  flex-direction: column;
}
.puck-button-container {
  display: flex;
  align-self: flex-start;
  width: 100%;
}
.puck-button {
  display: inline-block;
}
.puck-stats-title {
  text-align: center;
}
.puck-stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 32px;
}
.puck-stat-card {
  text-align: center;
}
.puck-hero--standard {
  display: flex;
  align-items: center;
  justify-content: center;
}
.puck-hero--carousel {
  position: relative;
  overflow: hidden;
}
.puck-hero--video {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
}
.puck-hero--split {
  display: flex;
  flex-wrap: wrap;
}
.puck-hero--minimal {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.puck-hero--offset {
  position: relative;
  display: flex;
}
.puck-hero-content {
  max-width: 800px;
}
.puck-hero--video .puck-hero-content {
  position: relative;
  z-index: 2;
}
.puck-hero--split .puck-hero-content {
  max-width: 500px;
}
.puck-hero--minimal .puck-hero-content {
  max-width: 600px;
}
.puck-hero--offset .puck-hero-content {
  max-width: 500px;
}
.puck-hero-eyebrow {
  display: inline-block;
}
.puck-hero--minimal .puck-hero-subtitle {
  max-width: 500px;
}
.puck-hero-cta-primary {
  display: inline-block;
}
.puck-hero-cta-secondary {
  display: inline-block;
}
.puck-hero--carousel .carousel-slide {
  align-items: center;
  justify-content: center;
}
.puck-hero--carousel .carousel-slides {
  position: relative;
}
.puck-hero--carousel .carousel-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
}
.puck-hero--carousel .carousel-prev {
  left: 1rem;
}
.puck-hero--carousel .carousel-next {
  right: 1rem;
}
.puck-hero--carousel .carousel-dots {
  position: absolute;
  bottom: 1.5rem;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 0.5rem;
  z-index: 10;
}
.puck-hero--carousel .carousel-dot {
  width: 12px;
  height: 12px;
}
.puck-hero-video-el {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.puck-hero-video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}
.puck-hero-split-panel {
  flex: 1;
  min-width: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.puck-hero-split-image {
  flex: 1;
  min-width: 300px;
}
.puck-grid-preset {
  display: grid;
}
.puck-flex {
  display: flex;
  flex-direction: var(--puck-flex-direction, row);
  flex-wrap: var(--puck-flex-wrap, wrap);
  row-gap: var(--puck-flex-row-gap, 16px);
  column-gap: var(--puck-flex-column-gap, 16px);
  align-items: var(--puck-flex-align-items, stretch);
  justify-content: var(--puck-flex-justify-content, flex-start);
  min-height: 100px;
}
.puck-flex-item {
  flex-grow: var(--puck-flex-item-grow, 0);
  flex-basis: var(--puck-flex-item-basis, auto);
  flex-shrink: var(--puck-flex-item-shrink, var(--puck-flex-item-flex-shrink, 0));
  align-self: var(--puck-flex-item-align-self, auto);
  min-width: var(--puck-flex-item-min-width, auto);
  max-width: var(--puck-flex-item-max-width, none);
}
.puck-flex > .puck-flex-item[data-puck-flex-item-padding] > * {
  padding-top: var(--puck-flex-item-padding-top) !important;
  padding-right: var(--puck-flex-item-padding-right) !important;
  padding-bottom: var(--puck-flex-item-padding-bottom) !important;
  padding-left: var(--puck-flex-item-padding-left) !important;
}
.puck-video {
  display: flex;
}
.puck-video-inner {
  max-width: 100%;
}
.puck-video-media {
  width: 100%;
  display: block;
}
.puck-cta {
  text-align: center;
}
.puck-cta-description {
  max-width: 600px;
  white-space: pre-wrap;
}
.puck-cta-buttons {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}
.puck-cta-primary {
  display: inline-block;
}
.puck-cta-secondary {
  display: inline-block;
}
.puck-image {
  display: flex;
  max-width: 100%;
}
.puck-image-img {
  display: block;
  max-width: 100%;
}
.puck-image-caption {
  text-align: center;
}
.puck-image-viewer-trigger {
  display: block;
}
.puck-image-viewer-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
}
.puck-image-viewer-img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.puck-image-viewer-close {
  position: absolute;
  top: 16px;
  right: 16px;
}
.puck-image-viewer-previous, .puck-image-viewer-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.puck-image-viewer-previous {
  left: 16px;
}
.puck-image-viewer-next {
  right: 16px;
}
.puck-card-icon-horizontal .puck-card-title {
  text-align: left;
}
.puck-card-description {
  white-space: pre-wrap;
}
.puck-card-featured-overlay {
  position: absolute;
  inset: 0;
}
.puck-card-featured-content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.puck-card-meta {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 4px;
  text-align: left;
}
.puck-card-meta-row {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.puck-card-meta-label {
  flex-shrink: 0;
}
.puck-card-avatar {
  width: 120px;
  height: 120px;
  overflow: hidden;
  flex-shrink: 0;
}
.puck-card-avatar-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
@media (max-width: 1024px) { .puck-flex { flex-direction: var(--puck-flex-tablet-direction, var(--puck-flex-direction, row));flex-wrap: var(--puck-flex-tablet-wrap, var(--puck-flex-wrap, wrap));row-gap: var(--puck-flex-tablet-row-gap, var(--puck-flex-row-gap, 16px));column-gap: var(--puck-flex-tablet-column-gap, var(--puck-flex-column-gap, 16px));align-items: var(--puck-flex-tablet-align-items, var(--puck-flex-align-items, stretch));justify-content: var(--puck-flex-tablet-justify-content, var(--puck-flex-justify-content, flex-start)); } }
@media (max-width: 767px) { .puck-flex { flex-direction: var(--puck-flex-mobile-direction, var(--puck-flex-tablet-direction, var(--puck-flex-direction, row)));flex-wrap: var(--puck-flex-mobile-wrap, var(--puck-flex-tablet-wrap, var(--puck-flex-wrap, wrap)));row-gap: var(--puck-flex-mobile-row-gap, var(--puck-flex-tablet-row-gap, var(--puck-flex-row-gap, 16px)));column-gap: var(--puck-flex-mobile-column-gap, var(--puck-flex-tablet-column-gap, var(--puck-flex-column-gap, 16px)));align-items: var(--puck-flex-mobile-align-items, var(--puck-flex-tablet-align-items, var(--puck-flex-align-items, stretch)));justify-content: var(--puck-flex-mobile-justify-content, var(--puck-flex-tablet-justify-content, var(--puck-flex-justify-content, flex-start))); } }
@container puck-canvas (max-width: 1024px) { .puck-flex { flex-direction: var(--puck-flex-tablet-direction, var(--puck-flex-direction, row));flex-wrap: var(--puck-flex-tablet-wrap, var(--puck-flex-wrap, wrap));row-gap: var(--puck-flex-tablet-row-gap, var(--puck-flex-row-gap, 16px));column-gap: var(--puck-flex-tablet-column-gap, var(--puck-flex-column-gap, 16px));align-items: var(--puck-flex-tablet-align-items, var(--puck-flex-align-items, stretch));justify-content: var(--puck-flex-tablet-justify-content, var(--puck-flex-justify-content, flex-start)); } }
@container puck-canvas (max-width: 767px) { .puck-flex { flex-direction: var(--puck-flex-mobile-direction, var(--puck-flex-tablet-direction, var(--puck-flex-direction, row)));flex-wrap: var(--puck-flex-mobile-wrap, var(--puck-flex-tablet-wrap, var(--puck-flex-wrap, wrap)));row-gap: var(--puck-flex-mobile-row-gap, var(--puck-flex-tablet-row-gap, var(--puck-flex-row-gap, 16px)));column-gap: var(--puck-flex-mobile-column-gap, var(--puck-flex-tablet-column-gap, var(--puck-flex-column-gap, 16px)));align-items: var(--puck-flex-mobile-align-items, var(--puck-flex-tablet-align-items, var(--puck-flex-align-items, stretch)));justify-content: var(--puck-flex-mobile-justify-content, var(--puck-flex-tablet-justify-content, var(--puck-flex-justify-content, flex-start))); } }
@media (max-width: 1024px) { .puck-flex > .puck-flex-item { flex-grow: var(--puck-flex-item-tablet-grow, var(--puck-flex-item-grow, 0));flex-basis: var(--puck-flex-item-tablet-basis, var(--puck-flex-item-basis, auto));flex-shrink: var(--puck-flex-item-tablet-shrink, var(--puck-flex-item-shrink, var(--puck-flex-item-flex-shrink, 0)));align-self: var(--puck-flex-item-tablet-align-self, var(--puck-flex-item-align-self, auto));min-width: var(--puck-flex-item-tablet-min-width, var(--puck-flex-item-min-width, auto));max-width: var(--puck-flex-item-tablet-max-width, var(--puck-flex-item-max-width, none)); } .puck-flex > .puck-flex-item[data-puck-flex-item-tablet-margin] { margin-top: var(--puck-flex-item-tablet-margin-top, var(--puck-flex-item-margin-top, var(--puck-flex-item-margin, 0)));margin-right: var(--puck-flex-item-tablet-margin-right, var(--puck-flex-item-margin-right, var(--puck-flex-item-margin, 0)));margin-bottom: var(--puck-flex-item-tablet-margin-bottom, var(--puck-flex-item-margin-bottom, var(--puck-flex-item-margin, 0)));margin-left: var(--puck-flex-item-tablet-margin-left, var(--puck-flex-item-margin-left, var(--puck-flex-item-margin, 0))); } .puck-flex > .puck-flex-item[data-puck-flex-item-tablet-padding] > * { padding-top: var(--puck-flex-item-tablet-padding-top, var(--puck-flex-item-padding-top, revert)) !important;padding-right: var(--puck-flex-item-tablet-padding-right, var(--puck-flex-item-padding-right, revert)) !important;padding-bottom: var(--puck-flex-item-tablet-padding-bottom, var(--puck-flex-item-padding-bottom, revert)) !important;padding-left: var(--puck-flex-item-tablet-padding-left, var(--puck-flex-item-padding-left, revert)) !important; } }
@media (max-width: 767px) { .puck-flex > .puck-flex-item { flex-grow: var(--puck-flex-item-mobile-grow, var(--puck-flex-item-tablet-grow, var(--puck-flex-item-grow, 0)));flex-basis: var(--puck-flex-item-mobile-basis, var(--puck-flex-item-tablet-basis, var(--puck-flex-item-basis, auto)));flex-shrink: var(--puck-flex-item-mobile-shrink, var(--puck-flex-item-tablet-shrink, var(--puck-flex-item-shrink, var(--puck-flex-item-flex-shrink, 0))));align-self: var(--puck-flex-item-mobile-align-self, var(--puck-flex-item-tablet-align-self, var(--puck-flex-item-align-self, auto)));min-width: var(--puck-flex-item-mobile-min-width, var(--puck-flex-item-tablet-min-width, var(--puck-flex-item-min-width, auto)));max-width: var(--puck-flex-item-mobile-max-width, var(--puck-flex-item-tablet-max-width, var(--puck-flex-item-max-width, none))); } .puck-flex > .puck-flex-item[data-puck-flex-item-mobile-margin] { margin-top: var(--puck-flex-item-mobile-margin-top, var(--puck-flex-item-tablet-margin-top, var(--puck-flex-item-margin-top, var(--puck-flex-item-margin, 0))));margin-right: var(--puck-flex-item-mobile-margin-right, var(--puck-flex-item-tablet-margin-right, var(--puck-flex-item-margin-right, var(--puck-flex-item-margin, 0))));margin-bottom: var(--puck-flex-item-mobile-margin-bottom, var(--puck-flex-item-tablet-margin-bottom, var(--puck-flex-item-margin-bottom, var(--puck-flex-item-margin, 0))));margin-left: var(--puck-flex-item-mobile-margin-left, var(--puck-flex-item-tablet-margin-left, var(--puck-flex-item-margin-left, var(--puck-flex-item-margin, 0)))); } .puck-flex > .puck-flex-item[data-puck-flex-item-mobile-padding] > * { padding-top: var(--puck-flex-item-mobile-padding-top, var(--puck-flex-item-tablet-padding-top, var(--puck-flex-item-padding-top, revert))) !important;padding-right: var(--puck-flex-item-mobile-padding-right, var(--puck-flex-item-tablet-padding-right, var(--puck-flex-item-padding-right, revert))) !important;padding-bottom: var(--puck-flex-item-mobile-padding-bottom, var(--puck-flex-item-tablet-padding-bottom, var(--puck-flex-item-padding-bottom, revert))) !important;padding-left: var(--puck-flex-item-mobile-padding-left, var(--puck-flex-item-tablet-padding-left, var(--puck-flex-item-padding-left, revert))) !important; } }
@container puck-canvas (max-width: 1024px) { .puck-flex > .puck-flex-item { flex-grow: var(--puck-flex-item-tablet-grow, var(--puck-flex-item-grow, 0));flex-basis: var(--puck-flex-item-tablet-basis, var(--puck-flex-item-basis, auto));flex-shrink: var(--puck-flex-item-tablet-shrink, var(--puck-flex-item-shrink, var(--puck-flex-item-flex-shrink, 0)));align-self: var(--puck-flex-item-tablet-align-self, var(--puck-flex-item-align-self, auto));min-width: var(--puck-flex-item-tablet-min-width, var(--puck-flex-item-min-width, auto));max-width: var(--puck-flex-item-tablet-max-width, var(--puck-flex-item-max-width, none)); } .puck-flex > .puck-flex-item[data-puck-flex-item-tablet-margin] { margin-top: var(--puck-flex-item-tablet-margin-top, var(--puck-flex-item-margin-top, var(--puck-flex-item-margin, 0)));margin-right: var(--puck-flex-item-tablet-margin-right, var(--puck-flex-item-margin-right, var(--puck-flex-item-margin, 0)));margin-bottom: var(--puck-flex-item-tablet-margin-bottom, var(--puck-flex-item-margin-bottom, var(--puck-flex-item-margin, 0)));margin-left: var(--puck-flex-item-tablet-margin-left, var(--puck-flex-item-margin-left, var(--puck-flex-item-margin, 0))); } .puck-flex > .puck-flex-item[data-puck-flex-item-tablet-padding] > * { padding-top: var(--puck-flex-item-tablet-padding-top, var(--puck-flex-item-padding-top, revert)) !important;padding-right: var(--puck-flex-item-tablet-padding-right, var(--puck-flex-item-padding-right, revert)) !important;padding-bottom: var(--puck-flex-item-tablet-padding-bottom, var(--puck-flex-item-padding-bottom, revert)) !important;padding-left: var(--puck-flex-item-tablet-padding-left, var(--puck-flex-item-padding-left, revert)) !important; } }
@container puck-canvas (max-width: 767px) { .puck-flex > .puck-flex-item { flex-grow: var(--puck-flex-item-mobile-grow, var(--puck-flex-item-tablet-grow, var(--puck-flex-item-grow, 0)));flex-basis: var(--puck-flex-item-mobile-basis, var(--puck-flex-item-tablet-basis, var(--puck-flex-item-basis, auto)));flex-shrink: var(--puck-flex-item-mobile-shrink, var(--puck-flex-item-tablet-shrink, var(--puck-flex-item-shrink, var(--puck-flex-item-flex-shrink, 0))));align-self: var(--puck-flex-item-mobile-align-self, var(--puck-flex-item-tablet-align-self, var(--puck-flex-item-align-self, auto)));min-width: var(--puck-flex-item-mobile-min-width, var(--puck-flex-item-tablet-min-width, var(--puck-flex-item-min-width, auto)));max-width: var(--puck-flex-item-mobile-max-width, var(--puck-flex-item-tablet-max-width, var(--puck-flex-item-max-width, none))); } .puck-flex > .puck-flex-item[data-puck-flex-item-mobile-margin] { margin-top: var(--puck-flex-item-mobile-margin-top, var(--puck-flex-item-tablet-margin-top, var(--puck-flex-item-margin-top, var(--puck-flex-item-margin, 0))));margin-right: var(--puck-flex-item-mobile-margin-right, var(--puck-flex-item-tablet-margin-right, var(--puck-flex-item-margin-right, var(--puck-flex-item-margin, 0))));margin-bottom: var(--puck-flex-item-mobile-margin-bottom, var(--puck-flex-item-tablet-margin-bottom, var(--puck-flex-item-margin-bottom, var(--puck-flex-item-margin, 0))));margin-left: var(--puck-flex-item-mobile-margin-left, var(--puck-flex-item-tablet-margin-left, var(--puck-flex-item-margin-left, var(--puck-flex-item-margin, 0)))); } .puck-flex > .puck-flex-item[data-puck-flex-item-mobile-padding] > * { padding-top: var(--puck-flex-item-mobile-padding-top, var(--puck-flex-item-tablet-padding-top, var(--puck-flex-item-padding-top, revert))) !important;padding-right: var(--puck-flex-item-mobile-padding-right, var(--puck-flex-item-tablet-padding-right, var(--puck-flex-item-padding-right, revert))) !important;padding-bottom: var(--puck-flex-item-mobile-padding-bottom, var(--puck-flex-item-tablet-padding-bottom, var(--puck-flex-item-padding-bottom, revert))) !important;padding-left: var(--puck-flex-item-mobile-padding-left, var(--puck-flex-item-tablet-padding-left, var(--puck-flex-item-padding-left, revert))) !important; } }

            /* Member Directory runtime widget appearance. Emitted in FULL for
               all site modes (no structuralOnly variant): the directory is
               built at runtime by an inline script, so on designer-owned
               sites the client inline-style stripper removes its decoration
               and this stylesheet becomes the sole source of its appearance.
               Sits before custom CSS so designer CSS can still override. */
            /* Render class contract v1.11.0 — Member Directory runtime widget (theme-token appearance; overridable by custom CSS below). */
.recur-member-dir-title {
  font-size: 1.875rem;
  font-weight: bold;
  margin: 0 0 16px;
  color: var(--color-text, #333);
  font-family: var(--font-primary, inherit);
}
.recur-member-dir-search {
  padding: 10px 14px;
  border-radius: 8px;
  border: 1px solid var(--color-border, #e5e5e5);
  background: var(--color-surface, #fff);
  color: var(--color-text, #333);
  font-size: 0.9375rem;
  margin-bottom: 16px;
  font-family: var(--font-primary, inherit);
}
.recur-member-dir-chip {
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 0.8125rem;
  font-weight: 500;
  cursor: pointer;
  border: 1px solid var(--color-border, #e5e5e5);
  background: var(--color-surface, #f5f5f5);
  color: var(--color-text, #333);
  font-family: var(--font-primary, inherit);
}
.recur-member-dir-chip-active {
  background: var(--color-primary, #1976d2);
  color: var(--color-background, #fff);
}
.recur-member-dir-clear {
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.75rem;
  background: transparent;
  color: var(--color-textSecondary, #666);
  border: none;
  cursor: pointer;
  font-family: var(--font-primary, inherit);
}
.recur-member-dir-card {
  background: var(--color-surface, #fff);
  border-radius: 12px;
  border: 1px solid var(--color-border, #e5e5e5);
  padding: 20px;
  cursor: pointer;
  font-family: var(--font-primary, inherit);
}
.recur-member-dir-row {
  background: var(--color-surface, #fff);
  border-radius: 10px;
  border: 1px solid var(--color-border, #e5e5e5);
  padding: 12px 16px;
  cursor: pointer;
  font-family: var(--font-primary, inherit);
}
.recur-member-dir-avatar {
  border-radius: 50%;
  background: var(--color-primary, #1976d2);
  color: var(--color-background, #fff);
  font-weight: 600;
  font-family: var(--font-primary, inherit);
}
.recur-member-dir-name {
  font-weight: 600;
  color: var(--color-text, #333);
  line-height: 1.3;
}
.recur-member-dir-meta {
  font-size: 0.8125rem;
  color: var(--color-textSecondary, #666);
}
.recur-member-dir-tag {
  padding: 3px 8px;
  border-radius: 6px;
  font-size: 0.75rem;
  font-weight: 500;
  background: var(--color-surface, #f5f5f5);
  color: var(--color-text, #333);
  border: 1px solid var(--color-border, #e5e5e5);
  font-family: var(--font-primary, inherit);
}
.recur-member-dir-empty {
  padding: 40px;
  color: var(--color-textSecondary, #666);
  font-family: var(--font-primary, inherit);
}
.recur-member-dir-page-btn {
  padding: 8px 14px;
  border-radius: 6px;
  border: none;
  cursor: pointer;
  background: var(--color-text, #333);
  color: var(--color-surface, #fff);
  font-size: 0.875rem;
  font-weight: 500;
  font-family: var(--font-primary, inherit);
}
.recur-member-dir-page-btn[disabled] {
  cursor: not-allowed;
  background: var(--color-border, #e5e5e5);
  color: var(--color-textSecondary, #999);
}
.recur-member-dir-page-label {
  font-size: 0.875rem;
  color: var(--color-text, #333);
}
.recur-member-dir-modal-backdrop {
  background: rgba(0, 0, 0, 0.55);
  padding: 20px;
  font-family: var(--font-primary, inherit);
}
.recur-member-dir-modal {
  background: var(--color-surface, #fff);
  color: var(--color-text, #333);
  border-radius: 12px;
  border: 1px solid var(--color-border, #e5e5e5);
}
.recur-member-dir-modal-close {
  background: transparent;
  border: none;
  cursor: pointer;
  font-size: 1.5rem;
  line-height: 1;
  color: var(--color-textSecondary, #666);
  border-radius: 6px;
}
.recur-member-dir-modal-title {
  font-size: 1.375rem;
  font-weight: 700;
  margin: 0;
}
.recur-member-dir-link {
  color: var(--color-primary, #1976d2);
}
.recur-member-dir-meta-sm {
  font-size: 0.75rem;
}
.recur-member-dir-card .recur-member-dir-name {
  font-size: 1rem;
}
.recur-member-dir-row .recur-member-dir-name {
  font-size: 0.9375rem;
}
.recur-member-dir-card .recur-member-dir-avatar {
  font-size: 27px;
}
.recur-member-dir-row .recur-member-dir-avatar {
  font-size: 17px;
}
.recur-member-dir-modal .recur-member-dir-avatar {
  font-size: 24px;
}
.recur-member-dir-chip[data-md-view] {
  border-radius: 6px;
}
.recur-member-dir-modal-body {
  padding: 28px 32px;
}
.recur-member-dir-modal-header {
  margin-bottom: 16px;
}
.recur-member-dir-modal-meta {
  font-size: 0.875rem;
  color: var(--color-textSecondary, #666);
}
.recur-member-dir-modal-location {
  font-size: 0.875rem;
  color: var(--color-textSecondary, #666);
  margin-bottom: 10px;
}
.recur-member-dir-modal-tags {
  margin-bottom: 14px;
}
.recur-member-dir-modal-bio {
  font-size: 0.9375rem;
  line-height: 1.6;
  margin: 0 0 16px;
}
.recur-member-dir-modal-contact {
  font-size: 0.875rem;
}
.recur-member-dir-modal-phone {
  color: var(--color-textSecondary, #666);
}

            /* Newsletter signup runtime widget (footer section + modal).
               Same always-emitted-in-full rule as the member directory: the
               modal is built at runtime by an inline script, so this
               stylesheet is the sole source of its appearance on
               designer-owned sites. Sits before custom CSS so designer CSS
               can still override. */
            /* Render class contract v1.11.0 — Newsletter signup runtime widget (theme-token appearance; overridable by custom CSS below). */
.recur-nl-description {
  margin: 0 0 12px 0;
  font-size: 0.9rem;
  line-height: 1.5;
  opacity: 0.9;
}
.recur-nl-form {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  max-width: 320px;
}
.recur-nl-input {
  flex: 1 1 160px;
  min-width: 0;
  padding: 10px 16px;
  border: 1px solid var(--color-border, #d1d5db);
  border-radius: 9999px;
  font-size: 0.9rem;
  background: #ffffff;
  color: #111827;
}
.recur-nl-button {
  padding: 10px 22px;
  border: none;
  border-radius: 9999px;
  font-size: 0.9rem;
  font-weight: 600;
  cursor: pointer;
  background: var(--color-primary, #2563eb);
  color: var(--color-buttonText, #ffffff);
}
.recur-nl-hp {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}
.recur-nl-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10050;
  padding: 16px;
}
.recur-nl-modal {
  background: #ffffff;
  color: #111827;
  border-radius: 12px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);
  width: 100%;
  max-width: 420px;
  max-height: 90vh;
  overflow-y: auto;
  padding: 24px;
  position: relative;
  text-align: left;
}
.recur-nl-modal-title {
  margin: 0 0 4px 0;
  font-size: 1.25rem;
  font-weight: 700;
  padding-right: 32px;
}
.recur-nl-modal-close {
  position: absolute;
  top: 12px;
  right: 12px;
  background: none;
  border: none;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
  color: #6b7280;
  padding: 4px;
}
.recur-nl-field {
  margin: 12px 0;
}
.recur-nl-label {
  display: block;
  font-size: 0.85rem;
  font-weight: 600;
  margin-bottom: 4px;
}
.recur-nl-field input[type="text"], .recur-nl-field input[type="email"] {
  width: 100%;
  box-sizing: border-box;
  padding: 8px 12px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  font-size: 0.9rem;
  background: #ffffff;
  color: #111827;
}
.recur-nl-checkbox-row {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 12px 0;
  font-size: 0.85rem;
  line-height: 1.4;
}
.recur-nl-error {
  color: #b91c1c;
  font-size: 0.85rem;
  margin: 8px 0;
}
.recur-nl-success {
  color: #15803d;
  font-size: 0.95rem;
  margin: 8px 0;
  line-height: 1.5;
}
.recur-nl-submit {
  width: 100%;
  padding: 10px 16px;
  border: none;
  border-radius: 9999px;
  font-size: 0.95rem;
  font-weight: 600;
  cursor: pointer;
  background: var(--color-primary, #2563eb);
  color: var(--color-buttonText, #ffffff);
  margin-top: 8px;
}
.recur-nl-submit:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

            /* Tenant-provided custom CSS (advanced styling mode only). Sanitized
               to neutralize style-tag escape attempts. In native mode the value
               is stored but intentionally not applied.
               NOTE: do not write the literal closing-style token in this comment
               — the HTML parser will close the surrounding <style> block early
               and dump the rest of the comment into the page. */
            /*
 * NABIP Tulsa — Recur advanced styling
 * Visual direction: NABIP Illinois reference translated to native Puck output.
 * Keep this file free of literal angle-bracket characters; Recur hashes the stored CSS.
 */
@font-face {
  font-family: "Montserrat";
  src: url("/media/nabiptulsa/prod/64744e53-594d-492c-8fb6-6773cde3f80b/documents/2026/09/5f14d547-f0f2-4ae5-8f3b-3117ef3156b5.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

:root {
  --nabip-navy: #25477c;
  --nabip-navy-soft: #31598f;
  --nabip-blue: #25477c;
  --nabip-blue-light: #416aab;
  --nabip-teal: #009b95;
  --nabip-teal-dark: #007c78;
  --nabip-white: #ffffff;
  --nabip-surface: #f4f7fa;
  --nabip-surface-blue: #eaf1f7;
  --nabip-border: #d8e1e8;
  --nabip-text: #24323d;
  --nabip-muted: #647482;
  --nabip-shadow-sm: 0 8px 24px rgba(22, 31, 38, 0.07);
  --nabip-shadow-md: 0 18px 48px rgba(22, 31, 38, 0.13);
  --nabip-radius: 10px;
  --nabip-radius-lg: 16px;
  --nabip-content: 1280px;
  --nabip-gutter: clamp(16px, 3vw, 32px);
  --nabip-section: clamp(56px, 7vw, 88px);
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--nabip-text);
  background: var(--nabip-white);
  font-family: "Montserrat", "Avenir Next", Avenir, Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.7;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

body,
button,
input,
select,
textarea {
  font-family: "Montserrat", "Avenir Next", Avenir, Helvetica, Arial, sans-serif;
}

body *:not(.material-symbols-rounded):not(.material-symbols-outlined):not(.material-symbols-sharp) {
  font-family: "Montserrat", "Avenir Next", Avenir, Helvetica, Arial, sans-serif !important;
}

body .material-symbols-rounded {
  font-family: "Material Symbols Rounded" !important;
}

body .material-symbols-outlined {
  font-family: "Material Symbols Outlined" !important;
}

body .material-symbols-sharp {
  font-family: "Material Symbols Sharp" !important;
}

::selection {
  color: var(--nabip-white);
  background: var(--nabip-teal);
}

a {
  color: var(--nabip-blue);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  transition: color 160ms ease, opacity 160ms ease;
}

a:hover {
  color: var(--nabip-teal-dark);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 3px;
}

/* Global reading frame and vertical rhythm */
.puck-page,
.puck-root {
  overflow: clip;
}

.puck-text,
.puck-heading,
.puck-grid,
.puck-grid-preset,
.puck-columns,
.puck-flex,
.puck-card,
.puck-stats,
.puck-cta,
.puck-image,
.puck-video,
.puck-file,
.recur-event-list,
.recur-product-list,
.recur-member-directory,
.recur-nl,
.puck-contact {
  box-sizing: border-box;
}

.puck-text {
  max-width: 900px;
  margin-inline: auto;
  padding-inline: var(--nabip-gutter);
  color: var(--nabip-text);
}

.puck-text p {
  margin: 0 0 1.1em;
}

.puck-text p:last-child,
.puck-text ul:last-child,
.puck-text ol:last-child {
  margin-bottom: 0;
}

.puck-text h2,
.puck-text h3,
.puck-text h4 {
  color: var(--nabip-navy);
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.puck-text h2 {
  margin: 0 0 18px;
  font-size: clamp(28px, 4vw, 42px);
}

.puck-text h3 {
  margin: 28px 0 12px;
  font-size: clamp(22px, 3vw, 30px);
}

.puck-text ul,
.puck-text ol {
  padding-left: 1.35em;
}

.puck-text li + li {
  margin-top: 8px;
}

.puck-heading {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: var(--nabip-section) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
}

.puck-heading h1,
.puck-heading h2,
.puck-heading h3,
.puck-heading h4 {
  margin: 0;
}

.puck-heading[data-level="1"] {
  font-size: clamp(34px, 5vw, 58px);
}

.puck-heading[data-level="2"] {
  font-size: clamp(28px, 4vw, 42px);
}

.puck-heading[data-level="3"] {
  font-size: clamp(22px, 3vw, 30px);
}

.puck-grid,
.puck-grid-preset,
.puck-columns,
.puck-flex {
  width: min(100%, var(--nabip-content));
  margin-inline: auto;
  padding-inline: var(--nabip-gutter);
}

.puck-grid,
.puck-grid-preset {
  padding-block: 18px var(--nabip-section);
}

.puck-grid-column,
.puck-columns-col,
.puck-column,
.puck-flex-item {
  min-width: 0;
}

.puck-grid-heading {
  color: var(--nabip-navy);
  font-weight: 750;
  letter-spacing: -0.02em;
}

.puck-grid-subheading {
  color: var(--nabip-muted);
}

.puck-columns {
  gap: clamp(24px, 4vw, 56px);
}

.puck-space {
  height: clamp(20px, 4vw, 64px);
}

/* Header and navigation */
.site-header {
  position: sticky;
  z-index: 30;
  top: 0;
  min-height: 80px;
  border-bottom: 1px solid rgba(216, 225, 232, 0.88);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 8px 28px rgba(22, 31, 38, 0.08);
  backdrop-filter: blur(18px);
}

.header-grid,
.header-flex {
  width: 100%;
  min-height: 80px;
  margin-inline: auto;
  padding: 10px clamp(16px, 2vw, 24px);
  box-sizing: border-box;
}

.header-grid-row,
.header-grid-zone,
.header-grid-zone--center {
  align-items: center;
}

.header-logo-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--nabip-navy);
  text-decoration: none;
}

.header-logo-img {
  display: block;
  width: auto;
  max-width: 226px;
  max-height: 58px;
  object-fit: contain;
}

.header-logo-text {
  color: var(--nabip-navy);
  font-size: 15px;
  font-weight: 750;
  line-height: 1.15;
}

.header-nav,
.nav-menu {
  display: flex;
  align-items: center;
  gap: clamp(9px, 1.2vw, 16px);
  flex-wrap: nowrap;
}

.header-grid-zone--center {
  min-width: 0;
}

.header-grid-zone--center .nav-menu {
  flex-wrap: nowrap;
}

.site-header .header-nav .nav-menu {
  gap: clamp(9px, 1.2vw, 16px);
  flex-wrap: nowrap;
}

.site-header .header-nav .nav-link,
.site-header .header-nav .nav-link-dropdown {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding-inline: 5px;
  border-radius: 0;
  color: var(--nabip-navy);
  font-family: "Montserrat", "Avenir Next", Avenir, Helvetica, Arial, sans-serif;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0;
  text-decoration: none;
  white-space: nowrap;
  transition: color 160ms ease;
}

.site-header .header-nav .nav-link:hover,
.site-header .header-nav .nav-link-dropdown:hover,
.site-header .header-nav .nav-link[aria-current="page"] {
  color: var(--nabip-teal-dark);
  background: transparent;
}

.site-header .header-nav .dropdown-arrow {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-left: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  font-size: 0;
  line-height: 0;
  transform: translateY(-2px) rotate(45deg);
  transform-origin: center;
}

.site-header .header-nav .nav-link[aria-current="page"]::after,
.site-header .header-nav .nav-link-dropdown[aria-expanded="true"]::after {
  content: none;
}

.site-header .header-nav .nav-dropdown {
  min-width: 208px;
  margin-top: 4px;
  padding: 4px;
  border: 1px solid var(--nabip-border);
  border-radius: 5px;
  background: var(--nabip-white);
  box-shadow: 0 10px 24px rgba(37, 71, 124, 0.18);
}

.site-header .header-nav .nav-dropdown .nav-link {
  display: flex;
  width: 100%;
  min-height: 36px;
  padding: 7px 9px;
  border-radius: 4px;
  box-sizing: border-box;
  color: var(--nabip-text);
  font-size: 15px;
  font-weight: 500;
}

.site-header .header-nav .nav-dropdown .nav-link:hover,
.site-header .header-nav .nav-dropdown .nav-link:focus,
.site-header .header-nav .nav-dropdown .nav-link[aria-current="page"] {
  background: var(--nabip-teal);
  color: var(--nabip-white);
}

.header-cta-button,
.puck-button,
.puck-button-container a,
.header-cta a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 11px 21px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-size: 13px;
  font-weight: 750;
  letter-spacing: 0.01em;
  text-decoration: none;
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.header-cta-button:hover,
.puck-button:hover,
.puck-button-container a:hover,
.header-cta a:hover {
  transform: translateY(-2px);
  background: var(--nabip-teal-dark);
  color: var(--nabip-white);
  box-shadow: 0 9px 20px rgba(0, 124, 120, 0.22);
}

.site-header .header-cta-button {
  border-radius: 999px;
}

.site-header .header-cta-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(0, 124, 120, 0.24);
}

.site-header .header-cta:first-of-type .header-cta-button {
  border-color: var(--nabip-blue);
  background: transparent;
  color: var(--nabip-blue);
}

.site-header .header-cta:first-of-type .header-cta-button:hover {
  background: var(--nabip-blue);
  color: var(--nabip-white);
}

.header-social,
.header-contact,
.nav-login-icon {
  color: var(--nabip-muted);
}

.mobile-nav {
  border-top: 1px solid var(--nabip-border);
  background: var(--nabip-white);
}

.mobile-nav-title {
  color: var(--nabip-navy);
  font-size: 12px;
  font-weight: 750;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.mobile-nav-login,
.mobile-nav-login-link,
.mobile-nav-portal-link,
.mobile-nav-signout-link {
  color: var(--nabip-blue);
  font-weight: 700;
}

/* Hero system */
.puck-hero {
  position: relative;
  isolation: isolate;
  width: calc(100% + 64px);
  margin-inline: -32px;
  min-height: clamp(380px, 52vw, 650px);
  overflow: hidden;
  background: var(--nabip-navy);
  color: var(--nabip-white);
}

.puck-hero::before {
  position: absolute;
  z-index: -2;
  inset: 0;
  background: linear-gradient(90deg, rgba(37, 71, 124, 0.93) 0%, rgba(37, 71, 124, 0.72) 48%, rgba(37, 71, 124, 0.5) 100%);
  content: "";
}

.puck-hero::after {
  position: absolute;
  z-index: -3;
  inset: 0;
  background: var(--nabip-blue);
  content: "";
}

.puck-hero[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"]::after {
  background: transparent;
}

.puck-hero[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"] {
  background-image: url("https://sites.getrecur.com/media/nabiptulsa/prod/64744e53-594d-492c-8fb6-6773cde3f80b/images/2026/09/9af4971e-ed44-4797-832b-7785f3fea7ec.png") !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

.puck-hero.puck-hero--standard[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"] > .puck-hero-content {
  display: flex;
  width: 100% !important;
  max-width: none !important;
  align-items: flex-start !important;
  flex-direction: column;
  margin-inline: 0 !important;
  padding-inline: clamp(20px, 5vw, 64px) !important;
  box-sizing: border-box;
  text-align: left !important;
}

.puck-hero[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"] .puck-hero-title {
  margin-inline: 0;
  font-family: "Montserrat", "Avenir Next", Avenir, Helvetica, Arial, sans-serif;
  font-weight: 800;
  letter-spacing: -0.045em;
  line-height: 1.04;
  text-align: left !important;
}

.puck-hero[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"] .puck-hero-eyebrow,
.puck-hero[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"] .puck-hero-subtitle {
  margin-right: auto;
  margin-left: 0;
  text-align: left !important;
}

.puck-hero[style*="9af4971e-ed44-4797-832b-7785f3fea7ec.png"] .puck-hero-cta {
  justify-content: flex-start !important;
  margin-right: auto;
  margin-left: 0;
}

.puck-hero--standard,
.puck-hero--carousel,
.puck-hero--video {
  min-height: clamp(440px, 57vw, 700px);
}

.puck-hero--standard .puck-hero-content,
.puck-hero--carousel .puck-hero-content,
.puck-hero--video .puck-hero-content,
.puck-hero--split .puck-hero-content {
  width: min(100%, var(--nabip-content));
  margin-inline: auto;
  padding: clamp(70px, 11vw, 150px) var(--nabip-gutter);
  box-sizing: border-box;
}

.puck-hero-content {
  position: relative;
  z-index: 1;
}

.puck-hero-eyebrow {
  margin-bottom: 18px;
  color: #8ce0dc;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.puck-hero-title {
  max-width: 780px;
  margin: 0;
  color: var(--nabip-white);
  font-size: clamp(38px, 6vw, 72px);
  font-weight: 780;
  letter-spacing: -0.055em;
  line-height: 1.02;
}

.puck-hero-subtitle {
  max-width: 650px;
  margin: 22px 0 0;
  color: rgba(255, 255, 255, 0.88);
  font-size: clamp(16px, 2vw, 21px);
  line-height: 1.55;
}

.puck-hero-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 32px;
}

.puck-hero-cta-primary,
.puck-hero-cta-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 12px 24px;
  border-radius: 7px;
  font-size: 14px;
  font-weight: 750;
  text-decoration: none;
}

.puck-hero-cta-primary {
  background: var(--nabip-teal);
  color: var(--nabip-white);
}

.puck-hero-cta-secondary {
  border: 1px solid rgba(255, 255, 255, 0.72);
  color: var(--nabip-white);
}

.puck-hero-cta-primary:hover,
.puck-hero-cta-secondary:hover {
  color: var(--nabip-white);
  transform: translateY(-2px);
}

.puck-hero--minimal {
  min-height: 260px;
}

.puck-hero--minimal .puck-hero-content,
.puck-hero--offset .puck-hero-content {
  padding-block: 72px;
}

.puck-hero--split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.9fr);
  min-height: 460px;
}

.puck-hero-split-panel {
  display: flex;
  align-items: center;
  padding: clamp(32px, 6vw, 90px);
  background: var(--nabip-navy);
}

.puck-hero-split-image {
  min-height: 100%;
  background-position: center;
  background-size: cover;
}

.puck-hero-video-el,
.puck-hero-video-overlay {
  position: absolute;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  inset: 0;
}

.puck-hero-video-overlay {
  z-index: -1;
  background: rgba(22, 31, 38, 0.42);
}

/* Cards, stats, images and CTAs */
.puck-card {
  height: 100%;
  overflow: hidden;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.puck-card:hover {
  border-color: rgba(0, 155, 149, 0.48);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-4px);
}

.puck-card--featured,
.puck-card--action {
  border-top: 4px solid var(--nabip-teal);
}

.puck-grid--quick-links {
  width: min(100%, 1280px);
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px;
  align-items: stretch;
  padding-top: 32px;
}

.puck-grid--quick-links .puck-grid-column {
  height: 100%;
  align-self: stretch;
}

.puck-grid--quick-links .puck-card--quick-link {
  height: 100%;
  min-height: 0 !important;
  border: 1px solid var(--nabip-border);
  border-left: 7px solid var(--nabip-teal);
  border-radius: 12px;
  box-shadow: 0 8px 22px rgba(37, 71, 124, 0.09);
}

@media (max-width: 700px) {
  .puck-grid--quick-links {
    grid-template-columns: 1fr !important;
  }
}

/*
 * Join member information pairing
 * Keep the native Heading and Text Pucks as authored while presenting the
 * member statement and monthly meetings as balanced adjacent sections.
 */
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners) {
  display: grid;
  grid-template-columns:
    max(var(--nabip-gutter), calc((100vw - 1280px) / 2))
    minmax(0, 1fr)
    clamp(18px, 3vw, 30px)
    minmax(0, 1fr)
    max(var(--nabip-gutter), calc((100vw - 1280px) / 2));
  column-gap: 0;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > * {
  grid-column: 1 / -1;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > h2:nth-child(3) {
  grid-column: 2;
  grid-row: 3;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(4) {
  grid-column: 2;
  grid-row: 4;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > h2:nth-child(5) {
  grid-column: 4;
  grid-row: 3;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(6) {
  grid-column: 4;
  grid-row: 4;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > :is(h2:nth-child(3), h2:nth-child(5), .puck-text:nth-child(4), .puck-text:nth-child(6)) {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > :is(.puck-text:nth-child(4), .puck-text:nth-child(6)) {
  height: 100%;
}

@media (max-width: 700px) {
  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners) {
    grid-template-columns: 1fr;
  }

  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > h2:nth-child(3) {
    grid-column: 1;
    grid-row: 3;
  }

  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(4) {
    grid-column: 1;
    grid-row: 4;
  }

  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > h2:nth-child(5) {
    grid-column: 1;
    grid-row: 5;
  }

  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(6) {
    grid-column: 1;
    grid-row: 6;
  }
}

/*
 * Scholarships partner band
 * Extend the native partner heading and grid backdrop to the viewport edges,
 * and let the final gray band meet the footer without a white spacer.
 */
main:has(#puck-content > .puck-grid--scholarship-options:nth-child(3)) {
  padding-bottom: 0 !important;
}

main:has(#puck-content > .puck-grid--scholarship-options:nth-child(3))
  + .site-footer {
  margin-top: 0 !important;
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(
    > .puck-button-container:nth-child(6)
  ):has(> .puck-grid--partners:nth-child(8))
  > :is(
    h2:nth-child(4),
    .puck-text:nth-child(5),
    .puck-button-container:nth-child(6),
    h2:nth-child(7),
    .puck-grid--partners:nth-child(8)
  ) {
  width: 100vw !important;
  max-width: none !important;
  margin-inline: calc(50% - 50vw) !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(
    > .puck-button-container:nth-child(6)
  ):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(4) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100vw - var(--nabip-content)) / 2)
  ) !important;
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(
    > .puck-button-container:nth-child(6)
  ):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(7),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(
    > .puck-button-container:nth-child(6)
  ):has(> .puck-grid--partners:nth-child(8))
  > .puck-grid--partners:nth-child(8) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100vw - var(--nabip-content)) / 2)
  ) !important;
}

.puck-grid--quick-links .puck-card-featured-content {
  padding: 30px 32px;
  box-sizing: border-box;
}

.puck-grid--quick-links .puck-grid-column:nth-child(2) .puck-card--quick-link {
  border-left-color: var(--nabip-blue);
}

.puck-grid--quick-links .puck-card-eyebrow {
  display: none;
}

.puck-grid--quick-links .puck-card-title {
  margin: 0 0 8px;
  font-size: clamp(23px, 2.4vw, 28px);
  line-height: 1.25;
}

.puck-grid--quick-links .puck-card-description {
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
}

.puck-grid--quick-links .puck-card-button {
  display: flex !important;
  width: 100%;
  min-height: 56px;
  margin-top: 22px;
  padding: 12px 20px;
  border-radius: 6px;
  box-sizing: border-box;
  font-size: 16px;
}

.puck-grid--quick-links .puck-grid-column:nth-child(2) .puck-card-button {
  border: 1px solid var(--nabip-blue);
  background: transparent;
  color: var(--nabip-blue);
}

.puck-grid--quick-links .puck-grid-column:nth-child(2) .puck-card-button:visited {
  color: var(--nabip-blue);
}

.puck-grid--quick-links .puck-grid-column:nth-child(2) .puck-card-button:hover,
.puck-grid--quick-links .puck-grid-column:nth-child(2) .puck-card-button:focus {
  background: var(--nabip-blue);
  color: var(--nabip-white);
}

.puck-grid--programs {
  gap: 18px;
  align-items: stretch;
  padding-top: 32px;
}

.puck-grid--programs .puck-grid-column {
  height: 100%;
}

.puck-grid--programs .puck-grid-column > a {
  display: block;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.puck-grid--programs .puck-card--program {
  height: 100%;
  min-height: 0 !important;
  padding: 24px 20px !important;
  gap: 12px !important;
  border: 1px solid var(--nabip-border);
  border-radius: 9px;
  background: var(--nabip-white);
  box-shadow: 0 3px 10px rgba(37, 71, 124, 0.07);
  box-sizing: border-box;
}

.puck-grid--programs .puck-card--program:hover {
  border-color: rgba(0, 155, 149, 0.42);
  box-shadow: 0 12px 28px rgba(37, 71, 124, 0.12);
  transform: translateY(-2px);
}

.puck-grid--programs .material-symbols-rounded {
  display: inline-grid;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  place-items: center;
  overflow: hidden;
  border-radius: 50%;
  background: rgba(0, 155, 149, 0.1);
  color: var(--nabip-teal-dark);
  font-size: 22px;
  line-height: 1;
}

.puck-grid--programs .puck-grid-column:nth-child(even) .material-symbols-rounded {
  background: rgba(37, 71, 124, 0.09);
  color: var(--nabip-blue);
}

.puck-grid--programs .puck-card-title {
  margin: 0 0 8px;
  font-size: 18px;
  line-height: 1.28;
}

.puck-grid--programs .puck-card-description {
  margin: 0;
  font-size: 15px;
  line-height: 1.55;
}

.puck-card--charity img {
  background: var(--nabip-white);
  object-fit: contain !important;
  object-position: center center !important;
}

.puck-card--minimal {
  border-color: transparent;
  border-radius: var(--nabip-radius);
  background: transparent;
  box-shadow: none;
}

.puck-card-title {
  color: var(--nabip-navy);
  font-size: 20px;
  font-weight: 750;
  letter-spacing: -0.025em;
  line-height: 1.22;
}

.puck-card-description {
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.65;
}

.puck-card-eyebrow,
.puck-card-meta-label {
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.puck-card-meta,
.puck-card-meta-row {
  color: var(--nabip-muted);
  font-size: 12px;
}

.puck-card-meta-value {
  color: var(--nabip-text);
  font-weight: 650;
}

.puck-card-meta-link {
  color: var(--nabip-blue);
}

.puck-card-avatar,
.puck-card-avatar-img {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  object-fit: cover;
}

.puck-card-avatar--ring {
  padding: 4px;
  border: 2px solid var(--nabip-teal);
  background: var(--nabip-white);
}

.puck-card-featured-overlay,
.puck-card-featured-content {
  position: relative;
}

.puck-card-button {
  color: var(--nabip-white);
  font-weight: 750;
  text-decoration: none;
}

.puck-card .puck-card-button:visited,
.puck-card .puck-card-button:hover,
.puck-card .puck-card-button:focus,
.puck-card .puck-card-button:active {
  color: var(--nabip-white);
}

.puck-stats {
  width: min(100%, var(--nabip-content));
  margin-inline: auto;
  padding: var(--nabip-section) var(--nabip-gutter);
  background: var(--nabip-navy);
  color: var(--nabip-white);
}

.puck-stats-title {
  color: var(--nabip-white);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
}

.puck-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin-top: 28px;
}

.puck-stat-card {
  padding: 24px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--nabip-radius);
  background: rgba(255, 255, 255, 0.06);
}

.puck-stat-value {
  color: #8ce0dc;
  font-size: clamp(28px, 4vw, 48px);
  font-weight: 780;
  line-height: 1;
}

.puck-stat-label {
  margin-top: 10px;
  color: var(--nabip-white);
  font-weight: 750;
}

.puck-stat-description {
  margin-top: 6px;
  color: rgba(255, 255, 255, 0.68);
  font-size: 13px;
}

.puck-cta {
  width: min(100%, var(--nabip-content));
  margin: var(--nabip-section) auto;
  padding: clamp(32px, 6vw, 64px) var(--nabip-gutter);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-navy);
  color: var(--nabip-white);
}

.puck-cta-title {
  color: var(--nabip-white);
  font-size: clamp(28px, 4vw, 46px);
  font-weight: 750;
  letter-spacing: -0.04em;
}

.puck-cta-description {
  max-width: 680px;
  color: rgba(255, 255, 255, 0.78);
}

.puck-cta--advocacy .puck-cta-description {
  margin-inline: auto;
  text-align: center;
}

.puck-cta-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.puck-cta-primary,
.puck-cta-secondary {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border-radius: 7px;
  font-weight: 750;
  text-decoration: none;
}

.puck-cta-primary {
  background: var(--nabip-teal);
  color: var(--nabip-white);
}

.puck-cta-secondary {
  border: 1px solid rgba(255, 255, 255, 0.55);
  color: var(--nabip-white);
}

.puck-image,
.puck-video {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: 18px var(--nabip-gutter) var(--nabip-section);
}

.puck-image-img,
.puck-image-figure img,
.puck-video-media {
  display: block;
  width: 100%;
  border-radius: var(--nabip-radius-lg);
  object-fit: cover;
  box-shadow: var(--nabip-shadow-sm);
}

.puck-image-figure {
  margin: 0;
}

.puck-image-caption {
  margin-top: 10px;
  color: var(--nabip-muted);
  font-size: 12px;
  text-align: center;
}

.puck-image-viewer-trigger {
  cursor: zoom-in;
}

.puck-image-viewer-overlay {
  background: rgba(22, 31, 38, 0.92);
}

.puck-image-viewer-img {
  max-width: min(92vw, 1400px);
  max-height: 86vh;
}

.puck-image-viewer-close,
.puck-image-viewer-previous,
.puck-image-viewer-next {
  color: var(--nabip-white);
}

/* Native Recur data widgets: complete decoration because advanced mode owns appearance. */
.recur-event-list,
.recur-product-list,
.recur-member-directory,
.recur-nl {
  width: min(100%, var(--nabip-content));
  margin-inline: auto;
  padding: 18px var(--nabip-gutter) var(--nabip-section);
}

.recur-event-list-title,
.recur-product-list-title,
.recur-member-dir-title {
  color: var(--nabip-navy);
  font-size: clamp(26px, 4vw, 40px);
  font-weight: 750;
  letter-spacing: -0.035em;
}

.recur-event-list-grid,
.recur-product-list-grid,
.recur-member-dir-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-top: 26px;
}

.recur-event-card,
.recur-product-card,
.recur-member-dir-card {
  overflow: hidden;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
}

.recur-event-card-image,
.recur-product-card-image,
.recur-member-dir-avatar {
  display: block;
  width: 100%;
  height: 190px;
  object-fit: cover;
  background: var(--nabip-surface-blue);
}

.recur-event-card-body,
.recur-product-card-body {
  padding: 22px;
}

.recur-event-card-title,
.recur-product-card-title,
.recur-member-dir-name {
  color: var(--nabip-navy);
  font-weight: 750;
  line-height: 1.25;
}

.recur-event-card-date,
.recur-product-card-price,
.recur-member-dir-meta {
  color: var(--nabip-teal-dark);
  font-size: 13px;
  font-weight: 700;
}

.recur-event-card-description,
.recur-product-card-description,
.recur-member-dir-row,
.recur-member-dir-empty {
  color: var(--nabip-muted);
  font-size: 14px;
}

.recur-event-card-button,
.recur-product-card-button,
.recur-member-dir-page-btn {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  padding: 8px 16px;
  border-radius: 6px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-size: 13px;
  font-weight: 750;
  text-decoration: none;
}

.recur-event-list-empty,
.recur-product-list-empty,
.recur-member-dir-empty {
  padding: 36px 24px;
  border: 1px dashed var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-surface);
  text-align: center;
}

.recur-event-calendar-title {
  color: var(--nabip-navy);
  font-weight: 750;
}

.recur-event-calendar-day,
.recur-event-calendar-event {
  border-color: var(--nabip-border);
}

.recur-event-modal-backdrop,
.recur-member-dir-modal-backdrop,
.recur-nl-overlay {
  background: rgba(22, 31, 38, 0.68);
}

.recur-event-modal-title,
.recur-member-dir-modal-title,
.recur-nl-modal-title {
  color: var(--nabip-navy);
  font-weight: 750;
}

.recur-event-modal-body,
.recur-member-dir-modal-body {
  color: var(--nabip-text);
}

.recur-event-modal-button,
.recur-member-dir-modal-contact {
  color: var(--nabip-teal-dark);
  font-weight: 750;
}

.recur-member-dir-search,
.recur-nl-input,
.recur-nl-field input,
.recur-nl-field textarea,
.recur-nl-field select {
  min-height: 46px;
  box-sizing: border-box;
  border: 1px solid var(--nabip-border);
  border-radius: 7px;
  background: var(--nabip-white);
  color: var(--nabip-text);
  padding: 10px 13px;
}

.recur-member-dir-chip,
.recur-member-dir-chip-active,
.recur-member-dir-clear {
  border-radius: 999px;
  border: 1px solid var(--nabip-border);
  color: var(--nabip-blue);
  font-size: 12px;
  font-weight: 700;
}

.recur-member-dir-chip-active {
  border-color: var(--nabip-teal);
  background: var(--nabip-teal);
  color: var(--nabip-white);
}

.recur-member-dir-list {
  display: grid;
  gap: 12px;
}

.recur-member-dir-pagination,
.recur-member-dir-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 24px;
}

.recur-member-dir-page-label,
.recur-member-dir-meta-sm,
.recur-member-dir-modal-meta,
.recur-member-dir-modal-location,
.recur-member-dir-modal-tags,
.recur-member-dir-modal-bio,
.recur-member-dir-phone,
.recur-member-dir-link {
  color: var(--nabip-muted);
  font-size: 13px;
}

.recur-member-dir-modal {
  width: min(680px, calc(100% - 32px));
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-md);
}

.recur-member-dir-modal-close {
  color: var(--nabip-muted);
}

.recur-nl-form {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.recur-nl-input {
  flex: 1 1 220px;
}

.recur-nl-button,
.recur-nl-submit {
  min-height: 46px;
  padding: 10px 20px;
  border: 0;
  border-radius: 7px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-weight: 750;
}

.recur-nl-description,
.recur-nl-label {
  color: var(--nabip-muted);
  font-size: 13px;
}

.recur-nl-modal {
  width: min(560px, calc(100% - 32px));
  padding: 28px;
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
}

.recur-nl-modal-close {
  color: var(--nabip-muted);
}

.recur-nl-checkbox-row {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  color: var(--nabip-muted);
  font-size: 12px;
}

.recur-nl-hp {
  position: absolute;
  left: -10000px;
}

.recur-nl-error {
  color: #a33434;
}

.recur-nl-success {
  color: #146c4a;
}

/* Footer */
.site-footer {
  margin-top: var(--nabip-section);
  background: var(--nabip-navy);
  color: rgba(255, 255, 255, 0.74);
}

.site-footer-content {
  display: grid;
  grid-template-columns: minmax(220px, 1.3fr) repeat(3, minmax(150px, 1fr));
  gap: 36px;
  width: min(100%, var(--nabip-content));
  margin-inline: auto;
  padding: 68px var(--nabip-gutter);
  box-sizing: border-box;
}

.site-footer-section {
  min-width: 0;
}

.site-footer-title {
  margin: 0 0 16px;
  color: var(--nabip-white);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.site-footer-logo {
  display: block;
  max-width: 220px;
  max-height: 62px;
  margin-bottom: 18px;
  object-fit: contain;
}

.site-footer-text,
.site-footer-description {
  max-width: 320px;
  color: rgba(255, 255, 255, 0.68);
  font-size: 13px;
  line-height: 1.75;
}

.site-footer-links,
.site-footer-contact,
.site-footer-social {
  display: grid;
  gap: 9px;
}

.site-footer-links a,
.site-footer-contact a,
.site-footer-social-link {
  color: rgba(255, 255, 255, 0.74);
  font-size: 13px;
  text-decoration: none;
}

.site-footer-links a:hover,
.site-footer-contact a:hover,
.site-footer-social-link:hover {
  color: #8ce0dc;
}

.site-footer-custom,
.site-footer-empty {
  color: rgba(255, 255, 255, 0.6);
  font-size: 13px;
}

.footer-bottom-bar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  padding: 18px var(--nabip-gutter);
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.54);
  font-size: 12px;
}

.footer-bottom-bar-link {
  color: rgba(255, 255, 255, 0.72);
}

/* Forms and native legal/media components */
.puck-contact,
.puck-file,
.puck-pdf-embed {
  width: min(100%, 820px);
  margin: 0 auto;
  padding: 24px var(--nabip-gutter) var(--nabip-section);
}

.puck-contact label,
.puck-contact legend {
  color: var(--nabip-navy);
  font-size: 13px;
  font-weight: 700;
}

.puck-contact input,
.puck-contact textarea,
.puck-contact select {
  width: 100%;
  min-height: 46px;
  box-sizing: border-box;
  margin-top: 7px;
  padding: 10px 13px;
  border: 1px solid var(--nabip-border);
  border-radius: 7px;
  background: var(--nabip-white);
  color: var(--nabip-text);
}

.puck-contact textarea {
  min-height: 150px;
}

.puck-contact button,
.puck-file a {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  padding: 10px 20px;
  border: 0;
  border-radius: 7px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-weight: 750;
  text-decoration: none;
}

.puck-contact input:focus,
.puck-contact textarea:focus,
.puck-contact select:focus {
  border-color: var(--nabip-teal);
  outline: 3px solid rgba(0, 155, 149, 0.2);
  outline-offset: 1px;
}

.puck-contact [aria-invalid="true"],
.puck-contact .error input,
.puck-contact .error textarea,
.puck-contact .error select,
.puck-contact .field-error input,
.puck-contact .field-error textarea,
.puck-contact .field-error select {
  border-color: #b42318;
}

.puck-contact .error,
.puck-contact .error-message,
.puck-contact .field-error,
.puck-contact .form-error {
  color: #b42318;
  font-size: 0.9rem;
  font-weight: 650;
}

.puck-contact .success,
.puck-contact .success-message,
.puck-contact .form-success {
  padding: 16px 18px;
  border: 1px solid rgba(0, 155, 149, 0.35);
  border-radius: var(--nabip-radius);
  background: rgba(0, 155, 149, 0.08);
  color: var(--nabip-navy);
  font-weight: 650;
}

.puck-contact button:hover,
.puck-contact button:focus-visible {
  background: var(--nabip-blue);
}

/* Home awards gallery
   The awards grid is intentionally scoped here so native Image components
   elsewhere retain their editorial, full-bleed treatment. */
.puck-grid--awards {
  position: relative;
  isolation: isolate;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: start;
  gap: clamp(18px, 2.5vw, 30px);
  padding-top: 28px;
  padding-bottom: clamp(52px, 6vw, 76px);
}

.puck-grid--awards::before {
  position: absolute;
  z-index: -1;
  top: 0;
  right: var(--nabip-gutter);
  left: var(--nabip-gutter);
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(37, 71, 124, 0.18) 18%,
    rgba(0, 155, 149, 0.3) 50%,
    rgba(37, 71, 124, 0.18) 82%,
    transparent
  );
  content: "";
}

.puck-grid--awards .puck-grid-column {
  display: grid;
  align-content: start;
  gap: clamp(18px, 2.5vw, 28px);
}

.puck-grid--awards .puck-image {
  position: relative;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 10px;
  border: 1px solid transparent;
  border-radius: var(--nabip-radius-lg);
  background:
    linear-gradient(145deg, rgba(234, 241, 247, 0.96), rgba(255, 255, 255, 0.98) 62%),
    var(--nabip-white);
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.9) inset,
    0 8px 20px rgba(37, 71, 124, 0.08);
  transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}

.puck-grid--awards .puck-image::before {
  position: absolute;
  top: -1px;
  right: 22px;
  left: 22px;
  height: 3px;
  border-radius: 0 0 4px 4px;
  background: var(--nabip-teal);
  content: "";
}

.puck-grid--awards .puck-grid-column:nth-child(even) .puck-image::before {
  background: var(--nabip-blue-light);
}

.puck-grid--awards .puck-image:hover {
  border-color: transparent;
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.9) inset,
    0 14px 30px rgba(37, 71, 124, 0.14);
  transform: translateY(-3px);
}

.puck-grid--awards .puck-image:focus-within {
  border-color: transparent;
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.9) inset,
    0 0 0 3px rgba(0, 155, 149, 0.16),
    0 12px 28px rgba(37, 71, 124, 0.12);
}

.puck-grid--awards .puck-image-figure {
  display: flex;
  min-height: clamp(152px, 16vw, 214px);
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: clamp(10px, 1.5vw, 18px);
  border-radius: calc(var(--nabip-radius-lg) - 5px);
  background: rgba(255, 255, 255, 0.72);
}

.puck-grid--awards .puck-image-img,
.puck-grid--awards .puck-image-figure img {
  display: block;
  width: 100%;
  height: clamp(136px, 14vw, 188px) !important;
  max-width: 100%;
  border-radius: 2px;
  object-fit: contain !important;
  object-position: center !important;
  box-shadow: none;
  transition: transform 220ms ease;
}

.puck-grid--awards .puck-image:hover .puck-image-img,
.puck-grid--awards .puck-image:hover .puck-image-figure img {
  transform: scale(1.025);
}

.puck-grid--awards .puck-image-caption {
  margin: 11px 4px 2px;
  color: var(--nabip-navy);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.015em;
  line-height: 1.45;
  text-align: center;
}

.puck-grid--awards .puck-image-viewer-trigger {
  border: 0 !important;
  border-radius: calc(var(--nabip-radius-lg) - 5px);
  appearance: none;
  background: transparent !important;
  box-shadow: none;
  outline-offset: 4px;
}

.puck-grid--awards .puck-image-viewer-trigger:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.58);
}

@media (max-width: 820px) {
  .puck-grid--awards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .puck-grid--awards .puck-image-figure {
    min-height: clamp(150px, 24vw, 196px);
  }

  .puck-grid--awards .puck-image-img,
  .puck-grid--awards .puck-image-figure img {
    height: clamp(132px, 21vw, 170px) !important;
  }
}

@media (max-width: 560px) {
  .puck-grid--awards {
    grid-template-columns: 1fr !important;
    gap: 18px;
    padding-top: 22px;
  }

  .puck-grid--awards .puck-grid-column {
    gap: 18px;
  }

  .puck-grid--awards .puck-image {
    padding: 9px;
  }

  .puck-grid--awards .puck-image-figure {
    min-height: 168px;
    padding: 12px 16px;
  }

  .puck-grid--awards .puck-image-img,
  .puck-grid--awards .puck-image-figure img {
    height: 148px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .puck-grid--awards .puck-image,
  .puck-grid--awards .puck-image-img,
  .puck-grid--awards .puck-image-figure img {
    transition: none;
  }

  .puck-grid--awards .puck-image:hover,
  .puck-grid--awards .puck-image:hover .puck-image-img,
  .puck-grid--awards .puck-image:hover .puck-image-figure img {
    transform: none;
  }
}

/*
 * Home charitable organizations
 * A deliberately editorial pair: generous image space, a quiet blue-gray
 * ground, and a teal "support" edge rather than a generic CMS card treatment.
 * The scope keeps this treatment exclusive to the two native Home cards.
 */
.puck-grid--charitable-organizations {
  position: relative;
  isolation: isolate;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(20px, 3vw, 32px);
  align-items: stretch;
  padding-top: 30px;
  padding-bottom: clamp(56px, 7vw, 92px);
}

.puck-grid--charitable-organizations::before {
  position: absolute;
  z-index: -1;
  top: 0;
  right: var(--nabip-gutter);
  left: var(--nabip-gutter);
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(37, 71, 124, 0.18) 18%,
    rgba(0, 155, 149, 0.42) 50%,
    rgba(37, 71, 124, 0.18) 82%,
    transparent
  );
  content: "";
}

.puck-grid--charitable-organizations .puck-grid-column {
  display: flex;
  min-width: 0;
  height: 100%;
}

.puck-grid--charitable-organizations .puck-card--charity {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 100%;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(37, 71, 124, 0.18);
  border-radius: 18px;
  background:
    linear-gradient(145deg, rgba(234, 241, 247, 0.76), rgba(255, 255, 255, 0.98) 42%),
    var(--nabip-white);
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.92) inset,
    0 10px 26px rgba(37, 71, 124, 0.09);
  transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}

.puck-grid--charitable-organizations .puck-card--charity::before {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 28px;
  left: 28px;
  height: 4px;
  border-radius: 0 0 6px 6px;
  background: var(--nabip-teal);
  content: "";
}

.puck-grid--charitable-organizations .puck-grid-column:nth-child(2) .puck-card--charity::before {
  background: var(--nabip-blue-light);
}

.puck-grid--charitable-organizations .puck-card--charity:hover,
.puck-grid--charitable-organizations .puck-card--charity:focus-within {
  border-color: rgba(0, 155, 149, 0.58);
  box-shadow:
    0 2px 0 rgba(255, 255, 255, 0.92) inset,
    0 18px 38px rgba(37, 71, 124, 0.15);
  transform: translateY(-5px);
}

.puck-grid--charitable-organizations .puck-card--charity:focus-within {
  outline: 3px solid rgba(0, 155, 149, 0.2);
  outline-offset: 3px;
}

.puck-grid--charitable-organizations .puck-card--charity .puck-card-image,
.puck-grid--charitable-organizations .puck-card--charity .puck-card-media,
.puck-grid--charitable-organizations .puck-card--charity figure,
.puck-grid--charitable-organizations .puck-card--charity > div:first-child {
  display: flex;
  height: clamp(200px, 20vw, 252px) !important;
  min-height: clamp(170px, 20vw, 252px);
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: clamp(18px, 3vw, 32px);
  border-bottom: 1px solid rgba(37, 71, 124, 0.1);
  background: rgba(255, 255, 255, 0.78);
  box-sizing: border-box;
}

.puck-grid--charitable-organizations .puck-card--charity img,
.puck-grid--charitable-organizations .puck-card--charity .puck-card-image img,
.puck-grid--charitable-organizations .puck-card--charity .puck-card-media img,
.puck-grid--charitable-organizations .puck-card--charity figure img {
  display: block;
  width: 100%;
  height: auto !important;
  max-width: 100%;
  max-height: 188px;
  border-radius: 6px;
  object-fit: contain !important;
  object-position: center center !important;
  box-shadow: none;
  transition: transform 220ms ease;
}

.puck-grid--charitable-organizations .puck-card--charity:hover img,
.puck-grid--charitable-organizations .puck-card--charity:focus-within img {
  transform: scale(1.025);
}

.puck-grid--charitable-organizations .puck-card--charity .puck-card-featured-content,
.puck-grid--charitable-organizations .puck-card--charity .puck-card-content,
.puck-grid--charitable-organizations .puck-card--charity .puck-card-body,
.puck-grid--charitable-organizations .puck-card--charity > div:last-child {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: clamp(22px, 3vw, 32px);
  box-sizing: border-box;
}

.puck-grid--charitable-organizations .puck-card--charity .puck-card-title {
  max-width: 26ch;
  margin: 0 0 9px;
  color: var(--nabip-navy);
  font-size: clamp(21px, 2.4vw, 29px);
  line-height: 1.18;
}

.puck-grid--charitable-organizations .puck-card--charity .puck-card-description {
  max-width: 48ch;
  margin: 0;
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.65;
}

.puck-grid--charitable-organizations .puck-card--charity .puck-card-button {
  display: inline-flex;
  width: fit-content;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  margin-top: auto;
  padding: 11px 19px;
  border: 1px solid var(--nabip-teal);
  border-radius: 7px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.01em;
  text-decoration: none;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.puck-grid--charitable-organizations .puck-card--charity .puck-card-button:hover,
.puck-grid--charitable-organizations .puck-card--charity .puck-card-button:focus-visible {
  border-color: var(--nabip-blue);
  background: var(--nabip-blue);
  color: var(--nabip-white);
  transform: translateY(-2px);
}

@media (max-width: 700px) {
  .puck-grid--charitable-organizations {
    grid-template-columns: 1fr !important;
    gap: 20px;
    padding-top: 24px;
  }

  .puck-grid--charitable-organizations .puck-card--charity .puck-card-image,
  .puck-grid--charitable-organizations .puck-card--charity .puck-card-media,
  .puck-grid--charitable-organizations .puck-card--charity figure,
  .puck-grid--charitable-organizations .puck-card--charity > div:first-child {
    height: 174px !important;
    min-height: 174px;
  }

  .puck-grid--charitable-organizations .puck-card--charity img {
    max-height: 138px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .puck-grid--charitable-organizations .puck-card--charity,
  .puck-grid--charitable-organizations .puck-card--charity img,
  .puck-grid--charitable-organizations .puck-card--charity .puck-card-button {
    transition: none;
  }

  .puck-grid--charitable-organizations .puck-card--charity:hover,
  .puck-grid--charitable-organizations .puck-card--charity:hover img,
  .puck-grid--charitable-organizations .puck-card--charity .puck-card-button:hover {
    transform: none;
  }
}

.puck-file {
  text-align: center;
}

.puck-pdf-embed iframe {
  width: 100%;
  min-height: 680px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
}

.page-title {
  color: var(--nabip-navy);
  font-weight: 780;
  letter-spacing: -0.04em;
}

@media (min-width: 981px) and (max-width: 1300px) {
  .header-logo-img {
    max-width: 190px;
  }

  .site-header .header-nav .nav-menu {
    gap: 4px;
  }

  .site-header .header-nav .nav-link,
  .site-header .header-nav .nav-link-dropdown {
    font-size: 15px;
  }

  .site-header .header-cta-button {
    padding-inline: 7px;
    font-size: 11px;
  }
}

@media (max-width: 980px) {
  .header-nav,
  .nav-menu {
    gap: 8px;
  }

  .header-logo-img {
    max-width: 190px;
  }

  .recur-event-list-grid,
  .recur-product-list-grid,
  .recur-member-dir-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .puck-stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .site-footer-content {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .site-header,
  .header-grid,
  .header-flex {
    min-height: 68px;
  }

  .header-logo-img {
    max-width: 170px;
    max-height: 48px;
  }

  .header-cta,
  .header-social,
  .header-contact {
    display: none;
  }

  .mobile-nav {
    padding: 12px var(--nabip-gutter) 20px;
  }

  .mobile-nav .nav-link,
  .mobile-nav .nav-link-dropdown {
    display: flex;
    width: 100%;
    padding: 11px 0;
    border-bottom: 1px solid var(--nabip-border);
  }

  .puck-hero--split {
    display: block;
  }

  .puck-hero-split-panel {
    min-height: 380px;
  }

  .puck-hero-split-image {
    min-height: 280px;
  }

  .puck-hero-title {
    font-size: clamp(36px, 12vw, 54px);
  }

  .puck-hero-cta,
  .puck-cta-buttons {
    align-items: stretch;
    flex-direction: column;
  }

  .puck-hero-cta-primary,
  .puck-hero-cta-secondary,
  .puck-cta-primary,
  .puck-cta-secondary {
    width: 100%;
    box-sizing: border-box;
  }

  .puck-contact button {
    width: 100%;
  }

  .recur-event-list-grid,
  .recur-product-list-grid,
  .recur-member-dir-grid,
  .puck-stats-grid,
  .site-footer-content {
    grid-template-columns: 1fr;
  }

  .site-footer-content {
    gap: 28px;
    padding-block: 48px;
  }

  .footer-bottom-bar {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    transition-duration: 0.01ms;
    animation-duration: 0.01ms;
    animation-iteration-count: 1;
  }
}

/*
 * Home advocacy CTA
 * A composed "briefing card" treatment: quiet blue-gray field, navy rule,
 * and a deliberate teal action. Scoped to the native variant so every other
 * CTA keeps the shared site treatment.
 */
.puck-cta.puck-cta--advocacy {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: grid;
  justify-items: center;
  width: min(100% - clamp(32px, 6vw, 64px), var(--nabip-content));
  min-height: 270px;
  margin-block: clamp(52px, 8vw, 104px);
  padding: clamp(42px, 6vw, 72px) clamp(24px, 7vw, 112px);
  border: 1px solid rgba(37, 71, 124, 0.18);
  border-top: 8px solid var(--nabip-navy);
  border-radius: 4px 4px 18px 18px;
  background:
    linear-gradient(112deg, rgba(0, 155, 149, 0.08), transparent 33%),
    var(--nabip-surface-blue);
  color: var(--nabip-text);
  box-shadow:
    0 18px 0 -12px rgba(0, 155, 149, 0.22),
    0 22px 48px rgba(37, 71, 124, 0.13);
  box-sizing: border-box;
  text-align: center;
}

.puck-cta.puck-cta--advocacy::before {
  position: absolute;
  z-index: -1;
  top: -86px;
  right: clamp(18px, 8vw, 120px);
  width: 196px;
  height: 196px;
  border: 1px solid rgba(0, 155, 149, 0.24);
  border-radius: 50%;
  box-shadow:
    0 0 0 20px rgba(0, 155, 149, 0.045),
    0 0 0 42px rgba(37, 71, 124, 0.035);
  content: "";
  pointer-events: none;
}

.puck-cta.puck-cta--advocacy::after {
  position: absolute;
  z-index: -1;
  bottom: 26px;
  left: 0;
  width: min(32vw, 330px);
  height: 2px;
  background: linear-gradient(90deg, var(--nabip-teal), rgba(0, 155, 149, 0));
  content: "";
  pointer-events: none;
}

.puck-cta--advocacy .puck-cta-title,
.puck-cta--advocacy .puck-cta-description,
.puck-cta--advocacy .puck-cta-buttons {
  position: relative;
  z-index: 1;
}

.puck-cta--advocacy .puck-cta-title {
  max-width: 720px;
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(30px, 4.2vw, 50px);
  font-weight: 800;
  letter-spacing: -0.05em;
  line-height: 1.04;
  text-align: center;
}

.puck-cta--advocacy .puck-cta-title::after {
  display: block;
  width: 44px;
  height: 4px;
  margin: 18px auto 0;
  border-radius: 999px;
  background: var(--nabip-teal);
  content: "";
}

.puck-cta--advocacy .puck-cta-description {
  max-width: 650px;
  margin: 20px auto 0;
  color: var(--nabip-text);
  font-size: clamp(15px, 1.5vw, 18px);
  line-height: 1.6;
  text-align: center;
}

.puck-cta--advocacy .puck-cta-buttons {
  justify-content: center;
  margin-top: 30px;
}

.puck-cta--advocacy .puck-cta-primary {
  min-width: 218px;
  min-height: 52px;
  padding: 12px 24px;
  border: 2px solid var(--nabip-teal);
  border-radius: 5px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.045em;
  transition:
    transform 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.puck-cta--advocacy .puck-cta-primary:hover {
  transform: translateY(-3px);
  border-color: var(--nabip-teal-dark);
  background: var(--nabip-teal-dark);
  color: var(--nabip-white);
  box-shadow: 0 10px 20px rgba(0, 124, 120, 0.24);
}

.puck-cta--advocacy .puck-cta-primary:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.45);
  outline-offset: 4px;
  box-shadow: 0 0 0 3px var(--nabip-surface-blue);
}

@media (max-width: 700px) {
  .puck-cta.puck-cta--advocacy {
    width: calc(100% - 32px);
    min-height: 0;
    margin-block: 48px;
    padding: 38px 22px 44px;
    border-top-width: 6px;
  }

  .puck-cta.puck-cta--advocacy::before {
    right: -92px;
    top: -74px;
    width: 170px;
    height: 170px;
  }

  .puck-cta.puck-cta--advocacy::after {
    bottom: 22px;
    width: 46vw;
  }

  .puck-cta--advocacy .puck-cta-title {
    font-size: clamp(29px, 9vw, 40px);
  }

  .puck-cta--advocacy .puck-cta-description {
    font-size: 15px;
  }

  .puck-cta--advocacy .puck-cta-primary {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .puck-cta--advocacy .puck-cta-primary {
    transition: none;
  }
}

/*
 * Home partner grid
 * Eight native partner cards, presented as a compact recognition wall rather
 * than generic content cards. Recur emits each card as an anchor with two
 * unclassed direct child divs; the first is the fixed-height logo stage.
 */
.puck-grid--partners {
  position: relative;
  isolation: isolate;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 24px);
  align-items: stretch;
  padding-top: 28px;
  padding-bottom: clamp(26px, 3.5vw, 42px);
}

main:has(.puck-grid--partners) {
  padding-bottom: 16px;
}

main:has(.puck-grid--partners) + .site-footer {
  margin-top: clamp(28px, 3.7vw, 44px);
}

.puck-grid--partners .puck-grid-column {
  display: grid;
  min-width: 0;
  gap: clamp(14px, 2vw, 22px);
  align-content: stretch;
}

.puck-grid--partners .puck-grid-column > a {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(37, 71, 124, 0.16);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(234, 241, 247, 0.72), rgba(255, 255, 255, 0.98) 54%),
    var(--nabip-white);
  color: inherit;
  text-decoration: none;
  box-shadow: 0 5px 16px rgba(37, 71, 124, 0.07);
  transition:
    transform 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.puck-grid--partners .puck-grid-column > a::after {
  position: absolute;
  top: calc(50% + 58px);
  right: 16px;
  bottom: auto;
  width: 18px;
  height: 18px;
  border-top: 1.5px solid var(--nabip-teal);
  border-right: 1.5px solid var(--nabip-teal);
  content: "";
  opacity: 0;
  transform: translate(-4px, -50%) rotate(45deg);
  transition: transform 180ms ease, opacity 180ms ease;
}

.puck-grid--partners .puck-grid-column > a > div:first-child {
  display: grid;
  width: 100%;
  height: 116px !important;
  min-height: 116px;
  flex: 0 0 116px;
  place-items: center;
  padding: 16px 18px 10px;
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.66);
  border-bottom: 1px solid rgba(37, 71, 124, 0.1);
}

.puck-grid--partners .puck-grid-column > a > div:first-child img {
  display: block;
  width: auto !important;
  max-width: 100%;
  height: auto !important;
  max-height: 82px;
  object-fit: contain !important;
  object-position: center center !important;
}

.puck-grid--partners .puck-grid-column > a > div:nth-child(2) {
  display: flex;
  min-width: 0;
  min-height: 56px;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: center;
  padding: 13px 38px 15px 16px;
  box-sizing: border-box;
}

.puck-grid--partners .puck-card-title {
  display: -webkit-box;
  overflow: hidden;
  margin: 0;
  color: var(--nabip-navy);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: -0.015em;
  line-height: 1.25;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.puck-grid--partners .puck-card-description {
  display: -webkit-box;
  overflow: hidden;
  margin: 4px 0 0;
  color: var(--nabip-muted);
  font-size: 11px;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.puck-grid--partners .puck-grid-column > a:hover,
.puck-grid--partners .puck-grid-column > a:focus-visible {
  border-color: rgba(0, 155, 149, 0.58);
  box-shadow: 0 13px 26px rgba(37, 71, 124, 0.14);
  color: inherit;
  transform: translateY(-3px);
}

.puck-grid--partners .puck-grid-column > a:hover::after,
.puck-grid--partners .puck-grid-column > a:focus-visible::after {
  opacity: 1;
  transform: translate(0, -50%) rotate(45deg);
}

.puck-grid--partners .puck-grid-column > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.38);
  outline-offset: 4px;
}

@media (max-width: 980px) {
  .puck-grid--partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 560px) {
  .puck-grid--partners {
    grid-template-columns: 1fr !important;
    gap: 14px;
    padding-top: 20px;
  }

  .puck-grid--partners .puck-grid-column {
    gap: 14px;
  }

  .puck-grid--partners .puck-grid-column > a > div:first-child {
    height: 108px !important;
    min-height: 108px;
    flex-basis: 108px;
  }

  .puck-grid--partners .puck-grid-column > a > div:first-child img {
    max-height: 76px;
  }

  .puck-grid--partners .puck-grid-column > a::after {
    top: calc(50% + 54px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .puck-grid--partners .puck-grid-column > a,
  .puck-grid--partners .puck-grid-column > a::after {
    transition: none;
  }

  .puck-grid--partners .puck-grid-column > a:hover,
  .puck-grid--partners .puck-grid-column > a:focus-visible {
    transform: none;
  }
}

/*
 * About Us interior page
 * Keep the Home design language while giving this narrative page a quieter
 * editorial rhythm. The selectors are anchored to its unique mission grid so
 * these refinements do not alter other pages that reuse native components.
 */
main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-hero[style*="5e4492fb-4d1a-45ed-90cc-f304f0170931.jpg"] {
  min-height: clamp(360px, 38vw, 480px) !important;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-hero[style*="5e4492fb-4d1a-45ed-90cc-f304f0170931.jpg"]
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents) .puck-heading {
  padding-top: clamp(52px, 6vw, 76px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision {
  gap: clamp(18px, 3vw, 30px);
  padding-top: 12px;
  padding-bottom: clamp(44px, 6vw, 72px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-grid-column {
  display: flex;
  min-width: 0;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-card {
  display: flex;
  width: 100%;
  min-height: 100%;
  flex-direction: column;
  border: 1px solid var(--nabip-border);
  border-top: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  text-align: left !important;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-grid-column:nth-child(2)
  .puck-card {
  border-top-color: var(--nabip-blue);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-card
  > div {
  display: flex;
  height: 100%;
  flex-direction: column;
  padding: clamp(26px, 3vw, 38px) clamp(24px, 3vw, 34px);
  box-sizing: border-box;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-card-eyebrow {
  margin-bottom: 10px;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-card-title {
  margin: 0 0 12px;
  font-size: clamp(21px, 2.2vw, 27px);
  line-height: 1.22;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-card-description {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-card:hover {
  border-color: rgba(0, 155, 149, 0.48);
  border-top-color: var(--nabip-teal);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  .puck-grid-column:nth-child(2)
  .puck-card:hover {
  border-top-color: var(--nabip-blue);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--mission-vision
  + h2
  + .puck-grid--ethics {
  position: relative;
  margin-bottom: clamp(18px, 3vw, 30px);
  padding: 0;
  border: 1px solid rgba(37, 71, 124, 0.14);
  border-left: 6px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: linear-gradient(135deg, var(--nabip-surface-blue), var(--nabip-white));
  box-shadow: 0 8px 24px rgba(37, 71, 124, 0.06);
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0;
  overflow: hidden;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--ethics
  .puck-grid-column {
  min-width: 0;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--ethics
  .puck-grid-column:nth-child(2) {
  border-left: 1px solid rgba(37, 71, 124, 0.14);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--ethics
  .puck-text {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(28px, 4vw, 46px) clamp(24px, 4vw, 44px) !important;
  box-sizing: border-box;
  line-height: 1.75;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents {
  gap: clamp(16px, 2vw, 24px);
  padding-top: 12px;
  padding-bottom: clamp(48px, 6vw, 76px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column {
  display: flex;
  min-width: 0;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div {
  display: flex;
  width: 100%;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a {
  display: flex !important;
  width: 100%;
  min-height: 100%;
  align-items: center;
  padding: 18px 20px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  box-shadow: 0 6px 18px rgba(37, 71, 124, 0.06);
  color: inherit;
  text-align: left;
  text-decoration: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a:hover,
main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a:focus-visible {
  border-color: rgba(0, 155, 149, 0.55);
  box-shadow: 0 12px 26px rgba(37, 71, 124, 0.12);
  color: inherit;
  transform: translateY(-2px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a
  > div {
  width: 100%;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a
  > div
  > div:first-child {
  color: var(--nabip-navy);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.01em;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a
  > div
  > div:nth-child(2) {
  margin-top: 4px;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.45;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--documents
  .puck-grid-column
  > div
  > a
  > div
  > div:last-child {
  margin-top: 8px;
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--partners {
  padding-top: 12px;
  padding-bottom: clamp(40px, 5vw, 64px);
}

main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--partners
  .puck-grid-column
  > a {
  border-color: rgba(37, 71, 124, 0.14);
}

@media (max-width: 700px) {
  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-hero[style*="5e4492fb-4d1a-45ed-90cc-f304f0170931.jpg"] {
    min-height: 340px !important;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--mission-vision {
    grid-template-columns: 1fr !important;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--mission-vision
    .puck-card
    > div {
    padding: 26px 24px;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--mission-vision
    + h2
    + .puck-grid--ethics {
    grid-template-columns: 1fr !important;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--ethics
    .puck-grid-column:nth-child(2) {
    border-top: 1px solid rgba(37, 71, 124, 0.14);
    border-left: 0;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--ethics
    .puck-text {
    padding: 26px 22px !important;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--documents {
    grid-template-columns: 1fr !important;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--documents
    .puck-grid-column
    > div
    > a {
    min-height: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--mission-vision
    .puck-card,
  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--documents
    .puck-grid-column
    > div
    > a {
    transition: none;
  }

  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--mission-vision
    .puck-card:hover,
  main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
    .puck-grid--documents
    .puck-grid-column
    > div
    > a:hover {
    transform: none;
  }
}

/*
 * Who Is NABIP interior page
 * The page's native component sequence already provides two image/copy
 * narratives, selective benefit cards, mission/vision, a membership CTA, and
 * partner recognition. The combined services + benefits signature keeps this
 * editorial treatment isolated from other pages using the same variants.
 */
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits) {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: clamp(24px, 5vw, 72px);
  align-items: stretch;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-hero {
  grid-column: 1 / -1;
  width: calc(100% + 64px);
  min-height: clamp(360px, 38vw, 480px);
  margin-inline: -32px;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > div:nth-child(2):empty {
  grid-column: 1 / -1;
  grid-row: 2;
  width: 100%;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(3),
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-text:nth-child(4),
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(5),
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-text:nth-child(6) {
  width: 100%;
  max-width: none;
  margin: 0;
  align-self: start;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(3) {
  grid-column: 2 / span 5;
  grid-row: 3;
  padding: 16px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-surface);
  box-shadow: var(--nabip-shadow-sm);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-text:nth-child(4) {
  grid-column: 7 / span 5;
  grid-row: 3;
  padding: clamp(12px, 2vw, 28px) 0;
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.8;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(5) {
  grid-column: 7 / span 5;
  grid-row: 4;
  padding: 0;
  overflow: hidden;
  border-radius: var(--nabip-radius-lg);
  box-shadow: var(--nabip-shadow-md);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-text:nth-child(6) {
  grid-column: 2 / span 5;
  grid-row: 4;
  padding: clamp(12px, 2vw, 28px) 0;
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.8;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(3)
  .puck-image-figure,
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(5)
  .puck-image-figure {
  margin: 0;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(3)
  .puck-image-img,
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(3)
  .puck-image-figure
  img {
  width: 100% !important;
  height: clamp(260px, 26vw, 360px) !important;
  border-radius: calc(var(--nabip-radius-lg) - 4px);
  object-fit: contain;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(5)
  .puck-image-img,
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image:nth-child(5)
  .puck-image-figure
  img {
  width: 100% !important;
  height: clamp(300px, 31vw, 430px) !important;
  border-radius: var(--nabip-radius-lg);
  object-fit: cover;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-image
  .puck-image-caption {
  margin-top: 12px;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.45;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > h2:nth-child(7),
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > h2:nth-child(13) {
  grid-column: 1 / -1;
  max-width: var(--nabip-content);
  width: 100%;
  margin: 0 auto;
  padding: var(--nabip-section) var(--nabip-gutter) 20px;
  box-sizing: border-box;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services {
  grid-column: 1 / -1;
  gap: clamp(18px, 2.5vw, 28px);
  padding-top: 12px;
  padding-bottom: clamp(36px, 5vw, 64px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-grid-column {
  display: flex;
  min-width: 0;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-card--service {
  display: flex;
  width: 100%;
  min-height: 100%;
  flex-direction: column;
  align-items: flex-start !important;
  gap: 18px !important;
  padding: clamp(24px, 3vw, 34px) !important;
  border: 1px solid var(--nabip-border);
  border-top: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  text-align: left !important;
  box-sizing: border-box;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-grid-column:nth-child(2)
  .puck-card--service {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-grid-column:nth-child(3)
  .puck-card--service {
  border-top-color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-card--service:hover {
  border-color: rgba(0, 155, 149, 0.48);
  border-top-color: var(--nabip-teal);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .material-symbols-rounded {
  display: inline-grid;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  place-items: center;
  border-radius: 14px;
  background: rgba(0, 155, 149, 0.11);
  color: var(--nabip-teal-dark);
  font-size: 24px;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-grid-column:nth-child(2)
  .material-symbols-rounded {
  background: rgba(37, 71, 124, 0.1);
  color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-grid-column:nth-child(3)
  .material-symbols-rounded {
  font-size: 0;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--member-services
  .puck-grid-column:nth-child(3)
  .material-symbols-rounded::before {
  display: block;
  width: 26px;
  height: 26px;
  background: currentColor;
  content: "";
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18 11v2h4v-2h-4zm-2 6.61c.96.71 2.21 1.65 3.2 2.39.4-.53.8-1.07 1.2-1.6-.99-.74-2.24-1.68-3.2-2.4-.4.54-.8 1.08-1.2 1.61zM20.4 5.6c-.4-.53-.8-1.07-1.2-1.6-.99.74-2.24 1.68-3.2 2.4.4.53.8 1.07 1.2 1.6.96-.72 2.21-1.65 3.2-2.4zM4 9c-1.1 0-2 .9-2 2v2c0 1.1.9 2 2 2h1v4h2v-4h1l5 3V6L8 9H4zm5.03 4H4v-2h5.03L11 9.82v4.36L9.03 13zM15.5 12c0-1.33-.58-2.53-1.5-3.35v6.69c.92-.81 1.5-2.01 1.5-3.34z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18 11v2h4v-2h-4zm-2 6.61c.96.71 2.21 1.65 3.2 2.39.4-.53.8-1.07 1.2-1.6-.99-.74-2.24-1.68-3.2-2.4-.4.54-.8 1.08-1.2 1.61zM20.4 5.6c-.4-.53-.8-1.07-1.2-1.6-.99.74-2.24 1.68-3.2 2.4.4.53.8 1.07 1.2 1.6.96-.72 2.21-1.65 3.2-2.4zM4 9c-1.1 0-2 .9-2 2v2c0 1.1.9 2 2 2h1v4h2v-4h1l5 3V6L8 9H4zm5.03 4H4v-2h5.03L11 9.82v4.36L9.03 13zM15.5 12c0-1.33-.58-2.53-1.5-3.35v6.69c.92-.81 1.5-2.01 1.5-3.34z'/%3E%3C/svg%3E") center / contain no-repeat;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-text:nth-child(9) {
  grid-column: 2 / span 10;
  max-width: none;
  margin: 0 auto;
  padding: clamp(24px, 4vw, 42px) clamp(24px, 4vw, 48px);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: linear-gradient(135deg, var(--nabip-surface-blue), var(--nabip-white));
  box-shadow: 0 8px 24px rgba(37, 71, 124, 0.06);
  line-height: 1.75;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > div:nth-child(10):empty {
  grid-column: 1 / -1;
  width: 100%;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--mission-vision {
  grid-column: 1 / -1;
  gap: clamp(18px, 3vw, 30px);
  padding-top: 12px;
  padding-bottom: clamp(36px, 5vw, 64px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--mission-vision
  .puck-grid-column {
  display: flex;
  min-width: 0;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--mission-vision
  .puck-card {
  display: flex;
  width: 100%;
  min-height: 100%;
  flex-direction: column;
  padding: clamp(26px, 3vw, 38px) clamp(24px, 3vw, 34px);
  border: 1px solid var(--nabip-border);
  border-top: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  text-align: left !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--mission-vision
  .puck-grid-column:nth-child(2)
  .puck-card {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--mission-vision
  .puck-card:hover {
  border-color: rgba(0, 155, 149, 0.48);
  border-top-color: var(--nabip-teal);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-cta--member-benefits {
  grid-column: 1 / -1;
  width: 100%;
  margin: clamp(20px, 3vw, 36px) 0 clamp(48px, 6vw, 76px);
  padding: clamp(38px, 6vw, 68px) clamp(28px, 6vw, 76px);
  border-top: 6px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: linear-gradient(115deg, var(--nabip-navy), var(--nabip-blue));
  box-shadow: var(--nabip-shadow-md);
  box-sizing: border-box;
  text-align: center;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-cta--member-benefits
  .puck-cta-title {
  margin: 0;
  font-size: clamp(30px, 4vw, 50px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-cta--member-benefits
  .puck-cta-description {
  max-width: 680px;
  margin: 18px auto 0;
  color: rgba(255, 255, 255, 0.82);
  font-size: clamp(15px, 1.5vw, 18px);
  line-height: 1.6;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-cta--member-benefits
  .puck-cta-buttons {
  justify-content: center;
  margin-top: 30px;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-cta--member-benefits
  .puck-cta-primary {
  min-width: 220px;
  min-height: 52px;
  padding: 12px 26px;
  border-radius: 999px;
  background: var(--nabip-teal);
  box-shadow: 0 10px 22px rgba(0, 124, 120, 0.2);
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-cta--member-benefits
  .puck-cta-primary:hover {
  background: var(--nabip-teal-dark);
  box-shadow: 0 14px 28px rgba(0, 124, 120, 0.3);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--partners {
  grid-column: 1 / -1;
  padding-top: 12px;
  padding-bottom: clamp(40px, 5vw, 64px);
}

#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-grid--partners
  .puck-grid-column
  > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.48);
  outline-offset: 4px;
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits) {
    display: block;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(3),
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-text:nth-child(4),
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(5),
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-text:nth-child(6) {
    width: auto;
    max-width: 900px;
    margin-inline: auto;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(3) {
    margin: 28px var(--nabip-gutter) 0;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-text:nth-child(4),
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-text:nth-child(6) {
    padding: 28px var(--nabip-gutter) 40px;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(5) {
    margin: 12px var(--nabip-gutter) 0;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(3)
    .puck-image-img,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(3)
    .puck-image-figure
    img {
    height: 260px !important;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(5)
    .puck-image-img,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-image:nth-child(5)
    .puck-image-figure
    img {
    height: 220px !important;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > h2:nth-child(7),
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > h2:nth-child(13) {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-grid--member-services,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-grid--mission-vision {
    grid-template-columns: 1fr !important;
    padding-inline: var(--nabip-gutter);
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-text:nth-child(9) {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-cta--member-benefits {
    width: auto;
    margin: 20px var(--nabip-gutter) 48px;
    padding: 40px 22px 46px;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-cta--member-benefits
    .puck-cta-primary {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-grid--member-services
    .puck-card--service,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-grid--mission-vision
    .puck-card,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-cta--member-benefits
    .puck-cta-primary {
    transition: none;
  }

  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-grid--member-services
    .puck-card--service:hover,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-grid--mission-vision
    .puck-card:hover,
  #puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
    > .puck-cta--member-benefits
    .puck-cta-primary:hover {
    transform: none;
  }
}

/*
 * Affiliations interior page
 * Keep the limited content intentional: a quiet section heading followed by
 * two equal white feature panels on a pale surface. The unique native grid
 * variant scopes these rules to Affiliations only.
 */
#puck-content:has(.puck-grid--affiliation-features)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--affiliation-features)
  > h2 {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(48px, 6vw, 72px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features {
  width: 100%;
  max-width: none;
  gap: clamp(18px, 3vw, 32px);
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(56px, 7vw, 88px);
  background: var(--nabip-white);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column {
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: clamp(26px, 3vw, 42px);
  border: 1px solid var(--nabip-border);
  border-top: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column:nth-child(2),
#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features:last-child
  .puck-grid-column {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column:hover {
  border-color: rgba(0, 155, 149, 0.48);
  border-top-color: var(--nabip-teal);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column:nth-child(2):hover,
#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features:last-child
  .puck-grid-column:hover {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-card--affiliation {
  min-height: 0;
  padding: 0 !important;
  border: 0;
  background: transparent;
  box-shadow: none;
  text-align: left !important;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-card-eyebrow {
  margin: 0 0 10px;
  color: var(--nabip-teal-dark);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.1em;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column:nth-child(2)
  .puck-card-eyebrow,
#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features:last-child
  .puck-card-eyebrow {
  color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-card-title {
  margin: 0 0 10px;
  color: var(--nabip-navy);
  font-size: clamp(26px, 3vw, 36px);
  line-height: 1.15;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-card-description {
  margin: 0;
  color: var(--nabip-muted);
  font-size: 15px;
  line-height: 1.55;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-image {
  width: 100%;
  max-width: none;
  margin: 24px 0 0;
  padding: 0;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-image-figure {
  display: flex;
  min-height: 166px;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  margin: 0;
  padding: 18px;
  border-radius: var(--nabip-radius);
  background: var(--nabip-surface);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-image-img,
#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-image-figure
  img {
  display: block;
  width: auto !important;
  max-width: 100%;
  height: 124px !important;
  border-radius: 0;
  box-shadow: none;
  object-fit: contain;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-image-caption {
  margin-top: 10px;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.45;
  text-align: center;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-text {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 24px 0 28px;
  color: var(--nabip-text);
  font-size: 15px;
  line-height: 1.75;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-button-container {
  width: 100%;
  margin-top: auto;
  padding-top: 8px;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-button--affiliation-link {
  width: 100%;
  min-height: 50px !important;
  border: 1px solid var(--nabip-teal);
  border-radius: 999px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-weight: 750;
  text-decoration: none;
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column:nth-child(2)
  .puck-button--affiliation-link {
  border-color: var(--nabip-blue);
  background: var(--nabip-blue);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-button--affiliation-link:hover {
  border-color: var(--nabip-teal-dark);
  background: var(--nabip-teal-dark);
  box-shadow: 0 10px 22px rgba(0, 124, 120, 0.24);
  color: var(--nabip-white);
  transform: translateY(-2px);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-grid-column:nth-child(2)
  .puck-button--affiliation-link:hover {
  border-color: var(--nabip-navy-soft);
  background: var(--nabip-navy-soft);
  box-shadow: 0 10px 22px rgba(37, 71, 124, 0.24);
}

#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features
  .puck-button--affiliation-link:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.45);
  outline-offset: 4px;
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--affiliation-features)
    > h2 {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-grid--affiliation-features {
    grid-template-columns: 1fr !important;
    padding: 12px var(--nabip-gutter) 56px;
  }

  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-grid--affiliation-features
    .puck-grid-column {
    padding: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-grid--affiliation-features
    .puck-grid-column,
  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-grid--affiliation-features
    .puck-button--affiliation-link {
    transition: none;
  }

  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-grid--affiliation-features
    .puck-grid-column:hover,
  #puck-content:has(.puck-grid--affiliation-features)
    > .puck-grid--affiliation-features
    .puck-button--affiliation-link:hover {
    transform: none;
  }
}

/*
 * Board Leadership interior page
 * Native person cards remain the source of truth. The combined people and
 * committee grid signature scopes the directory treatment to this page.
 */
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-text:nth-child(2) {
  max-width: 920px;
  margin: 0 auto;
  padding: clamp(26px, 4vw, 42px) var(--nabip-gutter);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: linear-gradient(135deg, var(--nabip-surface-blue), var(--nabip-white));
  box-shadow: 0 8px 24px rgba(37, 71, 124, 0.06);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > h2:nth-child(3),
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > h2:nth-child(5) {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(52px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > h2:nth-child(7) {
  padding-top: clamp(62px, 8vw, 96px);
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 24px);
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(48px, 6vw, 76px);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-grid-column,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-grid-column {
  display: grid;
  min-width: 0;
  gap: clamp(12px, 1.5vw, 18px);
  align-content: stretch;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card--person,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card--committee {
  display: flex;
  min-width: 0;
  min-height: 164px;
  flex-direction: column;
  padding: 22px 20px !important;
  border: 1px solid var(--nabip-border);
  border-left: 4px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  box-shadow: 0 5px 16px rgba(37, 71, 124, 0.06);
  text-align: left !important;
  box-sizing: border-box;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people {
  background: var(--nabip-surface-blue);
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card--committee {
  border-left-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card--person:hover,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card--committee:hover {
  border-color: rgba(0, 155, 149, 0.48);
  border-left-color: var(--nabip-teal);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-2px);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card--committee:hover {
  border-left-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card--person
  > div,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card--committee
  > div {
  display: flex;
  min-width: 0;
  height: 100%;
  flex-direction: column;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-eyebrow,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-eyebrow {
  margin: 0 0 8px;
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-transform: uppercase;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-eyebrow {
  color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-title,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-title {
  margin: 0 0 7px;
  color: var(--nabip-navy);
  font-size: clamp(17px, 1.6vw, 21px);
  line-height: 1.2;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-description,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-description {
  margin: 0;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.45;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-meta,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-meta {
  margin: auto 0 0;
  padding: 14px 0 0;
  list-style: none;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-meta-row,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-meta-row {
  margin: 0;
  padding-top: 12px;
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-meta-value,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-meta-value {
  display: block;
  color: var(--nabip-text);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.45;
  white-space: pre-line;
}

#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--people
  .puck-card-avatar,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-grid--committee-people
  .puck-card-avatar {
  width: 64px;
  height: 64px;
  margin-bottom: 16px;
  object-fit: cover;
}

@media (min-width: 981px) {
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people {
    grid-template-rows: repeat(4, auto);
    row-gap: clamp(12px, 1.5vw, 18px);
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-grid-column {
    grid-row: 1 / span 4;
    grid-template-rows: subgrid;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people {
    grid-template-rows: repeat(3, auto);
    row-gap: clamp(12px, 1.5vw, 18px);
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-grid-column {
    grid-row: 1 / span 3;
    grid-template-rows: subgrid;
  }
}

@media (min-width: 701px) and (max-width: 980px) {
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people {
    grid-template-rows: repeat(8, auto);
    row-gap: clamp(12px, 1.5vw, 18px);
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-grid-column {
    grid-template-rows: subgrid;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-grid-column:nth-child(-n + 2) {
    grid-row: 1 / span 4;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-grid-column:nth-child(n + 3) {
    grid-row: 5 / span 4;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people {
    grid-template-rows: repeat(6, auto);
    row-gap: clamp(12px, 1.5vw, 18px);
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-grid-column {
    grid-template-rows: subgrid;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-grid-column:nth-child(-n + 2) {
    grid-row: 1 / span 3;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-grid-column:nth-child(n + 3) {
    grid-row: 4 / span 3;
  }
}

@media (max-width: 980px) {
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people,
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-text:nth-child(2) {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > h2:nth-child(3),
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > h2:nth-child(5) {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people,
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people {
    grid-template-columns: 1fr !important;
    padding: 12px var(--nabip-gutter) 48px;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-grid-column,
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-grid-column {
    gap: 12px;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-card--person,
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-card--committee {
    min-height: 150px;
    padding: 20px 18px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-card--person,
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-card--committee {
    transition: none;
  }

  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--people
    .puck-card--person:hover,
  #puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
    > .puck-grid--committee-people
    .puck-card--committee:hover {
    transform: none;
  }
}

/*
 * Contact interior page
 * The Contact widget is intentionally owner-configured. Style both the
 * current native placeholder and the native form output once a widgetId is
 * selected, without introducing custom form markup or behavior.
 */
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > .puck-text:nth-child(3) {
  max-width: 820px;
  margin: 0 auto;
  padding: clamp(26px, 4vw, 42px) var(--nabip-gutter);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: linear-gradient(135deg, var(--nabip-surface-blue), var(--nabip-white));
  box-shadow: 0 8px 24px rgba(37, 71, 124, 0.06);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > h2 {
  max-width: 820px;
  margin: 0 auto;
  padding: clamp(52px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > div:nth-child(4):not(.puck-contact) {
  width: min(100%, 820px);
  min-height: 150px;
  margin: 0 auto var(--nabip-section);
  padding: 30px var(--nabip-gutter);
  border: 1px dashed var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-surface);
  color: var(--nabip-muted);
  box-sizing: border-box;
  display: grid;
  place-items: center;
  text-align: center;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > div:nth-child(4):not(.puck-contact)
  > div {
  max-width: 520px;
  color: var(--nabip-muted);
  font-size: 14px;
  font-weight: 650;
  line-height: 1.6;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact {
  width: min(100%, 820px);
  margin: 0 auto var(--nabip-section);
  padding: clamp(24px, 4vw, 42px);
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-md);
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact form {
  display: grid;
  gap: 18px;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact label,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact legend {
  display: block;
  margin-bottom: 7px;
  color: var(--nabip-navy);
  font-size: 13px;
  font-weight: 750;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact input,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact textarea,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact select {
  width: 100%;
  min-height: 48px;
  margin-top: 0;
  padding: 11px 13px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  color: var(--nabip-text);
  font: inherit;
  box-sizing: border-box;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact textarea {
  min-height: 160px;
  resize: vertical;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact input:focus-visible,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact textarea:focus-visible,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact select:focus-visible {
  border-color: var(--nabip-teal);
  outline: 3px solid rgba(0, 155, 149, 0.2);
  outline-offset: 2px;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact button[type="submit"],
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact button:not([type]) {
  min-width: 160px;
  min-height: 50px;
  padding: 12px 22px;
  border: 1px solid var(--nabip-teal);
  border-radius: 999px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-weight: 750;
  cursor: pointer;
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact button[type="submit"]:hover,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact button:not([type]):hover {
  border-color: var(--nabip-teal-dark);
  background: var(--nabip-teal-dark);
  box-shadow: 0 10px 22px rgba(0, 124, 120, 0.24);
  transform: translateY(-2px);
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact button:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.45);
  outline-offset: 4px;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact [aria-invalid="true"],
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .error input,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .error textarea,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .field-error input,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .field-error textarea {
  border-color: #b42318;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .error-message,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .field-error,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .form-error {
  color: #b42318;
  font-size: 14px;
  font-weight: 650;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .success-message,
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact .form-success {
  padding: 16px 18px;
  border: 1px solid rgba(0, 155, 149, 0.35);
  border-radius: var(--nabip-radius);
  background: rgba(0, 155, 149, 0.08);
  color: var(--nabip-navy);
  font-weight: 650;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget {
  width: min(calc(100% - (2 * var(--nabip-gutter))), 900px) !important;
  max-width: 900px !important;
  margin: 0 auto var(--nabip-section);
  margin-inline: auto !important;
  align-self: center;
  justify-self: center;
  padding: clamp(28px, 4vw, 48px);
  border: 1px solid rgba(37, 71, 124, 0.12);
  border-radius: clamp(18px, 2vw, 26px);
  background: var(--nabip-white);
  box-shadow: 0 18px 50px rgba(37, 71, 124, 0.11);
  box-sizing: border-box;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  > div
  > h3 {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(26px, 3vw, 34px);
  font-weight: 750;
  letter-spacing: -0.03em;
  line-height: 1.15;
  text-align: left !important;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  > div
  > p {
  margin: 12px 0 0;
  color: var(--nabip-muted);
  font-size: clamp(15px, 1.4vw, 18px);
  line-height: 1.6;
  text-align: left !important;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  form {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  margin-top: 30px;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  form
  > div[style*="grid-template-columns"] {
  gap: 18px !important;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  label {
  color: var(--nabip-navy);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.45;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  label
  > span {
  color: var(--nabip-muted);
  font-weight: 500;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  :is(input:not([type="checkbox"]), textarea, select) {
  width: 100%;
  min-height: 56px;
  margin-top: 8px;
  padding: 13px 15px;
  border: 1px solid rgba(37, 71, 124, 0.22);
  border-radius: 9px;
  background: var(--nabip-white);
  color: var(--nabip-text);
  font: inherit;
  box-shadow: 0 1px 2px rgba(37, 71, 124, 0.03) inset;
  transition: border-color 160ms ease, box-shadow 160ms ease;
  box-sizing: border-box;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  textarea {
  min-height: 168px;
  resize: vertical;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  :is(input:not([type="checkbox"]), textarea, select):focus-visible {
  border-color: var(--nabip-teal);
  outline: none;
  box-shadow: 0 0 0 4px rgba(0, 155, 149, 0.16);
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  form
  > div:has([data-cf="challengeAnswer"]) {
  padding: 18px;
  border: 1px solid rgba(37, 71, 124, 0.12);
  border-radius: 10px;
  background: var(--nabip-surface);
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  form
  > div:has([data-cf="challengeAnswer"])
  > p {
  margin: 8px 0 0;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.5;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  form
  > label:has([data-cf="agreementAccepted"]) {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  padding: 17px 18px;
  border: 1px solid rgba(37, 71, 124, 0.12);
  border-radius: 10px;
  background: var(--nabip-surface);
  color: var(--nabip-text);
  font-weight: 500;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  [data-cf="agreementAccepted"] {
  width: 19px;
  height: 19px;
  margin: 2px 0 0;
  accent-color: var(--nabip-teal);
  flex: 0 0 19px !important;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  [data-cf="error"] {
  padding: 13px 15px;
  border: 1px solid rgba(180, 35, 24, 0.28);
  border-radius: 9px;
  background: rgba(180, 35, 24, 0.06);
  color: #b42318;
  font-size: 14px;
  font-weight: 650;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  [data-cf="submit"] {
  width: 100% !important;
  min-height: 56px;
  padding: 13px 22px;
  border: 1px solid var(--nabip-blue);
  border-radius: 9px;
  background: var(--nabip-blue);
  color: var(--nabip-white);
  font-size: 16px;
  font-weight: 750;
  cursor: pointer;
  box-shadow: 0 8px 20px rgba(37, 71, 124, 0.18);
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  [data-cf="submit"]:hover {
  border-color: var(--nabip-navy);
  background: var(--nabip-navy);
  box-shadow: 0 12px 24px rgba(37, 71, 124, 0.24);
  transform: translateY(-2px);
}

#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  .puck-contact-widget
  [data-cf="submit"]:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.38);
  outline-offset: 4px;
}

@media (max-width: 700px) {
  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    > .puck-text:nth-child(3) {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    > h2 {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact button[type="submit"],
  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact button:not([type]) {
    width: 100%;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact-widget {
    width: calc(100% - (2 * var(--nabip-gutter))) !important;
    padding: 26px 20px;
    border-radius: 18px;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact-widget
    form
    > div[style*="grid-template-columns"] {
    grid-template-columns: 1fr !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact button[type="submit"],
  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact button:not([type]) {
    transition: none;
  }

  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact button[type="submit"]:hover,
  #puck-content:has(
      > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
    )
    .puck-contact button:not([type]):hover {
    transform: none;
  }
}

/*
 * Join interior page
 * This page uses the native CTA, File, Button, and partner Card components.
 * The combined action and partner grids scope the membership path treatment.
 */
#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-hero {
  min-height: clamp(380px, 40vw, 500px) !important;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: max-content max-content !important;
  align-content: start;
  gap: clamp(18px, 3vw, 30px);
  row-gap: clamp(20px, 2vw, 24px) !important;
  padding: clamp(34px, 5vw, 64px)
    max(var(--nabip-gutter), calc((100vw - 1120px) / 2))
    clamp(48px, 6vw, 76px);
  border-top: 1px solid var(--nabip-border);
  border-bottom: 1px solid var(--nabip-border);
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column {
  display: contents;
  min-width: 0;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column:first-child
  > .puck-cta {
  grid-column: 1;
  grid-row: 1;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column:nth-child(2)
  > .puck-cta {
  grid-column: 2;
  grid-row: 1;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download]) {
  width: 100%;
  grid-column: 1 / -1;
  grid-row: 2;
  margin-top: calc(0px - clamp(56px, 7vw, 88px));
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta {
  display: flex;
  min-height: 238px;
  flex: 0 0 auto;
  flex-direction: column;
  padding: clamp(26px, 3vw, 38px);
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta--application {
  border-color: var(--nabip-navy);
  background: var(--nabip-navy);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(22px, 2.5vw, 32px);
  font-weight: 750;
  letter-spacing: -0.03em;
  line-height: 1.15;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta--application
  .puck-cta-title {
  color: var(--nabip-white);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta-description {
  max-width: 540px;
  margin: 16px 0 0;
  color: var(--nabip-muted);
  font-size: 15px;
  line-height: 1.65;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta--application
  .puck-cta-description {
  color: rgba(255, 255, 255, 0.8);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta-buttons {
  display: flex;
  margin-top: auto;
  padding-top: 26px;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta-primary {
  display: inline-flex;
  min-width: 190px;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 12px 22px;
  border: 1px solid var(--nabip-teal);
  border-radius: 999px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-size: 13px;
  font-weight: 750;
  text-decoration: none;
  transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-cta-primary:hover {
  border-color: var(--nabip-teal-dark);
  background: var(--nabip-teal-dark);
  box-shadow: 0 10px 22px rgba(0, 124, 120, 0.24);
  color: var(--nabip-white);
  transform: translateY(-2px);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download]) {
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  box-shadow: 0 5px 16px rgba(37, 71, 124, 0.06);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download] {
  display: block !important;
  padding: 18px;
  border-radius: inherit;
  color: var(--nabip-navy);
  text-decoration: none;
  box-shadow: none !important;
  transition: background 160ms ease, box-shadow 160ms ease;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download]
  > div:first-child {
  display: grid !important;
  width: 100% !important;
  height: auto !important;
  min-height: 48px;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center !important;
  gap: 16px;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download]:hover {
  background: var(--nabip-surface-blue);
  box-shadow: 0 8px 20px rgba(37, 71, 124, 0.1) !important;
  color: var(--nabip-navy);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download]
  > div:first-child
  > div:first-child {
  width: 48px !important;
  height: 48px !important;
  border-radius: 50%;
  background: var(--nabip-surface-blue);
  color: var(--nabip-teal-dark);
  font-size: 22px;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download]
  > div
  > div:nth-child(2)
  > div:first-child {
  overflow: visible !important;
  color: var(--nabip-navy);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.35;
  white-space: normal !important;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download]
  > div
  > div:nth-child(2)
  > div:nth-child(2) {
  margin-top: 4px;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.4;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--join-actions
  .puck-grid-column
  > div:has(a[download])
  > a[download]
  > div
  > div:last-child {
  color: var(--nabip-teal-dark);
  font-size: 12px;
  font-weight: 750;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > h2 {
  max-width: 1120px;
  margin: 0 auto;
  padding: clamp(54px, 7vw, 88px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(27px, 3.6vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-text {
  max-width: 900px;
  padding: 26px var(--nabip-gutter) 46px;
  color: var(--nabip-text);
  font-size: 16px;
  line-height: 1.8;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-text:nth-child(4) {
  padding: 28px clamp(22px, 4vw, 44px) 34px;
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: var(--nabip-surface-blue);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-text:nth-child(6) {
  padding: 30px clamp(22px, 4vw, 44px);
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-surface);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-text:nth-child(6)
  p:nth-child(2),
#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-text:nth-child(6)
  p:nth-child(4) {
  color: var(--nabip-navy);
  font-weight: 750;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-button-container {
  display: flex;
  justify-content: center;
  padding: 4px var(--nabip-gutter) clamp(48px, 6vw, 76px);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-button-container
  .puck-button {
  min-width: 210px;
  min-height: 48px;
  padding: 12px 22px;
  border-radius: 999px;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > h2:nth-child(10) {
  padding-top: clamp(52px, 7vw, 82px);
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 24px);
  padding: 16px max(var(--nabip-gutter), calc((100vw - 1120px) / 2))
    clamp(56px, 7vw, 88px);
  background: var(--nabip-white);
  border-top: 1px solid var(--nabip-border);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-grid-column {
  display: grid;
  min-width: 0;
  gap: clamp(14px, 2vw, 20px);
  align-content: start;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner {
  display: flex;
  min-width: 0;
  min-height: 204px;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  box-shadow: 0 5px 16px rgba(37, 71, 124, 0.06);
  color: var(--nabip-navy);
  text-align: center;
  text-decoration: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  > div:first-child {
  height: 118px !important;
  padding: 14px;
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
  mix-blend-mode: multiply;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  > div:last-child {
  display: flex;
  min-height: 76px;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  padding: 14px 12px 16px;
  border-top: 1px solid var(--nabip-border);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: 14px;
  line-height: 1.3;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  .puck-card-description {
  margin: 6px 0 0;
  color: var(--nabip-muted);
  font-size: 11px;
  line-height: 1.35;
}

#puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner:hover {
  border-color: rgba(0, 155, 149, 0.55);
  box-shadow: var(--nabip-shadow-md);
  color: var(--nabip-navy);
  transform: translateY(-3px);
}

@media (max-width: 980px) {
  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-hero {
    min-height: 390px !important;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions {
    grid-template-columns: 1fr !important;
    grid-template-rows: max-content max-content max-content !important;
    padding: 28px var(--nabip-gutter) 48px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-grid-column:first-child
    > .puck-cta {
    grid-column: 1;
    grid-row: 1;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-grid-column:nth-child(2)
    > .puck-cta {
    grid-column: 1;
    grid-row: 2;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-grid-column
    > div:has(a[download]) {
    grid-column: 1;
    grid-row: 3;
    margin-top: -56px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-cta {
    min-height: 0;
    padding: 26px 22px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-cta-primary {
    width: 100%;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > h2 {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-text {
    padding-inline: var(--nabip-gutter);
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-text:nth-child(4),
  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-text:nth-child(6) {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-button-container {
    padding-bottom: 48px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-button-container
    .puck-button {
    width: 100%;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners {
    grid-template-columns: 1fr !important;
    padding: 12px var(--nabip-gutter) 56px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-grid-column {
    gap: 12px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner {
    min-height: 172px;
    flex-direction: row;
    align-items: stretch;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner
    > div:first-child {
    width: 42%;
    height: auto !important;
    min-height: 150px;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner
    > div:last-child {
    min-height: 0;
    flex: 1;
    border-top: 0;
    border-left: 1px solid var(--nabip-border);
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-cta-primary,
  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner {
    transition: none;
  }

  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--join-actions
    .puck-cta-primary:hover,
  #puck-content:has(.puck-grid--join-actions):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner:hover {
    transform: none;
  }
}

/*
 * Calendar interior page
 * The EventCalendar remains native. Structural selectors are limited to its
 * documented widget and event classes plus the native toolbar controls,
 * which currently expose accessible title labels rather than custom classes.
 */
#puck-content:has(.recur-event-calendar) > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.recur-event-calendar) > .puck-hero > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.recur-event-calendar) .recur-event-calendar {
  width: min(100%, 1216px);
  margin: 0 auto;
  padding: 22px var(--nabip-gutter) 0;
  border-top: 1px solid var(--nabip-border);
  border-radius: 0 0 var(--nabip-radius-lg) var(--nabip-radius-lg);
  background: var(--nabip-white);
  color: var(--nabip-text);
  box-sizing: border-box;
  overflow: hidden;
}

#puck-content:has(.recur-event-calendar) .recur-event-calendar-title {
  margin: 0 0 18px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child {
  min-height: 70px;
  padding: 12px 14px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  > div {
  color: var(--nabip-navy);
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  h3 {
  margin: 0 0 4px;
  color: var(--nabip-navy);
  font-size: clamp(18px, 2vw, 24px);
  font-weight: 750;
  line-height: 1.2;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  button {
  min-width: 44px;
  min-height: 44px;
  padding: 8px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  color: var(--nabip-navy);
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
  box-sizing: border-box;
  transition: border-color 160ms ease, background 160ms ease, color 160ms ease,
    transform 160ms ease;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  button[title="Previous month"],
#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  button[title="Next month"] {
  width: 44px !important;
  height: 44px !important;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  button:hover {
  border-color: var(--nabip-teal);
  background: var(--nabip-surface-blue);
  color: var(--nabip-teal-dark);
  transform: translateY(-1px);
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:first-child
  button:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 3px;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:nth-child(2) {
  margin-top: 18px;
  border: 1px solid var(--nabip-border);
  border-bottom: 0;
  border-radius: var(--nabip-radius) var(--nabip-radius) 0 0;
  background: var(--nabip-navy);
  overflow: hidden !important;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:nth-child(2)
  > div {
  padding: 10px 4px;
  color: var(--nabip-white);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: 0.05em;
  line-height: 1.25;
  text-transform: uppercase;
  box-sizing: border-box;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:nth-child(3) {
  gap: 1px !important;
  border: 1px solid var(--nabip-border);
  border-radius: 0 0 var(--nabip-radius) var(--nabip-radius);
  background: var(--nabip-border);
  overflow: hidden !important;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  .recur-event-calendar-day,
#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:nth-child(3)
  > div:empty {
  min-width: 0;
  min-height: clamp(78px, 9vw, 108px) !important;
  padding: 9px;
  border: 0;
  background: var(--nabip-white);
  color: var(--nabip-text);
  box-sizing: border-box;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  .recur-event-calendar-day
  > div:first-child {
  width: 32px !important;
  height: 32px !important;
  margin-bottom: 8px;
  border-radius: 50%;
  color: var(--nabip-navy);
  font-size: 12px;
  font-weight: 750;
  line-height: 32px;
  box-sizing: border-box;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  .recur-event-calendar-day:hover {
  background: #f8fbfd;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  .recur-event-calendar-event {
  display: block;
  width: 100%;
  margin-top: 5px;
  padding: 7px 8px;
  border: 1px solid rgba(0, 124, 120, 0.2);
  border-radius: 6px;
  background: rgba(0, 155, 149, 0.1);
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.35;
  text-align: left;
  box-sizing: border-box;
  cursor: pointer;
  transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  .recur-event-calendar-event:hover {
  border-color: var(--nabip-teal);
  background: rgba(0, 155, 149, 0.18);
  transform: translateY(-1px);
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar
  > div
  > div:last-child:not(:has(.recur-event-calendar-day)) {
  margin-top: 18px;
  padding: 24px clamp(18px, 4vw, 36px);
  border: 1px dashed var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  color: var(--nabip-muted);
  font-size: 14px;
  font-weight: 650;
  line-height: 1.65;
  text-align: center;
}

#puck-content:has(.recur-event-calendar) .recur-event-modal-backdrop {
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(22, 31, 38, 0.72);
  box-sizing: border-box;
}

#puck-content:has(.recur-event-calendar) .recur-event-modal {
  width: min(100%, 640px);
  max-height: min(720px, calc(100vh - 40px));
  overflow: auto;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-md);
}

#puck-content:has(.recur-event-calendar) .recur-event-modal-title {
  padding: 24px 28px 0;
  color: var(--nabip-navy);
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 750;
  line-height: 1.2;
}

#puck-content:has(.recur-event-calendar) .recur-event-modal-body {
  padding: 18px 28px 28px;
  color: var(--nabip-text);
  line-height: 1.65;
}

#puck-content:has(.recur-event-calendar) .recur-event-modal-button {
  min-height: 46px;
  margin: 0 28px 26px;
  padding: 11px 20px;
  border: 1px solid var(--nabip-teal);
  border-radius: 999px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-weight: 750;
  text-decoration: none;
  box-sizing: border-box;
}

@media (max-width: 700px) {
  #puck-content:has(.recur-event-calendar) > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.recur-event-calendar) .recur-event-calendar {
    padding: 18px var(--nabip-gutter) 0;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    > div
    > div:first-child {
    min-height: 64px;
    padding: 8px;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    > div
    > div:first-child
    h3 {
    font-size: 17px;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    > div
    > div:nth-child(2)
    > div {
    padding: 8px 2px;
    font-size: 9px;
    letter-spacing: 0;
    text-transform: none;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    .recur-event-calendar-day,
  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    > div
    > div:nth-child(3)
    > div:empty {
    min-height: 76px !important;
    padding: 6px 4px;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    .recur-event-calendar-day
    > div:first-child {
    width: 28px !important;
    height: 28px !important;
    margin-bottom: 5px;
    font-size: 11px;
    line-height: 28px;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    .recur-event-calendar-event {
    padding: 5px 4px;
    font-size: 10px;
  }

  #puck-content:has(.recur-event-calendar) .recur-event-modal-title {
    padding-inline: 22px;
  }

  #puck-content:has(.recur-event-calendar) .recur-event-modal-body {
    padding-inline: 22px;
  }

  #puck-content:has(.recur-event-calendar) .recur-event-modal-button {
    margin-inline: 22px;
  }
}

main:has(#puck-content .recur-event-calendar) {
  padding-bottom: 0 !important;
}

main:has(#puck-content .recur-event-calendar) + .site-footer {
  margin-top: 0 !important;
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    > div
    > div:first-child
    button,
  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    .recur-event-calendar-event {
    transition: none;
  }

  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    > div
    > div:first-child
    button:hover,
  #puck-content:has(.recur-event-calendar)
    .recur-event-calendar
    .recur-event-calendar-event:hover {
    transform: none;
  }
}

/*
 * Events interior page
 * The event source remains AMS/Recur-managed. These rules style the native
 * EventList in both its current empty state and future card/modal states.
 */
#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(3) {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(26px, 4vw, 42px) var(--nabip-gutter);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: linear-gradient(135deg, var(--nabip-surface-blue), var(--nabip-white));
  box-shadow: 0 8px 24px rgba(37, 71, 124, 0.06);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  > h2:nth-child(4) {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(52px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-list {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(48px, 6vw, 76px);
  border-top: 0;
  border-bottom: 0;
  background: transparent;
  box-sizing: border-box;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-list-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 750;
  letter-spacing: -0.03em;
  line-height: 1.2;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-list-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(16px, 2.5vw, 28px) !important;
  margin-top: 22px !important;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card {
  display: flex !important;
  min-width: 0;
  min-height: 250px !important;
  flex-direction: column;
  overflow: hidden !important;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg) !important;
  background: var(--nabip-white) !important;
  box-shadow: var(--nabip-shadow-sm) !important;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card:hover {
  border-color: rgba(0, 155, 149, 0.5);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card-body {
  display: flex !important;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  padding: clamp(22px, 2.5vw, 30px) !important;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card-date {
  order: -1;
  margin: 0 0 10px !important;
  color: var(--nabip-teal-dark) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.4 !important;
  text-transform: uppercase;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card-title {
  order: 0;
  margin: 0 0 0 !important;
  color: var(--nabip-navy) !important;
  font-size: clamp(20px, 2vw, 26px) !important;
  font-weight: 750 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.2 !important;
  font-family: inherit !important;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card-description {
  order: 1;
  margin: 14px 0 0 !important;
  color: var(--nabip-muted) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  display: block !important;
  -webkit-line-clamp: initial !important;
  -webkit-box-orient: initial !important;
  overflow: visible !important;
  font-family: inherit !important;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card-button {
  display: inline-flex;
  min-height: 46px !important;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  margin-top: auto !important;
  padding: 11px 20px !important;
  border: 1px solid var(--nabip-teal) !important;
  border-radius: 999px !important;
  background: var(--nabip-teal) !important;
  color: var(--nabip-white) !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  font-family: inherit !important;
  text-decoration: none !important;
  transition: background 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  box-sizing: border-box;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-card-button:hover {
  border-color: var(--nabip-teal-dark) !important;
  background: var(--nabip-teal-dark) !important;
  box-shadow: 0 9px 20px rgba(0, 124, 120, 0.22);
  color: var(--nabip-white) !important;
  transform: translateY(-2px);
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-list-empty {
  max-width: 760px;
  margin: 0 auto;
  padding: clamp(24px, 4vw, 38px) clamp(18px, 4vw, 36px) !important;
  border: 0;
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  color: var(--nabip-muted) !important;
  font-size: 15px;
  font-weight: 650;
  line-height: 1.65;
  text-align: center !important;
  box-sizing: border-box;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(6) {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(30px, 4vw, 48px) var(--nabip-gutter) clamp(56px, 7vw, 88px);
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.75;
  text-align: center;
}

/*
 * EventList's details modal is appended directly to body by the native
 * renderer. The body :has() guard keeps these rules on Events only while the
 * event-list page is present, and preserves the renderer's display toggling.
 */
body:has(#puck-content .recur-event-list) #recur-event-modal-overlay {
  padding: 20px !important;
  background: rgba(22, 31, 38, 0.72) !important;
}

body:has(#puck-content .recur-event-list) #recur-event-modal {
  width: min(100%, 640px) !important;
  max-width: 640px !important;
  max-height: min(720px, calc(100vh - 40px)) !important;
  overflow: auto !important;
  border: 1px solid var(--nabip-border) !important;
  border-radius: var(--nabip-radius-lg) !important;
  background: var(--nabip-white) !important;
  box-shadow: var(--nabip-shadow-md) !important;
}

body:has(#puck-content .recur-event-list)
  #recur-event-modal
  > div[style*="padding"] {
  padding: 28px !important;
}

body:has(#puck-content .recur-event-list) #recur-event-modal .recur-event-modal-title {
  padding: 0 !important;
  color: var(--nabip-navy) !important;
  font-size: clamp(22px, 3vw, 30px) !important;
  font-weight: 750 !important;
  line-height: 1.2 !important;
  font-family: inherit !important;
}

body:has(#puck-content .recur-event-list) #recur-event-modal .recur-event-modal-body {
  margin: 0 0 20px !important;
  padding: 0 !important;
  color: var(--nabip-text) !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  font-family: inherit !important;
}

body:has(#puck-content .recur-event-list)
  #recur-event-modal
  .recur-event-modal-button {
  display: inline-flex !important;
  min-height: 46px !important;
  align-items: center;
  justify-content: center;
  padding: 11px 20px !important;
  border: 1px solid var(--nabip-teal) !important;
  border-radius: 999px !important;
  background: var(--nabip-teal) !important;
  color: var(--nabip-white) !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  text-decoration: none !important;
  box-sizing: border-box;
}

body:has(#puck-content .recur-event-list)
  #recur-event-modal
  > div[style*="padding"]
  > div:first-child
  > button {
  min-width: 44px !important;
  min-height: 44px !important;
  padding: 8px !important;
  border: 0 !important;
  color: var(--nabip-muted) !important;
  font-size: 26px !important;
  line-height: 1 !important;
}

@media (max-width: 980px) {
  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-list-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(> .recur-event-list:nth-child(5))
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    > .puck-text:nth-child(3) {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    > h2:nth-child(4) {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-list {
    padding: 12px var(--nabip-gutter) 48px;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-list-grid {
    grid-template-columns: 1fr !important;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-card {
    min-height: 0 !important;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-card-button {
    width: 100%;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    > .puck-text:nth-child(6) {
    padding-block: 28px 56px;
  }

  body:has(#puck-content .recur-event-list)
    #recur-event-modal
    > div[style*="padding"] {
    padding: 22px !important;
  }

  body:has(#puck-content .recur-event-list)
    #recur-event-modal
    .recur-event-modal-button {
    width: 100%;
  }

  body:has(#puck-content .recur-event-list)
    #recur-event-modal
    > div[style*="padding"]
    > div:first-child
    > button {
    min-width: 44px !important;
    min-height: 44px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-card,
  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-card-button {
    transition: none;
  }

  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-card:hover,
  #puck-content:has(> .recur-event-list:nth-child(5))
    .recur-event-card-button:hover {
    transform: none;
  }
}

/*
 * Continuing Education interior page
 * CE topics use selective cards for comparison; partner cards remain a
 * restrained logo grid. All copy and destinations stay in the native payload.
 */
#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-text:nth-child(3) {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius);
  background: linear-gradient(135deg, var(--nabip-surface-blue), var(--nabip-white));
  box-shadow: 0 8px 24px rgba(37, 71, 124, 0.06);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
  text-align: center;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > h2 {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(52px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch;
  gap: clamp(16px, 2.5vw, 28px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(48px, 6vw, 76px);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-grid-column {
  display: flex;
  min-width: 0;
  align-items: stretch;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-card--education {
  display: flex;
  width: 100%;
  min-height: 250px;
  flex-direction: column;
  justify-content: flex-start;
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid var(--nabip-border);
  border-top: 4px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  text-align: left !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-grid-column:nth-child(2)
  .puck-card--education {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-grid-column:nth-child(3)
  .puck-card--education {
  border-top-color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-card--education
  > div {
  display: flex;
  height: 100%;
  flex-direction: column;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-card--education
  .puck-card-eyebrow {
  margin: 0 0 14px;
  color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-card--education
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(20px, 2vw, 27px);
  line-height: 1.22;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--monthly-education
  .puck-card--education
  .puck-card-description {
  margin: 16px 0 0;
  color: var(--nabip-muted);
  font-size: 15px;
  line-height: 1.65;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-image {
  width: 100%;
  max-width: var(--nabip-content);
  min-height: 0;
  margin: 0 auto;
  padding: 12px var(--nabip-gutter) clamp(28px, 4vw, 48px);
  justify-content: center;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-image
  .puck-image-img {
  width: min(100%, 116px) !important;
  height: auto !important;
  max-height: 120px;
  object-fit: contain !important;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > h2:nth-child(6) {
  padding-top: clamp(48px, 6vw, 76px);
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-text:nth-child(7) {
  max-width: 900px;
  padding-block: 0 26px;
  line-height: 1.8;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-text:nth-child(8) {
  max-width: 760px;
  padding: 24px var(--nabip-gutter) 10px;
  color: var(--nabip-navy);
  font-size: 17px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-button-container {
  display: flex;
  justify-content: center;
  padding: 0 var(--nabip-gutter) clamp(52px, 7vw, 84px);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-button-container
  .puck-button {
  min-width: 236px;
  min-height: 48px !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > h2:nth-child(10) {
  padding-top: clamp(48px, 6vw, 76px);
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch;
  gap: 24px !important;
  padding: 28px var(--nabip-gutter) clamp(26px, 3.5vw, 42px);
  background: transparent;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-grid-column {
  display: grid;
  min-width: 0;
  align-content: stretch;
  gap: clamp(14px, 2vw, 22px);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner {
  display: flex;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(37, 71, 124, 0.16);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
  box-shadow: 0 5px 16px rgba(37, 71, 124, 0.07);
  color: inherit;
  text-decoration: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  > div:first-child {
  height: 116px !important;
  min-height: 116px;
  padding: 16px 18px 10px;
  background: rgba(255, 255, 255, 0.66);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  > div:last-child {
  display: flex;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  padding: 13px 38px 15px 16px;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: 14px;
  letter-spacing: -0.015em;
  line-height: 1.25;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner
  .puck-card-description {
  margin: 4px 0 0;
  color: var(--nabip-muted);
  font-size: 11px;
  line-height: 1.35;
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner:hover {
  border-color: rgba(0, 155, 149, 0.58);
  box-shadow: 0 13px 26px rgba(37, 71, 124, 0.14);
  color: inherit;
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-grid--partners
  .puck-card--partner:focus-visible,
#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-button-container
  .puck-button:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.38);
  outline-offset: 4px;
}

@media (max-width: 980px) {
  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--monthly-education {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--monthly-education
    .puck-card--education {
    min-height: 300px;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-text:nth-child(3) {
    margin-inline: var(--nabip-gutter);
    padding: 24px;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > h2 {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--monthly-education {
    grid-template-columns: 1fr !important;
    padding: 12px var(--nabip-gutter) 48px;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--monthly-education
    .puck-card--education {
    min-height: 0;
    padding: 24px 22px;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    padding: 28px var(--nabip-gutter) clamp(26px, 3.5vw, 42px);
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner
    > div:first-child {
    height: 116px !important;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-button-container
    .puck-button {
    width: 100%;
  }
}

@media (max-width: 560px) {
  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners {
    grid-template-columns: 1fr !important;
    padding-top: 20px;
    padding-bottom: 26px;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-grid-column {
    gap: 14px;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner
    > div:first-child {
    height: 108px !important;
    min-height: 108px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--monthly-education
    .puck-card--education,
  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner {
    transition: none;
  }

  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--monthly-education
    .puck-card--education:hover,
  #puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
    > .puck-grid--partners
    .puck-card--partner:hover {
    transform: none;
  }
}

/*
 * Shared section frame alignment — program pages
 * Preserve native grid breakpoints, card variants, images, partner links, and
 * action destinations while aligning outer components with Home's frame.
 */
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-text:nth-child(2),
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2:nth-child(3),
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-grid--people,
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2:nth-child(5),
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-grid--committee-people,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > h2,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-grid--monthly-education,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-image,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-button-container,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-grid--partners,
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-text:nth-child(2),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2:nth-child(3),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-grid--resource-cards:nth-child(4),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2:nth-child(5),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-grid--resource-cards:nth-child(6),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2:nth-child(7),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-grid--resource-cards:nth-child(8) {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2:nth-child(3),
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2:nth-child(5),
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-grid--people,
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-grid--committee-people,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > h2,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-grid--monthly-education,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-image,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-button-container,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-grid--partners,
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2:nth-child(3),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2:nth-child(5),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2:nth-child(7),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-grid--resource-cards:nth-child(4),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-grid--resource-cards:nth-child(6),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-grid--resource-cards:nth-child(8) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-text:nth-child(2) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 856px) / 2)
  );
}

#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text:nth-child(3) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text:nth-child(7) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text:nth-child(8) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 696px) / 2)
  );
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-text:nth-child(2) {
  padding-inline: clamp(16px, 4vw, 52px);
}

/* Match the Oklahoma logo panel and caption treatment to the national Image Puck. */
#puck-content
  .puck-card--affiliation:has(
    > div:first-child img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > div:first-child {
  display: flex !important;
  width: min(100%, 530px) !important;
  min-height: 190px !important;
  height: auto !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 24px auto 0;
  padding: 18px 24px;
  background: var(--nabip-surface);
  border-radius: var(--nabip-radius);
  box-sizing: border-box;
}

#puck-content
  .puck-card--affiliation:has(
    > div:first-child img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > div:first-child
  img {
  display: block;
  width: 100% !important;
  max-width: 100%;
  height: 124px !important;
  object-fit: contain !important;
  object-position: center;
  border-radius: 0;
  box-shadow: none;
}

#puck-content
  .puck-card--affiliation:has(
    > div:first-child img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > div:first-child::after {
  content: "National Association of Benefits and Insurance Professionals";
  display: block;
  margin-top: 10px;
  color: var(--nabip-muted);
  font-size: 12px;
  line-height: 1.45;
  text-align: center;
}

/* Match the Oklahoma panel's content order to the national affiliation panel. */
#puck-content:has(> .puck-grid--affiliation-features:nth-child(4))
  > .puck-grid--affiliation-features:nth-child(4)
  .puck-grid-column:has(
    > .puck-card--affiliation
      > div:first-child
      img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > .puck-card--affiliation {
  display: contents !important;
}

#puck-content:has(> .puck-grid--affiliation-features:nth-child(4))
  > .puck-grid--affiliation-features:nth-child(4)
  .puck-grid-column
  > .puck-card--affiliation:has(
    > div:first-child img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > div:nth-child(2) {
  order: 1;
  width: 100%;
}

#puck-content:has(> .puck-grid--affiliation-features:nth-child(4))
  > .puck-grid--affiliation-features:nth-child(4)
  .puck-grid-column
  > .puck-card--affiliation:has(
    > div:first-child img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > div:first-child {
  order: 2;
}

#puck-content:has(> .puck-grid--affiliation-features:nth-child(4))
  > .puck-grid--affiliation-features:nth-child(4)
  .puck-grid-column:has(
    > .puck-card--affiliation
      > div:first-child
      img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > .puck-text {
  order: 3;
}

#puck-content:has(> .puck-grid--affiliation-features:nth-child(4))
  > .puck-grid--affiliation-features:nth-child(4)
  .puck-grid-column:has(
    > .puck-card--affiliation
      > div:first-child
      img[src*="596208fa-097e-4654-a301-7726a53528f3"]
  )
  > .puck-button-container {
  order: 4;
}

/*
 * Sponsorship offer tiles
 * Scoped to pages that contain the native product-list widget so the
 * shared event and member widgets retain their existing treatment.
 */
#puck-content:has(> .recur-product-list)
  > .recur-product-list {
  padding-top: clamp(28px, 4vw, 48px);
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-list-title {
  max-width: 760px;
  margin-inline: auto;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 1.08;
  text-align: center;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-list-grid {
  gap: clamp(18px, 2.2vw, 28px);
  margin-top: clamp(30px, 4vw, 46px);
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  border: 1px solid rgba(37, 71, 124, 0.16);
  border-top: 5px solid var(--nabip-teal);
  border-radius: 18px;
  background: var(--nabip-white);
  box-shadow: 0 12px 32px rgba(22, 31, 38, 0.09);
  transition:
    transform 180ms ease,
    box-shadow 180ms ease,
    border-color 180ms ease;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card:hover {
  border-color: rgba(0, 155, 149, 0.44);
  box-shadow: 0 18px 42px rgba(22, 31, 38, 0.14);
  transform: translateY(-5px);
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card:focus-within {
  border-color: var(--nabip-teal);
  box-shadow: 0 0 0 4px rgba(0, 155, 149, 0.15), 0 18px 42px rgba(22, 31, 38, 0.12);
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-image {
  display: flex;
  height: 154px !important;
  align-items: center;
  justify-content: center;
  padding: 18px;
  background: var(--nabip-white) !important;
  box-sizing: border-box;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-image
  img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  filter: drop-shadow(0 5px 12px rgba(0, 0, 0, 0.16));
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 24px;
  padding: 22px 22px 24px;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(17px, 1.5vw, 20px);
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.25;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-price {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  margin: 14px 0 0;
  padding: 4px 12px;
  border-radius: 999px;
  background: var(--nabip-surface-blue);
  color: var(--nabip-teal-dark);
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-description {
  margin: 16px 0 0;
  color: var(--nabip-muted);
  font-size: 13px;
  line-height: 1.65;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-button {
  width: 100%;
  min-height: 46px;
  margin-top: auto;
  padding: 11px 16px;
  border: 1px solid var(--nabip-teal);
  border-radius: 8px;
  background: var(--nabip-teal);
  color: var(--nabip-white);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.01em;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
  transition:
    background 160ms ease,
    border-color 160ms ease,
    transform 160ms ease;
}

#puck-content:has(> .recur-product-list)
  > .recur-product-list
  .recur-product-card-button:hover {
  border-color: var(--nabip-teal-dark);
  background: var(--nabip-teal-dark);
  color: var(--nabip-white);
  transform: translateY(-1px);
}

@media (max-width: 700px) {
  #puck-content:has(> .recur-product-list)
    > .recur-product-list
    .recur-product-card-image {
    height: 138px !important;
  }

  #puck-content:has(> .recur-product-list)
    > .recur-product-list
    .recur-product-card-body {
    padding: 20px 18px 20px;
  }
}

@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
  :scope > .puck-text:nth-child(3) {
    padding-inline: clamp(16px, 2vw, 28px) !important;
  }
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(3) {
  padding-inline: clamp(16px, 2vw, 28px) !important;
}

@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
  :scope > .puck-text:nth-child(3) {
    padding-inline: clamp(16px, 2vw, 28px) !important;
  }
}

/*
 * Native text-card content width
 * Keep the visible panels unchanged while giving their copy a small,
 * consistent responsive inset across interior pages.
 */
main:has(.puck-grid--mission-vision):has(.puck-grid--documents)
  .puck-grid--ethics
  .puck-text,
#puck-content:has(.puck-grid--people):has(.puck-grid--committee-people)
  > .puck-text:nth-child(2),
#puck-content:has(
    > .puck-hero[style*="af9d3a20-fa5e-4aed-b2e7-5c65bb891faf.jpg"]
  )
  > .puck-text:nth-child(3),
#puck-content:has(.puck-grid--member-services):has(.puck-cta--member-benefits)
  > .puck-text:nth-child(9),
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(4),
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(6),
#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(3),
#puck-content:has(.puck-grid--monthly-education):has(.puck-grid--partners)
  > .puck-text:nth-child(3),
#puck-content:has(> .puck-grid--consumer-guidance):has(
    > .puck-grid--consumer-oklahoma-resources
  ):has(> .puck-grid--consumer-partners)
  > .puck-text:nth-child(3),
#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(4),
#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(6),
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > .puck-text:nth-child(3) {
  padding-inline: clamp(16px, 2vw, 28px) !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > h2:nth-child(6),
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > .puck-grid--resource-cards:nth-child(7) {
  position: relative;
  background: transparent;
  isolation: isolate;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > h2:nth-child(6)::before,
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > .puck-grid--resource-cards:nth-child(7)::before {
  position: absolute;
  z-index: -1;
  inset: 0 calc(50% - 50vw);
  background: var(--nabip-surface-blue);
  content: "";
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > .puck-grid--resource-cards:nth-child(9)
  .puck-grid-column {
  display: contents;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--resource-cards:nth-child(9))
  > .puck-grid--resource-cards:nth-child(9)
  .puck-card--resource {
  height: 100%;
}

/*
 * NABIP Foundation — native Space before mission card
 * The large Space at child 2 shifts the existing Foundation sequence by one.
 */
@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--resource-cards:nth-child(9))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > .puck-text:nth-child(3) {
    width: min(100%, var(--nabip-content)) !important;
    max-width: none !important;
    margin: 0 auto;
    padding: clamp(32px, 5vw, 60px) clamp(16px, 4vw, 52px)
      clamp(40px, 5vw, 64px);
    border-left: 5px solid var(--nabip-teal);
    background: var(--nabip-surface-blue);
    color: var(--nabip-text);
    font-size: clamp(16px, 1.4vw, 19px);
    line-height: 1.8;
    box-sizing: border-box;
  }

  :scope > h2 {
    width: min(100%, var(--nabip-content)) !important;
    max-width: none;
    margin: 0 auto;
    padding: clamp(48px, 6vw, 76px) var(--nabip-gutter) 20px;
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > h2:nth-child(6),
  :scope > .puck-grid--resource-cards:nth-child(7) {
    background: var(--nabip-surface-blue);
  }

  :scope > .puck-grid--resource-cards {
    width: min(100%, var(--nabip-content)) !important;
    max-width: none;
    margin-inline: auto;
    align-items: stretch;
    gap: clamp(16px, 2.5vw, 28px) !important;
    padding: 16px var(--nabip-gutter) clamp(52px, 7vw, 84px);
    box-sizing: border-box;
  }

  :scope > .puck-grid--resource-cards:nth-child(5) {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  :scope > .puck-grid--resource-cards:nth-child(7) {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  :scope > .puck-grid--resource-cards:nth-child(9) {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    padding-bottom: clamp(64px, 8vw, 96px);
  }

  :scope > .puck-grid--resource-cards:nth-child(9) .puck-grid-column {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
    align-items: stretch;
  }

  :scope > .puck-grid--resource-cards:nth-child(9)
    .puck-grid-column
    > .puck-card--resource {
    width: 100%;
  }

  :scope > .puck-grid--resource-cards .puck-card--resource {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 250px;
    flex-direction: column;
    justify-content: flex-start;
    padding: 26px 22px 52px !important;
    border: 1px solid var(--nabip-border);
    border-top: 4px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    color: inherit;
    text-align: left !important;
    text-decoration: none;
    box-sizing: border-box;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  }

  :scope > .puck-grid--resource-cards:nth-child(7)
    .puck-card--resource {
    min-height: 230px;
    border-top-color: var(--nabip-blue);
  }

  :scope > .puck-grid--resource-cards:nth-child(9)
    .puck-card--resource {
    min-height: 220px;
    border-top-color: var(--nabip-navy-soft);
  }

  :scope > .puck-grid--resource-cards .puck-card--resource::after {
    position: absolute;
    right: 22px;
    bottom: 20px;
    color: var(--nabip-teal-dark);
    content: "↗";
    font-size: 19px;
    line-height: 1;
  }

  :scope > .puck-grid--resource-cards .puck-card--resource:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--resource-cards .puck-card--resource:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--resource-cards .puck-card-eyebrow {
    margin: 0 0 12px;
    color: var(--nabip-teal-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.3;
  }

  :scope > .puck-grid--resource-cards .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: clamp(18px, 1.8vw, 25px);
    line-height: 1.22;
  }

  :scope > .puck-grid--resource-cards:nth-child(9) .puck-card-title {
    font-size: clamp(16px, 1.35vw, 20px);
  }

  :scope > .puck-grid--resource-cards .puck-card-description {
    margin: 13px 0 0;
    color: var(--nabip-muted);
    font-size: 13px;
    line-height: 1.62;
  }

  :scope > .puck-grid--resource-cards .puck-card-meta {
    margin: auto 0 0;
    padding: 14px 0 0;
    border-top: 1px solid var(--nabip-border);
    list-style: none;
  }

  :scope > .puck-grid--resource-cards .puck-card-meta-value {
    color: var(--nabip-teal-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
  }
}

@media (max-width: 1100px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--resource-cards:nth-child(9))) {
    :scope > .puck-grid--resource-cards:nth-child(5),
    :scope > .puck-grid--resource-cards:nth-child(9) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--resource-cards:nth-child(9))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-text:nth-child(3) {
      margin-inline: var(--nabip-gutter);
      padding-inline: 20px;
    }

    :scope > .puck-grid--resource-cards:nth-child(5),
    :scope > .puck-grid--resource-cards:nth-child(7),
    :scope > .puck-grid--resource-cards:nth-child(9) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--resource-cards .puck-card--resource {
      min-height: 230px;
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--resource-cards:nth-child(9))) {
    .puck-card--resource {
      transition: none;
    }
  }
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-grid--resource-cards:nth-child(7) {
  position: relative;
  padding-bottom: clamp(24px, 3vw, 36px);
  background: transparent;
  isolation: isolate;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-grid--resource-cards:nth-child(7)::before {
  position: absolute;
  z-index: -1;
  inset: 0 calc(50% - 50vw);
  background: var(--nabip-surface-blue);
  content: "";
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > h2:nth-child(6) {
  position: relative;
  background: transparent;
  isolation: isolate;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > h2:nth-child(6)::before {
  position: absolute;
  z-index: -1;
  inset: 0 calc(50% - 50vw);
  background: var(--nabip-surface-blue);
  content: "";
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-grid--partners:nth-child(11) {
  background: transparent;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(8),
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-button-container:nth-child(9) {
  position: relative;
  background: transparent;
  isolation: isolate;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(8) {
  padding-top: clamp(14px, 2vw, 22px);
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(8)::before,
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-button-container:nth-child(9)::before {
  position: absolute;
  z-index: -1;
  inset: 0 calc(50% - 50vw);
  background: var(--nabip-surface-blue);
  content: "";
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(2):empty {
  display: none;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(8) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > :is(
    h2:nth-child(5),
    .puck-text:nth-child(6)
  ) {
  width: 100vw !important;
  max-width: none !important;
  margin-inline: calc(50% - 50vw) !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(6) {
  width: min(calc(100% - (2 * var(--nabip-gutter))), 900px) !important;
  max-width: 900px !important;
  margin: 16px auto clamp(64px, 8vw, 96px) !important;
  padding: clamp(26px, 4vw, 42px);
  border: 1px solid var(--nabip-border);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow:
    var(--nabip-shadow-md),
    0 0 0 100vmax var(--nabip-surface-blue);
  color: var(--nabip-text);
  font-size: clamp(15px, 1.35vw, 17px);
  line-height: 1.85;
  white-space: pre-line !important;
  clip-path: inset(-24px -100vmax -24px -100vmax);
}

@media (min-width: 701px) {
  #puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
    > .puck-image:nth-child(3) {
    width: min(100%, 640px) !important;
    margin-inline: 0 !important;
    justify-self: end;
  }

  #puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
    > .puck-text:nth-child(4) {
    width: min(100%, 640px) !important;
    margin-inline: 0 !important;
    justify-self: start;
  }
}

#puck-content#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2:nth-child(7),
#puck-content#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-grid--committee-people {
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-inline: max(
    var(--nabip-gutter),
    calc((100vw - var(--nabip-content)) / 2)
  );
  background: var(--nabip-surface-blue);
  box-sizing: border-box;
}

#puck-content#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2:nth-child(5) {
  width: 100vw !important;
  max-width: none !important;
  margin-top: 0 !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-top: 0 !important;
  border-top: 0 !important;
  padding-inline: max(
    var(--nabip-gutter),
    calc((100vw - var(--nabip-content)) / 2)
  );
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-grid--committee-people {
  border-top: 0;
}

main:has(
    #puck-content > .puck-grid--people
  ):has(
    #puck-content > .puck-grid--committee-people
  ) {
  padding-bottom: 0;
}

main:has(
    #puck-content > .puck-grid--people
  ):has(
    #puck-content > .puck-grid--committee-people
  )
  + .site-footer {
  margin-top: 0;
}

/*
 * Final Home, Contact, and Legislative frame pass
 * Keep the selected Home quick-links grid unchanged; widen only its
 * surrounding prose/action outer frames while retaining readable measures.
 */
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(4),
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(10),
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(17),
#puck-content:has(> .puck-grid--quick-links)
  > .puck-cta--advocacy:nth-child(8) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: var(--nabip-content) !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(4),
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(10),
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(17) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(4) p,
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(10) p,
#puck-content:has(> .puck-grid--quick-links)
  > .puck-text:nth-child(17) p {
  width: min(100%, 900px);
  max-width: 900px;
  margin-inline: auto;
}

#puck-content:has(> h2:nth-child(3)):has(> div:nth-child(4):not([class]))
  > .puck-text:nth-child(2),
#puck-content:has(> h2:nth-child(3)):has(> div:nth-child(4):not([class]))
  > h2:nth-child(3),
#puck-content:has(> h2:nth-child(3)):has(> div:nth-child(4):not([class]))
  > div:nth-child(4):not([class]) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: var(--nabip-content) !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

#puck-content:has(> h2:nth-child(3)):has(> div:nth-child(4):not([class]))
  > .puck-text:nth-child(2) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> h2:nth-child(3)):has(> div:nth-child(4):not([class]))
  > .puck-text:nth-child(2) p {
  width: min(100%, 900px);
  max-width: 900px;
  margin-inline: auto;
}

#puck-content:has(> h2:nth-child(3)):has(> div:nth-child(4):not([class]))
  > div:nth-child(4):not([class])
  > div {
  width: min(100%, 820px);
  max-width: 820px;
  margin-inline: auto;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5))
  > .puck-text:nth-child(2),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5))
  > .puck-button-container:nth-child(5) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: var(--nabip-content) !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5))
  > .puck-text:nth-child(2) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5))
  > .puck-text:nth-child(2) p {
  width: min(100%, 900px);
  max-width: 900px;
  margin-inline: auto;
}

/*
 * Final information-page frame pass
 * Keep the native gallery, resource, partner, image-viewer, and CTA
 * structures intact while aligning their direct section frames with Home.
 */
#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partner-grid:nth-child(10))
  > :is(
    h2:nth-child(2),
    .puck-grid--charitable-overview:nth-child(3),
    h2:nth-child(4),
    .puck-text:nth-child(5),
    .puck-button-container:nth-child(6),
    h2:nth-child(7),
    .puck-grid--charitable-gallery:nth-child(8),
    h2:nth-child(9),
    .puck-grid--partner-grid:nth-child(10)
  ),
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))
  > :is(
    .puck-text:nth-child(2),
    .puck-text:nth-child(3),
    h2:nth-child(4),
    .puck-grid--resource-cards:nth-child(5),
    h2:nth-child(6),
    .puck-grid--resource-cards:nth-child(7),
    .puck-text:nth-child(8),
    .puck-button-container:nth-child(9),
    h2:nth-child(10),
    .puck-grid--partners:nth-child(11)
  ) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: none !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partner-grid:nth-child(10))
  > :is(
    h2:nth-child(2),
    .puck-grid--charitable-overview:nth-child(3),
    h2:nth-child(4),
    .puck-button-container:nth-child(6),
    h2:nth-child(7),
    .puck-grid--charitable-gallery:nth-child(8),
    h2:nth-child(9),
    .puck-grid--partner-grid:nth-child(10)
  ),
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))
  > :is(
    h2:nth-child(4),
    .puck-grid--resource-cards:nth-child(5),
    h2:nth-child(6),
    .puck-grid--resource-cards:nth-child(7),
    .puck-button-container:nth-child(9),
    h2:nth-child(10),
    .puck-grid--partners:nth-child(11)
  ) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partner-grid:nth-child(10))
  > .puck-text:nth-child(5) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 576px) / 2)
  );
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(2),
#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(3) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(8) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 696px) / 2)
  );
}

#puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
  > :is(
    .puck-text:nth-child(9),
    .puck-cta--member-benefits
  ) {
  grid-column: 1 / -1 !important;
  width: min(100%, var(--nabip-content)) !important;
  max-width: none !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
  > .puck-text:nth-child(9) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
  > :is(
    h2:nth-child(7),
    .puck-grid--member-services,
    .puck-grid--mission-vision,
    h2:nth-child(13),
    .puck-grid--partners
  ) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: none !important;
  margin-inline: auto !important;
  padding-inline: var(--nabip-gutter);
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
  > .puck-grid--member-services {
  padding-inline: 0 !important;
}

#puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
  > .puck-grid--mission-vision {
  padding-inline: 0 !important;
}

@media (min-width: 701px) {
  #puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
    > .puck-image:nth-child(3) {
    grid-column: 1 / span 6 !important;
    width: calc(
      100% - max(0px, calc((100vw - 1344px) / 2))
    ) !important;
    margin-left: max(
      0px,
      calc((100vw - 1344px) / 2)
    ) !important;
  }

  #puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
    > .puck-text:nth-child(4) {
    grid-column: 7 / span 6 !important;
    width: calc(
      100% - max(0px, calc((100vw - 1344px) / 2))
    ) !important;
    margin-right: max(
      0px,
      calc((100vw - 1344px) / 2)
    ) !important;
  }

  #puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
    > .puck-image:nth-child(5) {
    grid-column: 7 / span 6 !important;
    width: calc(
      100% - max(0px, calc((100vw - 1344px) / 2))
    ) !important;
    margin-right: max(
      0px,
      calc((100vw - 1344px) / 2)
    ) !important;
  }

  #puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
    > .puck-text:nth-child(6) {
    grid-column: 1 / span 6 !important;
    width: calc(
      100% - max(0px, calc((100vw - 1344px) / 2))
    ) !important;
    margin-left: max(
      0px,
      calc((100vw - 1344px) / 2)
    ) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(> .puck-grid--member-services):has(> .puck-cta--member-benefits)
    > :is(
      .puck-image:nth-child(3),
      .puck-text:nth-child(4),
      .puck-image:nth-child(5),
      .puck-text:nth-child(6)
    ) {
    grid-column: 1 / -1 !important;
    width: min(100%, var(--nabip-content)) !important;
    max-width: none !important;
    margin-inline: auto !important;
    box-sizing: border-box;
  }
}

#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > h2,
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > h2,
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > h2 {
  width: min(100%, var(--nabip-content)) !important;
}

@media (max-width: 700px) {
  #puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
    > .puck-text:nth-child(2),
  #puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
    > .puck-text:nth-child(2),
  #puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
    > .puck-text:nth-child(2) {
    margin-inline: 0;
  }
}

/*
 * Newsletter interior page
 * The archive remains native File content. These rules turn each native
 * download row into a compact resource card without changing its URL, label,
 * download attribute, or approved archive order.
 */
#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-text:nth-child(2) {
  display: none;
  max-width: 820px;
  margin: 0 auto;
  padding: clamp(26px, 4vw, 42px) var(--nabip-gutter);
  color: var(--nabip-text);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
  text-align: center;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > h2:nth-child(3) {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(28px, 4vw, 48px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch;
  gap: clamp(14px, 2vw, 22px) !important;
  padding: clamp(52px, 7vw, 84px)
    max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2));
  border-top: 1px solid var(--nabip-border);
  border-bottom: 1px solid var(--nabip-border);
  background: var(--nabip-surface-blue);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column {
  display: flex;
  min-width: 0;
  align-items: stretch;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: stretch;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a {
  display: flex !important;
  width: 100%;
  min-height: 232px;
  flex-direction: column;
  overflow: hidden;
  padding: 22px;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm) !important;
  color: var(--nabip-text);
  text-align: left;
  text-decoration: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a:hover {
  border-color: rgba(0, 155, 149, 0.52);
  box-shadow: var(--nabip-shadow-md) !important;
  color: var(--nabip-text);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 3px;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div {
  display: flex !important;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  align-items: stretch !important;
  gap: 0 !important;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div
  > div:first-child {
  width: 48px !important;
  height: 48px !important;
  margin-bottom: 20px;
  border-radius: 12px;
  background: var(--nabip-surface-blue);
  color: var(--nabip-teal-dark);
  font-size: 22px;
  line-height: 48px;
  text-align: center;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div
  > div:nth-child(2) {
  display: flex !important;
  min-width: 0;
  flex: 1;
  flex-direction: column;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div
  > div:nth-child(2)
  > div:first-child {
  overflow: visible !important;
  color: var(--nabip-navy);
  font-size: clamp(18px, 1.8vw, 22px);
  font-weight: 750;
  letter-spacing: -0.02em;
  line-height: 1.25;
  white-space: normal !important;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div
  > div:nth-child(2)
  > div:nth-child(2) {
  margin-top: 10px;
  color: var(--nabip-muted);
  font-size: 13px;
  line-height: 1.55;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div
  > div:nth-child(2)
  > div:last-child {
  display: flex !important;
  gap: 8px !important;
  margin-top: 16px;
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-transform: uppercase;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards
  .puck-grid-column
  > div
  > a
  > div
  > div:last-child {
  display: inline-flex !important;
  min-height: 44px;
  align-items: center;
  justify-content: flex-start;
  margin-top: 18px;
  padding: 10px 0;
  border-top: 1px solid var(--nabip-border);
  color: var(--nabip-teal-dark);
  font-size: 13px;
  font-weight: 750;
  line-height: 1.4;
}

@media (max-width: 980px) {
#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-grid--resource-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-hero {
    min-height: 360px !important;
  }

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-text:nth-child(2) {
    margin-inline: var(--nabip-gutter);
    padding: 24px var(--nabip-gutter);
  }

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > h2:nth-child(3) {
    padding: 48px var(--nabip-gutter) 16px;
  }

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-grid--resource-cards {
    grid-template-columns: 1fr !important;
    padding: 56px var(--nabip-gutter);
  }

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-grid--resource-cards
    .puck-grid-column
    > div
    > a {
    min-height: 0;
    padding: 20px;
  }

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-grid--resource-cards
    .puck-grid-column
    > div
    > a
    > div
    > div:nth-child(2)
    > div:first-child {
    font-size: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-grid--resource-cards
    .puck-grid-column
    > div
    > a {
    transition: none;
  }

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-grid--resource-cards
    .puck-grid-column
    > div
    > a:hover {
    transform: none;
  }
}

/*
 * Public Announcements interior page
 * This page currently contains one approved native announcement card. The
 * styling emphasizes its publication metadata without suggesting recency.
 */
#puck-content:has(.puck-grid--announcements)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--announcements)
  > .puck-text:nth-child(2) {
  display: none;
  max-width: 820px;
  margin: 0 auto;
  padding: clamp(26px, 4vw, 42px) var(--nabip-gutter);
  color: var(--nabip-text);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
  text-align: center;
}

#puck-content:has(.puck-grid--announcements)
  > h2:nth-child(3) {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(28px, 4vw, 48px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements {
  width: 100%;
  max-width: none;
  grid-template-columns: 1fr !important;
  padding: 18px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(52px, 7vw, 84px);
  border-top: 1px solid var(--nabip-border);
  border-bottom: 1px solid var(--nabip-border);
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-grid-column {
  display: flex;
  min-width: 0;
  justify-content: center;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement {
  display: grid;
  width: min(100%, 980px);
  min-height: clamp(360px, 38vw, 480px) !important;
  grid-template-columns: minmax(0, 46%) minmax(0, 54%);
  overflow: hidden;
  border: 1px solid rgba(37, 71, 124, 0.18);
  border-top: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-navy);
  box-shadow: var(--nabip-shadow-md);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  > img {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100%;
  grid-column: 1;
  grid-row: 1;
  object-fit: cover !important;
  object-position: center center !important;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-featured-overlay {
  display: none;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-featured-content {
  display: flex;
  width: 100%;
  min-height: 100%;
  flex-direction: column;
  grid-column: 2;
  grid-row: 1;
  justify-content: center;
  padding: clamp(30px, 5vw, 64px);
  background: var(--nabip-navy);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-eyebrow {
  margin: 0 0 16px;
  color: #91e3dc;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-title {
  margin: 0;
  color: var(--nabip-white);
  font-size: clamp(28px, 4vw, 48px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.08;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-description {
  max-width: 560px;
  margin: 18px 0 0;
  color: rgba(255, 255, 255, 0.9);
  font-size: clamp(16px, 1.5vw, 20px);
  line-height: 1.6;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-meta {
  margin: 26px 0 0;
  padding: 14px 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.35);
  list-style: none;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin: 0;
  align-items: baseline;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-meta-label {
  color: #91e3dc;
}

#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements
  .puck-card--announcement
  .puck-card-meta-value {
  color: var(--nabip-white);
  font-size: 14px;
  font-weight: 650;
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--announcements)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--announcements)
    > .puck-hero
    .puck-hero-title {
    max-width: 100%;
    font-size: 34px !important;
    letter-spacing: -0.04em;
    overflow-wrap: anywhere;
  }

  #puck-content:has(.puck-grid--announcements)
    > .puck-text:nth-child(2) {
    margin-inline: var(--nabip-gutter);
    padding: 24px var(--nabip-gutter);
  }

  #puck-content:has(.puck-grid--announcements)
    > h2:nth-child(3) {
    padding: 48px var(--nabip-gutter) 16px;
  }

  #puck-content:has(.puck-grid--announcements)
    > .puck-grid--announcements {
    padding: 12px var(--nabip-gutter) 56px;
  }

  #puck-content:has(.puck-grid--announcements)
    > .puck-grid--announcements
    .puck-card--announcement {
    grid-template-columns: 1fr;
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--announcements)
    > .puck-grid--announcements
    .puck-card--announcement
    > img {
    width: 100% !important;
    height: 240px !important;
    min-height: 240px;
    grid-column: 1;
    grid-row: 1;
  }

  #puck-content:has(.puck-grid--announcements)
    > .puck-grid--announcements
    .puck-card--announcement
    .puck-card-featured-content {
    min-height: 320px;
    grid-column: 1;
    grid-row: 2;
    padding: 28px 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--announcements)
    > .puck-grid--announcements
    .puck-card--announcement {
    transition: none;
  }
}

/*
 * Member Resources interior page
 * Each native grid column is treated as one action-oriented panel so its
 * heading, supporting copy, and external action stay aligned as a unit.
 */
#puck-content:has(.puck-grid--member-resources)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources {
  width: 100%;
  max-width: none;
  grid-template-columns: 1fr !important;
  align-items: stretch;
  gap: clamp(16px, 2.5vw, 28px) !important;
  padding: clamp(34px, 5vw, 64px)
    max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(56px, 7vw, 88px);
  border-top: 1px solid var(--nabip-border);
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  border: 1px solid var(--nabip-border);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column:nth-child(2) {
  border-top: 4px solid var(--nabip-blue);
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column:nth-child(1),
#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column:nth-child(3) {
  border-top: 4px solid var(--nabip-teal);
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-card--resource {
  min-height: 184px;
  padding: 28px 24px 20px !important;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  text-align: left !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-card--resource
  > div {
  display: flex;
  min-height: 100%;
  flex-direction: column;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-card--resource
  .puck-card-eyebrow {
  margin: 0 0 14px;
  color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-card--resource
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(22px, 2vw, 28px);
  line-height: 1.2;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-card--resource
  .puck-card-description {
  margin: 14px 0 0;
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.55;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column
  > .puck-text {
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0 24px 24px;
  color: var(--nabip-text);
  font-size: 15px;
  line-height: 1.7;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column
  > .puck-text
  p {
  margin: 0;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column
  > .puck-button-container {
  display: flex;
  margin-top: auto;
  padding: 0 24px 26px;
  justify-content: stretch !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-grid-column
  > .puck-button-container
  .puck-button--resource-link {
  width: 100%;
  min-height: 48px !important;
  padding-inline: 16px;
  box-sizing: border-box;
  font-size: 13px;
  text-align: center;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-button--resource-link::after {
  margin-left: 8px;
  content: "↗";
  font-size: 16px;
  line-height: 1;
}

#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources
  .puck-button--resource-link:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 3px;
}

@media (max-width: 980px) {
  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--member-resources)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--member-resources)
    > .puck-hero
    .puck-hero-title {
    max-width: 100%;
    font-size: 34px !important;
    letter-spacing: -0.04em;
    overflow-wrap: anywhere;
  }

  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources {
    grid-template-columns: 1fr !important;
    padding: 24px var(--nabip-gutter) 56px;
  }

  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources
    .puck-card--resource {
    min-height: 0;
    padding: 24px 20px 18px !important;
  }

  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources
    .puck-grid-column
    > .puck-text {
    padding-inline: 20px;
    padding-bottom: 22px;
  }

  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources
    .puck-grid-column
    > .puck-button-container {
    padding-inline: 20px;
    padding-bottom: 22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources
    .puck-grid-column,
  #puck-content:has(.puck-grid--member-resources)
    > .puck-grid--member-resources
    .puck-button--resource-link {
    transition: none;
  }
}

/*
 * Consumer Information interior page
 * Explanatory copy stays editorial; only linked guidance/resource cards and
 * partner destinations receive contained surfaces and action affordances.
 */
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-text:nth-child(2) {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter);
  color: var(--nabip-text);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
  text-align: center;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-text:nth-child(3) {
  max-width: 1216px;
  margin: 0 auto;
  padding: clamp(30px, 4vw, 44px) clamp(28px, 4vw, 52px);
  border: 1px solid var(--nabip-border);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  color: var(--nabip-muted);
  font-size: 15px;
  line-height: 1.8;
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > h2 {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(48px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources {
  width: 100%;
  max-width: none;
  align-items: stretch;
  gap: clamp(16px, 2.5vw, 28px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(48px, 6vw, 72px);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  background: var(--nabip-surface-blue);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-grid-column {
  display: flex;
  min-width: 0;
  align-items: stretch;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column
  > a,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-grid-column
  > a {
  position: relative;
  display: flex;
  width: 100%;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource {
  display: flex;
  width: 100%;
  min-height: 270px;
  flex-direction: column;
  justify-content: flex-start;
  padding: 28px 26px 54px !important;
  border: 1px solid var(--nabip-border);
  border-top: 4px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  text-align: left !important;
  box-sizing: border-box;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column:nth-child(2)
  .puck-card--resource {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource::after,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource::after {
  position: absolute;
  right: 26px;
  bottom: 22px;
  color: var(--nabip-teal-dark);
  content: "↗";
  font-size: 20px;
  line-height: 1;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource:hover,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource:hover {
  border-color: rgba(0, 155, 149, 0.52);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column
  > a:focus-visible,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-grid-column
  > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 4px;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource
  .puck-card-eyebrow {
  margin: 0 0 14px;
  color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource
  .puck-card-title,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.2;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource
  .puck-card-description,
#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-description {
  margin: 14px 0 0;
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.65;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-meta {
  margin: auto 0 0;
  padding: 16px 0 0;
  border-top: 1px solid var(--nabip-border);
  list-style: none;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-meta-value {
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-text:nth-child(8) {
  max-width: 760px;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter) 14px;
  color: var(--nabip-muted);
  font-size: 16px;
  line-height: 1.7;
  text-align: center;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-button-container {
  display: flex;
  justify-content: center;
  padding: 0 var(--nabip-gutter) clamp(48px, 6vw, 72px);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-button-container
  .puck-button--consumer-board {
  min-width: 240px;
  min-height: 48px !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-button-container
  .puck-button--consumer-board:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 3px;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > h2:nth-child(10) {
  padding-top: clamp(48px, 6vw, 76px);
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 22px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(52px, 7vw, 84px);
  background: var(--nabip-surface-blue);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column {
  display: grid;
  min-width: 0;
  align-content: start;
  gap: clamp(14px, 2vw, 22px);
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a {
  min-width: 0;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a
  > div:first-child {
  height: 112px !important;
  padding: 14px;
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a
  > div:first-child
  img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
}

#puck-content:has(.puck-grid--consumer-guidance)
  :has(.puck-grid--consumer-oklahoma-resources)
  :has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 4px;
}

@media (max-width: 980px) {
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-oklahoma-resources {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-hero
    .puck-hero-title {
    max-width: 100%;
    font-size: 34px !important;
    letter-spacing: -0.04em;
    overflow-wrap: anywhere;
  }

  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-text:nth-child(3) {
    margin-inline: var(--nabip-gutter);
    padding-inline: 20px;
  }

  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-guidance,
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-oklahoma-resources,
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-partners {
    grid-template-columns: 1fr !important;
    padding-inline: var(--nabip-gutter);
  }

  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-partners
    .puck-grid-column
    > a
    > div:first-child {
    height: 118px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    .puck-card--resource,
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    .puck-card--partner {
    transition: none;
  }

  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    .puck-card--resource:hover,
  #puck-content:has(.puck-grid--consumer-guidance)
    :has(.puck-grid--consumer-oklahoma-resources)
    :has(.puck-grid--consumer-partners)
    .puck-card--partner:hover {
    transform: none;
  }
}

/*
 * Consumer Information scope correction
 * Keep all consumer-only rules anchored to the page root and all three
 * distinctive native grid markers.
 */
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-text:nth-child(2) {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
  text-align: center;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-text:nth-child(3) {
  max-width: 1216px;
  margin: 0 auto;
  padding: clamp(30px, 4vw, 44px) clamp(28px, 4vw, 52px);
  border: 1px solid var(--nabip-border);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  color: var(--nabip-muted);
  font-size: 15px;
  line-height: 1.8;
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > h2 {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(48px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources {
  width: 100%;
  max-width: none;
  align-items: stretch;
  gap: clamp(16px, 2.5vw, 28px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(48px, 6vw, 72px);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  background: var(--nabip-surface-blue);
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-grid-column {
  display: flex;
  min-width: 0;
  align-items: stretch;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column
  > a,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-grid-column
  > a {
  position: relative;
  display: flex;
  width: 100%;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource {
  display: flex;
  width: 100%;
  min-height: 270px;
  flex-direction: column;
  justify-content: flex-start;
  padding: 28px 26px 54px !important;
  border: 1px solid var(--nabip-border);
  border-top: 4px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  text-align: left !important;
  box-sizing: border-box;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource
  .puck-card-eyebrow {
  margin: 0 0 14px;
  color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource
  .puck-card-title,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.2;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource
  .puck-card-description,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-description {
  margin: 14px 0 0;
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.65;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource::after,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource::after {
  position: absolute;
  right: 26px;
  bottom: 22px;
  color: var(--nabip-teal-dark);
  content: "↗";
  font-size: 20px;
  line-height: 1;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-meta {
  margin: auto 0 0;
  padding: 16px 0 0;
  border-top: 1px solid var(--nabip-border);
  list-style: none;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource
  .puck-card-meta-value {
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-card--resource:hover,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-card--resource:hover {
  border-color: rgba(0, 155, 149, 0.52);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-guidance
  .puck-grid-column
  > a:focus-visible,
#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-oklahoma-resources
  .puck-grid-column
  > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 4px;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-text:nth-child(8) {
  max-width: 760px;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter) 14px;
  color: var(--nabip-muted);
  font-size: 16px;
  line-height: 1.7;
  text-align: center;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-button-container {
  display: flex;
  justify-content: center;
  padding: 0 var(--nabip-gutter) clamp(48px, 6vw, 72px);
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-button-container
  .puck-button--consumer-board {
  min-width: 240px;
  min-height: 48px !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > h2:nth-child(10) {
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 22px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(52px, 7vw, 84px);
  background: var(--nabip-surface-blue);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a
  > div:first-child {
  height: 112px !important;
  padding: 14px;
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a
  > div:first-child
  img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
}

#puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
  > .puck-grid--consumer-partners
  .puck-grid-column
  > a:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 4px;
}

@media (max-width: 980px) {
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-oklahoma-resources,
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-hero
    .puck-hero-title {
    max-width: 100%;
    font-size: 34px !important;
    letter-spacing: -0.04em;
    overflow-wrap: anywhere;
  }

  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-text:nth-child(3) {
    margin-inline: var(--nabip-gutter);
    padding-inline: 20px;
  }

  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-guidance,
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-oklahoma-resources,
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-partners {
    grid-template-columns: 1fr !important;
    padding-inline: var(--nabip-gutter);
  }

  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    > .puck-grid--consumer-partners
    .puck-grid-column
    > a
    > div:first-child {
    height: 118px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    .puck-card--resource,
  #puck-content:has(.puck-grid--consumer-guidance):has(.puck-grid--consumer-oklahoma-resources):has(.puck-grid--consumer-partners)
    .puck-card--partner {
    transition: none;
  }
}

/*
 * Consumer Information renderer-targeted rules
 * Scoped to Consumer's verified direct-child structure for compatibility with
 * the native shared grid variants used by the live Recur payload.
 */
@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-hero {
  min-height: clamp(360px, 38vw, 480px) !important;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-hero
  > .puck-hero-content {
  padding-block: clamp(68px, 9vw, 112px);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-text:nth-child(2) {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.75;
  text-align: center;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-text:nth-child(3) {
  max-width: 1216px;
  margin: 0 auto;
  padding: clamp(30px, 4vw, 44px) clamp(28px, 4vw, 52px);
  border: 1px solid var(--nabip-border);
  border-left: 5px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  color: var(--nabip-muted);
  font-size: 15px;
  line-height: 1.8;
  box-shadow: var(--nabip-shadow-sm);
  box-sizing: border-box;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > h2 {
  max-width: var(--nabip-content);
  margin: 0 auto;
  padding: clamp(48px, 6vw, 76px) var(--nabip-gutter) 20px;
  color: var(--nabip-navy);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-align: center;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards {
  width: 100%;
  max-width: none;
  align-items: stretch;
  gap: clamp(16px, 2.5vw, 28px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(48px, 6vw, 72px);
  box-sizing: border-box;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards:nth-child(5) {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards:nth-child(7) {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  background: var(--nabip-surface-blue);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-grid-column {
  display: flex;
  min-width: 0;
  align-items: stretch;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 270px;
  flex-direction: column;
  justify-content: flex-start;
  padding: 28px 26px 54px !important;
  border: 1px solid var(--nabip-border);
  border-top: 4px solid var(--nabip-teal);
  border-radius: var(--nabip-radius-lg);
  background: var(--nabip-white);
  box-shadow: var(--nabip-shadow-sm);
  color: inherit;
  text-align: left !important;
  text-decoration: none;
  box-sizing: border-box;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards:nth-child(5)
  .puck-grid-column:nth-child(2)
  .puck-card--resource {
  border-top-color: var(--nabip-blue);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource::after {
  position: absolute;
  right: 26px;
  bottom: 22px;
  color: var(--nabip-teal-dark);
  content: "↗";
  font-size: 20px;
  line-height: 1;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource:hover {
  border-color: rgba(0, 155, 149, 0.52);
  box-shadow: var(--nabip-shadow-md);
  transform: translateY(-3px);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 4px;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource
  .puck-card-eyebrow {
  margin: 0 0 14px;
  color: var(--nabip-teal-dark);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource
  .puck-card-title {
  margin: 0;
  color: var(--nabip-navy);
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.2;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards
  .puck-card--resource
  .puck-card-description {
  margin: 14px 0 0;
  color: var(--nabip-muted);
  font-size: 14px;
  line-height: 1.65;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards:nth-child(7)
  .puck-card--resource
  .puck-card-meta {
  margin: auto 0 0;
  padding: 16px 0 0;
  border-top: 1px solid var(--nabip-border);
  list-style: none;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--resource-cards:nth-child(7)
  .puck-card--resource
  .puck-card-meta-value {
  color: var(--nabip-teal-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-text:nth-child(8) {
  max-width: 760px;
  padding: clamp(28px, 4vw, 44px) var(--nabip-gutter) 14px;
  color: var(--nabip-muted);
  font-size: 16px;
  line-height: 1.7;
  text-align: center;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-button-container {
  display: flex;
  justify-content: center;
  padding: 0 var(--nabip-gutter) clamp(48px, 6vw, 72px);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-button-container
  .puck-button--consumer-board {
  min-width: 240px;
  min-height: 48px !important;
  box-sizing: border-box;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > h2:nth-child(10) {
  border-top: 1px solid var(--nabip-border);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--partners {
  width: 100%;
  max-width: none;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 22px) !important;
  padding: 16px max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
    clamp(52px, 7vw, 84px);
  background: var(--nabip-surface-blue);
  box-sizing: border-box;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--partners
  .puck-card--partner {
  overflow: hidden;
  border-color: var(--nabip-border);
  border-radius: var(--nabip-radius);
  background: var(--nabip-white);
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--partners
  .puck-grid-column
  > a
  > div:first-child {
  height: 112px !important;
  padding: 14px;
  background: var(--nabip-white);
  box-sizing: border-box;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--partners
  .puck-grid-column
  > a
  > div:first-child
  img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
}

#puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
  > .puck-grid--partners
  .puck-card--partner:focus-visible {
  outline: 3px solid rgba(0, 155, 149, 0.42);
  outline-offset: 4px;
}

@media (max-width: 980px) {
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-grid--resource-cards:nth-child(7),
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-grid--partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-hero {
    min-height: 360px !important;
  }

  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-hero
    .puck-hero-title {
    max-width: 100%;
    font-size: 34px !important;
    letter-spacing: -0.04em;
    overflow-wrap: anywhere;
  }

  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-text:nth-child(3) {
    margin-inline: var(--nabip-gutter);
    padding-inline: 20px;
  }

  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-grid--resource-cards:nth-child(5),
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-grid--resource-cards:nth-child(7),
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-grid--partners {
    grid-template-columns: 1fr !important;
    padding-inline: var(--nabip-gutter);
  }

  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    > .puck-grid--partners
    .puck-grid-column
    > a
    > div:first-child {
    height: 118px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    .puck-card--resource,
  #puck-content:has(.puck-hero[style*="714a2220-5590-4439-934e-295786465722"])
    .puck-card--partner {
    transition: none;
  }
}
}

/*
 * Consumer Information — verified structural scope
 * Consumer's live payload has resource grids at children 5 and 7, a board
 * action at child 9, and its partner directory at child 11. Foundation and
 * Scholarships do not share this direct-child sequence.
 */
@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > .puck-text:nth-child(2) {
    max-width: 900px;
    margin: 0 auto;
    padding: clamp(28px, 4vw, 44px) var(--nabip-gutter);
    font-size: clamp(15px, 1.3vw, 18px);
    line-height: 1.75;
    text-align: center;
  }

  :scope > .puck-text:nth-child(3) {
    max-width: 1216px;
    margin: 0 auto;
    padding: clamp(30px, 4vw, 44px) clamp(16px, 2vw, 28px);
    border: 1px solid var(--nabip-border);
    border-left: 5px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    color: var(--nabip-muted);
    font-size: 15px;
    line-height: 1.8;
    box-shadow: var(--nabip-shadow-sm);
    box-sizing: border-box;
  }

  :scope > h2 {
    max-width: var(--nabip-content);
    margin: 0 auto;
    padding: clamp(48px, 6vw, 76px) var(--nabip-gutter) 20px;
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
  }

  :scope > .puck-grid--resource-cards {
    width: 100%;
    max-width: none;
    align-items: stretch;
    gap: clamp(16px, 2.5vw, 28px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(48px, 6vw, 72px);
    box-sizing: border-box;
  }

  :scope > .puck-grid--resource-cards:nth-child(5) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  :scope > .puck-grid--resource-cards:nth-child(7) {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    background: var(--nabip-surface-blue);
  }

  :scope > .puck-grid--resource-cards .puck-grid-column {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
    align-items: stretch;
  }

  :scope > .puck-grid--resource-cards .puck-grid-column > .puck-card--resource {
    width: 100%;
  }

  :scope > .puck-grid--resource-cards .puck-card--resource {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 270px;
    flex-direction: column;
    justify-content: flex-start;
    padding: 28px 26px 54px !important;
    border: 1px solid var(--nabip-border);
    border-top: 4px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    color: inherit;
    text-align: left !important;
    text-decoration: none;
    box-sizing: border-box;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  }

  :scope > .puck-grid--resource-cards:nth-child(5)
    .puck-grid-column:nth-child(2)
    .puck-card--resource {
    border-top-color: var(--nabip-blue);
  }

  :scope > .puck-grid--resource-cards .puck-card--resource::after {
    position: absolute;
    right: 26px;
    bottom: 22px;
    color: var(--nabip-teal-dark);
    content: "↗";
    font-size: 20px;
    line-height: 1;
  }

  :scope > .puck-grid--resource-cards .puck-card--resource:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--resource-cards .puck-card--resource:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--resource-cards .puck-card-eyebrow {
    margin: 0 0 14px;
    color: var(--nabip-teal-dark);
  }

  :scope > .puck-grid--resource-cards .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: clamp(20px, 2vw, 28px);
    line-height: 1.2;
  }

  :scope > .puck-grid--resource-cards .puck-card-description {
    margin: 14px 0 0;
    color: var(--nabip-muted);
    font-size: 14px;
    line-height: 1.65;
  }

  :scope > .puck-grid--resource-cards:nth-child(7)
    .puck-card--resource
    .puck-card-meta {
    margin: auto 0 0;
    padding: 16px 0 0;
    border-top: 1px solid var(--nabip-border);
    list-style: none;
  }

  :scope > .puck-grid--resource-cards:nth-child(7)
    .puck-card-meta-value {
    color: var(--nabip-teal-dark);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  :scope > .puck-text:nth-child(8) {
    max-width: 760px;
    padding: clamp(28px, 4vw, 44px) var(--nabip-gutter) 14px;
    color: var(--nabip-muted);
    font-size: 16px;
    line-height: 1.7;
    text-align: center;
  }

  :scope > .puck-button-container {
    display: flex;
    justify-content: center;
    padding: 0 var(--nabip-gutter) clamp(48px, 6vw, 72px);
  }

  :scope > .puck-button-container .puck-button--consumer-board {
    min-width: 240px;
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > h2:nth-child(10) {
    border-top: 1px solid var(--nabip-border);
  }

  :scope > .puck-grid--partners {
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(14px, 2vw, 22px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(52px, 7vw, 84px);
    background: var(--nabip-surface-blue);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners .puck-card--partner {
    overflow: hidden;
    border-color: var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
  }

  :scope > .puck-grid--partners .puck-grid-column > a > div:first-child {
    height: 112px !important;
    padding: 14px;
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners
    .puck-grid-column
    > a
    > div:first-child
    img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--partners .puck-card--partner:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }
}

@media (max-width: 980px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
    :scope > .puck-grid--resource-cards:nth-child(7),
    :scope > .puck-grid--partners {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-text:nth-child(3) {
      margin-inline: var(--nabip-gutter);
      padding-inline: 20px;
    }

    :scope > .puck-grid--resource-cards:nth-child(5),
    :scope > .puck-grid--resource-cards:nth-child(7),
    :scope > .puck-grid--partners {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--partners .puck-grid-column > a > div:first-child {
      height: 118px !important;
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(> .puck-grid--resource-cards:nth-child(7)):has(> .puck-grid--partners:nth-child(11))) {
    .puck-card--resource,
    .puck-card--partner {
      transition: none;
    }
  }
}

/*
 * Legislative Resources interior page
 * The live native payload is uniquely identified by one resource grid at
 * child 4 and the legislative-advocacy Button at child 5.
 */
@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5)):has(.puck-button--legislative-advocacy)) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > .puck-text:nth-child(2) {
    max-width: 900px;
    margin: 0 auto;
    padding: clamp(28px, 4vw, 44px) var(--nabip-gutter);
    font-size: clamp(15px, 1.3vw, 18px);
    line-height: 1.75;
    text-align: center;
  }

  :scope > .puck-text:nth-child(2):empty {
    display: none;
  }

  :scope > h2:nth-child(3) {
    max-width: var(--nabip-content);
    margin: 0 auto;
    padding: clamp(48px, 6vw, 76px) var(--nabip-gutter) 20px;
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
  }

  :scope > .puck-grid--resource-cards:nth-child(4) {
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: stretch;
    gap: clamp(16px, 2.5vw, 28px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(48px, 6vw, 72px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--resource-cards:nth-child(4) .puck-grid-column {
    display: flex;
    min-width: 0;
    align-items: stretch;
  }

  :scope > .puck-grid--resource-cards:nth-child(4) .puck-card--resource {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 270px;
    flex-direction: column;
    justify-content: flex-start;
    padding: 28px 26px 54px !important;
    border: 1px solid var(--nabip-border);
    border-top: 4px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    color: inherit;
    text-align: left !important;
    text-decoration: none;
    box-sizing: border-box;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  }

  :scope > .puck-grid--resource-cards:nth-child(4)
    .puck-grid-column:nth-child(2)
    .puck-card--resource {
    border-top-color: var(--nabip-blue);
  }

  :scope > .puck-grid--resource-cards:nth-child(4) .puck-card--resource::after {
    position: absolute;
    right: 26px;
    bottom: 22px;
    color: var(--nabip-teal-dark);
    content: "↗";
    font-size: 20px;
    line-height: 1;
  }

  :scope > .puck-grid--resource-cards:nth-child(4) .puck-card--resource:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--resource-cards:nth-child(4)
    .puck-card--resource:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--resource-cards:nth-child(4)
    .puck-card--resource
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: clamp(20px, 2vw, 27px);
    line-height: 1.2;
  }

  :scope > .puck-grid--resource-cards:nth-child(4)
    .puck-card--resource
    .puck-card-description {
    margin: 14px 0 0;
    color: var(--nabip-muted);
    font-size: 14px;
    line-height: 1.65;
  }

  :scope > .puck-grid--resource-cards:nth-child(4)
    .puck-card--resource
    .puck-card-meta {
    margin: auto 0 0;
    padding: 16px 0 0;
    border-top: 1px solid var(--nabip-border);
    list-style: none;
  }

  :scope > .puck-grid--resource-cards:nth-child(4)
    .puck-card--resource
    .puck-card-meta-value {
    color: var(--nabip-teal-dark);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  :scope > .puck-button-container:nth-child(5) {
    display: flex;
    width: 100vw;
    min-height: 132px;
    margin-left: calc(50% - 50vw);
    align-items: center;
    justify-content: center;
    padding: 36px var(--nabip-gutter) 40px;
    background: var(--nabip-navy);
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(5)
    .puck-button--legislative-advocacy {
    min-width: 230px;
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(5)
    .puck-button--legislative-advocacy::after {
    margin-left: 8px;
    content: "↗";
    font-size: 16px;
    line-height: 1;
  }

  :scope > .puck-button-container:nth-child(5)
    .puck-button--legislative-advocacy:focus-visible {
    outline: 3px solid rgba(255, 255, 255, 0.74);
    outline-offset: 4px;
  }

  :scope > .puck-button-container:nth-child(5) {
    display: none;
  }
}

@media (max-width: 1100px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5)):has(.puck-button--legislative-advocacy)) {
    :scope > .puck-grid--resource-cards:nth-child(4) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5)):has(.puck-button--legislative-advocacy)) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-grid--resource-cards:nth-child(4) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--resource-cards:nth-child(4) .puck-card--resource {
      min-height: 240px;
    }

    :scope > .puck-button-container:nth-child(5) {
      min-height: 124px;
      padding-block: 32px 36px;
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-button-container:nth-child(5)):has(.puck-button--legislative-advocacy)) {
    .puck-card--resource {
      transition: none;
    }
  }
}

/*
 * NABIP Foundation interior page
 * Three resource grids at direct children 4, 6, and 8 distinguish this
 * page from the other resource-card interiors.
 */
@scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > .puck-text:nth-child(2) {
    max-width: 960px;
    margin: 0 auto;
    padding: clamp(32px, 5vw, 60px) clamp(18px, 3vw, 32px)
      clamp(40px, 5vw, 64px);
    border-left: 5px solid var(--nabip-teal);
    background: var(--nabip-surface-blue);
    color: var(--nabip-text);
    font-size: clamp(16px, 1.4vw, 19px);
    line-height: 1.8;
    box-sizing: border-box;
  }

  :scope > h2 {
    max-width: none;
    margin: 0;
    padding: clamp(48px, 6vw, 76px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      20px;
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > h2:nth-child(5),
  :scope > .puck-grid--resource-cards:nth-child(6) {
    background: var(--nabip-surface-blue);
  }

  :scope > .puck-grid--resource-cards {
    width: 100%;
    max-width: none;
    align-items: stretch;
    gap: clamp(16px, 2.5vw, 28px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(52px, 7vw, 84px);
    box-sizing: border-box;
  }

  :scope > .puck-grid--resource-cards:nth-child(4) {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  :scope > .puck-grid--resource-cards:nth-child(6) {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  :scope > .puck-grid--resource-cards:nth-child(8) {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    padding-bottom: clamp(64px, 8vw, 96px);
  }

  :scope > .puck-grid--resource-cards:nth-child(8) .puck-grid-column {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
    align-items: stretch;
  }

  :scope > .puck-grid--resource-cards:nth-child(8)
    .puck-grid-column
    > .puck-card--resource {
    width: 100%;
  }

  :scope > .puck-grid--resource-cards .puck-card--resource {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 250px;
    flex-direction: column;
    justify-content: flex-start;
    padding: 26px 22px 52px !important;
    border: 1px solid var(--nabip-border);
    border-top: 4px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    color: inherit;
    text-align: left !important;
    text-decoration: none;
    box-sizing: border-box;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  }

  :scope > .puck-grid--resource-cards:nth-child(6)
    .puck-card--resource {
    min-height: 230px;
    border-top-color: var(--nabip-blue);
  }

  :scope > .puck-grid--resource-cards:nth-child(8)
    .puck-card--resource {
    min-height: 220px;
    border-top-color: var(--nabip-navy-soft);
  }

  :scope > .puck-grid--resource-cards .puck-card--resource::after {
    position: absolute;
    right: 22px;
    bottom: 20px;
    color: var(--nabip-teal-dark);
    content: "↗";
    font-size: 19px;
    line-height: 1;
  }

  :scope > .puck-grid--resource-cards .puck-card--resource:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--resource-cards .puck-card--resource:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--resource-cards .puck-card-eyebrow {
    margin: 0 0 12px;
    color: var(--nabip-teal-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.3;
  }

  :scope > .puck-grid--resource-cards .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: clamp(18px, 1.8vw, 25px);
    line-height: 1.22;
  }

  :scope > .puck-grid--resource-cards:nth-child(8) .puck-card-title {
    font-size: clamp(16px, 1.35vw, 20px);
  }

  :scope > .puck-grid--resource-cards .puck-card-description {
    margin: 13px 0 0;
    color: var(--nabip-muted);
    font-size: 13px;
    line-height: 1.62;
  }

  :scope > .puck-grid--resource-cards .puck-card-meta {
    margin: auto 0 0;
    padding: 14px 0 0;
    border-top: 1px solid var(--nabip-border);
    list-style: none;
  }

  :scope > .puck-grid--resource-cards .puck-card-meta-value {
    color: var(--nabip-teal-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
  }
}

@media (max-width: 1100px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))) {
    :scope > .puck-grid--resource-cards:nth-child(4) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    :scope > .puck-grid--resource-cards:nth-child(8) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-text:nth-child(2) {
      margin-inline: var(--nabip-gutter);
      padding-inline: 20px;
    }

    :scope > .puck-grid--resource-cards:nth-child(4),
    :scope > .puck-grid--resource-cards:nth-child(6),
    :scope > .puck-grid--resource-cards:nth-child(8) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--resource-cards .puck-card--resource {
      min-height: 230px;
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))) {
    .puck-card--resource {
      transition: none;
    }
  }
}

/*
 * Charitable Organization interior page
 * The charitable variants and direct-child sequence keep this image-led
 * partnership page isolated from shared gallery and partner grids.
 */
@scope (#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partners:nth-child(10))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > h2 {
    max-width: none;
    margin: 0;
    padding: clamp(48px, 6vw, 76px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      20px;
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch;
    gap: clamp(20px, 4vw, 48px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(56px, 7vw, 88px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3)
    .puck-grid-column {
    display: flex;
    min-width: 0;
    align-items: center;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3)
    .puck-grid-column:first-child {
    justify-content: center;
    padding: 20px;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3)
    .puck-grid-column:first-child
    .puck-image {
    width: 100%;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3)
    .puck-grid-column:first-child
    img {
    display: block;
    width: 100% !important;
    height: auto !important;
    max-height: 380px;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3)
    .puck-grid-column:last-child {
    padding: clamp(26px, 4vw, 42px);
    border-left: 5px solid var(--nabip-teal);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--charitable-overview:nth-child(3)
    .puck-grid-column:last-child
    .puck-text {
    max-width: 100%;
    padding: 0;
    line-height: 1.8;
  }

  :scope > h2:nth-child(4),
  :scope > .puck-text:nth-child(5),
  :scope > .puck-button-container:nth-child(6),
  :scope > h2:nth-child(7),
  :scope > .puck-grid--charitable-gallery:nth-child(8) {
    width: 100vw !important;
    max-width: none !important;
    margin-inline: calc(50% - 50vw) !important;
    box-sizing: border-box;
  }

  :scope > h2:nth-child(4),
  :scope > .puck-text:nth-child(5),
  :scope > .puck-button-container:nth-child(6) {
    background: var(--nabip-navy);
  }

  :scope > h2:nth-child(4) {
    padding-bottom: 16px;
    color: var(--nabip-white);
  }

  :scope > .puck-text:nth-child(5) {
    max-width: none;
    padding: 8px max(var(--nabip-gutter), calc((100vw - 640px) / 2))
      22px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 16px;
    line-height: 1.8;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(6) {
    display: flex;
    width: 100%;
    min-height: 132px;
    align-items: flex-start;
    justify-content: center;
    padding: 8px var(--nabip-gutter) 44px;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(6)
    .puck-button--charitable-contribution {
    min-width: 260px;
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(6)
    .puck-button--charitable-contribution::after {
    margin-left: 8px;
    content: "↗";
    font-size: 16px;
    line-height: 1;
  }

  :scope > h2:nth-child(7) {
    border-top: 1px solid rgba(216, 225, 232, 0.9);
    background: var(--nabip-surface);
  }

  :scope > .puck-grid--charitable-gallery:nth-child(8) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: clamp(16px, 3vw, 32px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(56px, 7vw, 88px);
    background: var(--nabip-surface);
    box-sizing: border-box;
  }

  :scope > .puck-grid--charitable-gallery:nth-child(8)
    .puck-grid-column {
    display: flex;
    min-width: 0;
    align-items: stretch;
  }

  :scope > .puck-grid--charitable-gallery:nth-child(8)
    .puck-image {
    display: flex;
    width: 100%;
    min-height: 300px;
    flex-direction: column;
    justify-content: center;
    padding: 16px;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--charitable-gallery:nth-child(8)
    .puck-image-figure {
    display: flex;
    width: 100%;
    align-items: center;
    flex-direction: column;
    margin-inline: auto;
  }

  :scope > .puck-grid--charitable-gallery:nth-child(8)
    .puck-image
    img {
    display: block;
    width: 100% !important;
    height: 300px !important;
    margin-inline: auto;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--charitable-gallery:nth-child(8)
    .puck-image
    figcaption {
    margin-top: 10px;
    color: var(--nabip-muted);
    font-size: 12px;
    text-align: center;
  }

  :scope > h2:nth-child(9) {
    background: var(--nabip-white);
  }

  :scope > .puck-grid--partners:nth-child(10) {
    display: grid;
    width: 100%;
    max-width: var(--nabip-content);
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(14px, 2vw, 24px) !important;
    align-items: stretch;
    margin-inline: auto;
    padding: 28px var(--nabip-gutter) clamp(26px, 3.5vw, 42px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-grid-column {
    display: grid;
    min-width: 0;
    gap: clamp(14px, 2vw, 22px);
    align-content: stretch;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner {
    position: relative;
    display: flex;
    width: 100%;
    min-width: 0;
    min-height: 0;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(37, 71, 124, 0.16);
    border-radius: 10px;
    background:
      linear-gradient(135deg, rgba(234, 241, 247, 0.72), rgba(255, 255, 255, 0.98) 54%),
      var(--nabip-white);
    color: inherit;
    text-decoration: none;
    box-shadow: 0 5px 16px rgba(37, 71, 124, 0.07);
    transition:
      transform 180ms ease,
      border-color 180ms ease,
      box-shadow 180ms ease;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner:hover {
    border-color: rgba(0, 155, 149, 0.58);
    box-shadow: 0 13px 26px rgba(37, 71, 124, 0.14);
    color: inherit;
    transform: translateY(-3px);
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.38);
    outline-offset: 4px;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner
    > div:first-child {
    display: grid;
    width: 100%;
    height: 116px !important;
    min-height: 116px;
    flex: 0 0 116px;
    place-items: center;
    padding: 16px 18px 10px;
    background: rgba(255, 255, 255, 0.66);
    border-bottom: 1px solid rgba(37, 71, 124, 0.1);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner
    > div:first-child
    img {
    display: block;
    width: auto !important;
    max-width: 100%;
    height: auto !important;
    max-height: 82px;
    object-fit: contain !important;
    object-position: center center !important;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner
    > div:last-child {
    display: flex;
    min-width: 0;
    min-height: 56px;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: center;
    padding: 13px 38px 15px 16px;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner
    .puck-card-title {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    color: var(--nabip-navy);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: -0.015em;
    line-height: 1.25;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  :scope > .puck-grid--partners:nth-child(10)
    .puck-card--partner
    .puck-card-description {
    display: -webkit-box;
    overflow: hidden;
    margin: 4px 0 0;
    color: var(--nabip-muted);
    font-size: 11px;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
}

@media (max-width: 980px) {
  @scope (#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partners:nth-child(10))) {
    :scope > .puck-grid--partners:nth-child(10) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partners:nth-child(10))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-grid--charitable-overview:nth-child(3),
    :scope > .puck-grid--charitable-gallery:nth-child(8) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--charitable-overview:nth-child(3)
      .puck-grid-column:last-child {
      padding: 24px 20px;
    }

    :scope > .puck-grid--charitable-gallery:nth-child(8)
      .puck-image {
      min-height: 260px;
    }

    :scope > .puck-grid--charitable-gallery:nth-child(8)
      .puck-image
      img {
      height: 240px !important;
    }

    :scope > .puck-grid--partners:nth-child(10) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      padding-inline: var(--nabip-gutter);
    }
  }
}

@media (max-width: 560px) {
  @scope (#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partners:nth-child(10))) {
    :scope > .puck-grid--partners:nth-child(10) {
      grid-template-columns: 1fr !important;
      gap: 14px !important;
      padding-top: 20px;
    }

    :scope > .puck-grid--partners:nth-child(10)
      .puck-grid-column {
      gap: 14px;
    }

    :scope > .puck-grid--partners:nth-child(10)
      .puck-card--partner
      > div:first-child {
      height: 108px !important;
      min-height: 108px;
      flex-basis: 108px;
    }

    :scope > .puck-grid--partners:nth-child(10)
      .puck-card--partner
      > div:first-child
      img {
      max-height: 76px;
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--charitable-overview:nth-child(3)):has(> .puck-grid--charitable-gallery:nth-child(8)):has(> .puck-grid--partners:nth-child(10))) {
    .puck-card--partner {
      transition: none;
    }
  }
}

/*
 * Scholarships interior page
 * The two native scholarship columns, contact action, and partner grid
 * distinguish this page from the other shared partner-grid interiors.
 */
@scope (#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > .puck-text:nth-child(2) {
    max-width: 900px;
    margin: 0 auto;
    padding: clamp(28px, 4vw, 44px) var(--nabip-gutter)
      clamp(32px, 4vw, 52px);
    color: var(--nabip-text);
    font-size: clamp(16px, 1.35vw, 19px);
    line-height: 1.75;
    text-align: center;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch;
    gap: clamp(20px, 3vw, 36px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(56px, 7vw, 88px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-grid-column {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 18px;
    align-items: stretch;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-card--scholarship {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 300px;
    flex-direction: column;
    padding: 30px 28px 34px !important;
    border: 1px solid var(--nabip-border);
    border-top: 4px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    text-align: left !important;
    box-sizing: border-box;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-grid-column:nth-child(2)
    .puck-card--scholarship {
    border-top-color: var(--nabip-blue);
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-card--scholarship
    .puck-card-eyebrow {
    margin: 0 0 14px;
    color: var(--nabip-teal-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.3;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-card--scholarship
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: clamp(22px, 2.3vw, 31px);
    line-height: 1.18;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-card--scholarship
    .puck-card-description {
    margin: 16px 0 0;
    color: var(--nabip-muted);
    font-size: 14px;
    line-height: 1.72;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-grid-column
    > div:has(> a[href$=".pdf"]) {
    height: auto !important;
    min-height: 112px;
    flex: 0 0 auto;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    box-sizing: border-box;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    .puck-grid-column
    > div:has(> a[href$=".pdf"])
    > a {
    display: block !important;
    height: auto !important;
    min-height: 112px;
    padding: 18px 20px;
    color: var(--nabip-navy);
    text-align: left;
    text-decoration: none;
    box-sizing: border-box;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    a[href$=".pdf"]
    div[style*="white-space"] {
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere;
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    a[href$=".pdf"]:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
  }

  :scope > .puck-grid--scholarship-options:nth-child(3)
    a[href$=".pdf"]:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > h2:nth-child(4),
  :scope > .puck-text:nth-child(5),
  :scope > .puck-button-container:nth-child(6) {
    background: var(--nabip-navy);
  }

  :scope > h2:nth-child(4) {
    max-width: none;
    margin: 0;
    padding: clamp(52px, 6vw, 76px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      18px;
    color: var(--nabip-white);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-text:nth-child(5) {
    max-width: none;
    padding: 10px max(var(--nabip-gutter), calc((100vw - 760px) / 2))
      24px;
    color: rgba(255, 255, 255, 0.92);
    font-size: 16px;
    line-height: 1.85;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(6) {
    display: flex;
    min-height: 132px;
    align-items: flex-start;
    justify-content: center;
    padding: 8px var(--nabip-gutter) 44px;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(6)
    .puck-button--scholarship-contact {
    min-width: 190px;
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(6)
    .puck-button--scholarship-contact::after {
    margin-left: 8px;
    content: "↗";
    font-size: 16px;
    line-height: 1;
  }

  :scope > h2:nth-child(7) {
    max-width: none;
    margin: 0;
    padding: clamp(48px, 6vw, 72px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      20px;
    background: var(--nabip-surface-blue);
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: start;
    gap: clamp(14px, 2vw, 22px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(60px, 8vw, 96px);
    background: var(--nabip-surface-blue);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8) .puck-grid-column {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
    align-items: stretch;
  }

  :scope > .puck-grid--partners:nth-child(8) .puck-card--partner {
    display: flex;
    width: 100%;
    min-height: 230px;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    text-decoration: none;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8) .puck-card--partner:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    > div:first-child {
    display: flex;
    height: 132px !important;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    > div:first-child
    img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    > div:last-child {
    flex: 1 1 auto;
    padding: 18px 18px 20px;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: 16px;
    line-height: 1.3;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    .puck-card-description {
    margin: 8px 0 0;
    color: var(--nabip-muted);
    font-size: 12px;
  }
}

@media (max-width: 980px) {
  @scope (#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    :scope > .puck-grid--scholarship-options:nth-child(3)
      a[href$=".pdf"]
      > div:first-child {
      display: grid !important;
      grid-template-columns: 48px minmax(0, 1fr);
      align-items: start !important;
      gap: 12px 16px !important;
    }

    :scope > .puck-grid--scholarship-options:nth-child(3)
      a[href$=".pdf"]
      > div:first-child
      > div:first-child {
      grid-column: 1;
      grid-row: 1;
    }

    :scope > .puck-grid--scholarship-options:nth-child(3)
      a[href$=".pdf"]
      > div:first-child
      > div:nth-child(2) {
      grid-column: 2;
      grid-row: 1;
      min-width: 0;
    }

    :scope > .puck-grid--scholarship-options:nth-child(3)
      a[href$=".pdf"]
      > div:first-child
      > div:last-child {
      grid-column: 2;
      grid-row: 2;
      justify-content: flex-start !important;
    }

    :scope > .puck-grid--partners:nth-child(8) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-grid--scholarship-options:nth-child(3) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--scholarship-options:nth-child(3)
      .puck-card--scholarship {
      min-height: 260px;
    }

    :scope > .puck-grid--partners:nth-child(8) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    .puck-card--scholarship,
    .puck-card--partner,
    a[href$=".pdf"] {
      transition: none;
    }
  }
}

/*
 * Contests & Awards interior page
 * The direct child sequence keeps the two native award stories and their
 * shared partner directory isolated from other image-led interiors.
 */
@scope (#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
  :scope {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  :scope > * {
    grid-column: 1 / -1;
  }

  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > h2:nth-child(2),
  :scope > .puck-image:nth-child(3),
  :scope > .puck-text:nth-child(4) {
    width: 100%;
    max-width: none;
    box-sizing: border-box;
    background: var(--nabip-white);
  }

  :scope > h2:nth-child(2),
  :scope > h2:nth-child(5),
  :scope > h2:nth-child(7) {
    margin: 0;
    padding: clamp(48px, 6vw, 76px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      20px;
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > h2:nth-child(2) {
    color: var(--nabip-navy);
  }

  :scope > .puck-image:nth-child(3) {
    grid-column: 1;
    padding: 16px 12px clamp(56px, 7vw, 88px)
      max(var(--nabip-gutter), 24px);
  }

  :scope > .puck-text:nth-child(4) {
    grid-column: 2;
    padding: 28px max(var(--nabip-gutter), 24px)
      clamp(56px, 7vw, 88px) 24px;
  }

  :scope > .puck-image:nth-child(3) {
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      24px;
    text-align: center;
  }

  :scope > .puck-image:nth-child(3) .puck-image-figure {
    width: min(100%, 960px);
    margin: 0 auto;
    padding: 20px;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-surface);
    box-shadow: var(--nabip-shadow-sm);
    box-sizing: border-box;
  }

  :scope > .puck-image:nth-child(3) .puck-image-viewer-trigger {
    display: block;
    width: 100%;
    min-height: 320px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: zoom-in;
  }

  :scope > .puck-image:nth-child(3) img {
    display: block;
    width: min(100%, 420px) !important;
    height: 320px !important;
    margin: 0 auto;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-image:nth-child(3) figcaption {
    margin-top: 12px;
    color: var(--nabip-muted);
    font-size: 12px;
    text-align: center;
  }

  :scope > .puck-text:nth-child(4),
  :scope > .puck-text:nth-child(6) {
    padding: 16px max(var(--nabip-gutter), calc((100vw - 900px) / 2))
      clamp(56px, 7vw, 88px);
    color: var(--nabip-text);
    font-size: 16px;
    line-height: 1.85;
  }

  :scope > .puck-text:nth-child(4) p,
  :scope > .puck-text:nth-child(6) p,
  :scope > .puck-text:nth-child(4) ul,
  :scope > .puck-text:nth-child(6) ul {
    max-width: 900px;
    margin-inline: auto;
  }

  :scope > h2:nth-child(5),
  :scope > .puck-text:nth-child(6) {
    width: 100vw !important;
    max-width: none !important;
    margin-inline: calc(50% - 50vw);
    box-sizing: border-box;
  }

  :scope > h2:nth-child(5),
  :scope > .puck-text:nth-child(6),
  :scope > h2:nth-child(7),
  :scope > .puck-grid--partners:nth-child(8) {
    background: var(--nabip-surface-blue);
  }

  :scope > h2:nth-child(5) {
    color: var(--nabip-navy);
    border-top: 1px solid var(--nabip-border);
  }

  :scope > h2:nth-child(7) {
    border-top: 1px solid var(--nabip-border);
    background: var(--nabip-white);
    color: var(--nabip-navy);
  }

  :scope > .puck-grid--partners:nth-child(8) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: start;
    gap: clamp(14px, 2vw, 22px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(60px, 8vw, 96px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8) .puck-grid-column {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
    align-items: stretch;
  }

  :scope > .puck-grid--partners:nth-child(8) .puck-card--partner {
    display: flex;
    width: 100%;
    min-height: 230px;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    text-decoration: none;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    > div:first-child {
    display: flex;
    height: 132px !important;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    > div:first-child
    img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    > div:last-child {
    flex: 1 1 auto;
    padding: 18px 18px 20px;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: 16px;
    line-height: 1.3;
  }

  :scope > .puck-grid--partners:nth-child(8)
    .puck-card--partner
    .puck-card-description {
    margin: 8px 0 0;
    color: var(--nabip-muted);
    font-size: 12px;
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    :scope {
      grid-template-columns: 1fr;
    }

    :scope > .puck-image:nth-child(3),
    :scope > .puck-text:nth-child(4) {
      grid-column: 1;
    }

    :scope > .puck-image:nth-child(3) {
      padding: 16px var(--nabip-gutter) 24px;
    }

    :scope > .puck-text:nth-child(4) {
      padding: 16px var(--nabip-gutter) clamp(56px, 7vw, 88px);
    }
  }
}

@media (max-width: 980px) {
  @scope (#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    :scope > .puck-grid--partners:nth-child(8) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-image:nth-child(3) {
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-image:nth-child(3) .puck-image-viewer-trigger {
      min-height: 260px;
    }

    :scope > .puck-image:nth-child(3) img {
      height: 260px !important;
    }

    :scope > .puck-grid--partners:nth-child(8) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
    .puck-card--partner,
    .puck-image-viewer-trigger {
      transition: none;
    }
  }
}

/*
 * Leading Producers Round Table interior page
 * The full direct-child sequence isolates the program hierarchy, CTA,
 * qualifier list, and native partner directory from other interiors.
 */
main:has(#puck-content > .puck-grid--qualifier-discounts:nth-child(5)):has(
    #puck-content > .puck-grid--partners:nth-child(15)
  ) {
  padding-bottom: 0 !important;
}

main:has(#puck-content > .puck-grid--qualifier-discounts:nth-child(5)):has(
    #puck-content > .puck-grid--partners:nth-child(15)
  )
  + .site-footer {
  margin-top: 0 !important;
}

@scope (#puck-content:has(> .puck-grid--qualifier-discounts:nth-child(5)):has(> .puck-cta:nth-child(6)):has(> .puck-button-container:nth-child(11)):has(> .puck-grid--partners:nth-child(15))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > h2:nth-child(2),
  :scope > .puck-text:nth-child(3),
  :scope > h2:nth-child(4),
  :scope > .puck-grid--qualifier-discounts:nth-child(5),
  :scope > .puck-cta:nth-child(6),
  :scope > h2:nth-child(7),
  :scope > .puck-text:nth-child(8),
  :scope > h2:nth-child(9),
  :scope > .puck-text:nth-child(10),
  :scope > .puck-button-container:nth-child(11),
  :scope > h2:nth-child(12),
  :scope > .puck-text:nth-child(13),
  :scope > h2:nth-child(14),
  :scope > .puck-grid--partners:nth-child(15) {
    box-sizing: border-box;
  }

  :scope > h2:nth-child(2),
  :scope > h2:nth-child(4),
  :scope > h2:nth-child(7),
  :scope > h2:nth-child(9),
  :scope > h2:nth-child(12),
  :scope > h2:nth-child(14) {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: clamp(48px, 6vw, 76px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      20px;
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
  }

  :scope > h2:nth-child(2),
  :scope > .puck-text:nth-child(3),
  :scope > h2:nth-child(7),
  :scope > .puck-text:nth-child(8),
  :scope > h2:nth-child(12),
  :scope > .puck-text:nth-child(13) {
    background: var(--nabip-white);
  }

  :scope > .puck-text:nth-child(3),
  :scope > .puck-text:nth-child(8),
  :scope > .puck-text:nth-child(10),
  :scope > .puck-text:nth-child(13) {
    width: 100%;
    max-width: none;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - 900px) / 2))
      clamp(56px, 7vw, 88px);
    color: var(--nabip-text);
    font-size: 16px;
    line-height: 1.85;
  }

  :scope > .puck-text:nth-child(3) p,
  :scope > .puck-text:nth-child(8) p,
  :scope > .puck-text:nth-child(10) p,
  :scope > .puck-text:nth-child(13) p,
  :scope > .puck-text:nth-child(3) ul,
  :scope > .puck-text:nth-child(8) ul,
  :scope > .puck-text:nth-child(10) ul,
  :scope > .puck-text:nth-child(13) ul {
    max-width: 900px;
    margin-inline: auto;
  }

  :scope > h2:nth-child(4),
  :scope > .puck-grid--qualifier-discounts:nth-child(5),
  :scope > .puck-cta:nth-child(6),
  :scope > h2:nth-child(9),
  :scope > .puck-text:nth-child(10),
  :scope > .puck-button-container:nth-child(11),
  :scope > h2:nth-child(14),
  :scope > .puck-grid--partners:nth-child(15) {
    background: var(--nabip-surface-blue);
    box-sizing: border-box;
  }

  :scope > h2:nth-child(4),
  :scope > h2:nth-child(9),
  :scope > h2:nth-child(14) {
    border-top: 1px solid var(--nabip-border);
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch;
    gap: clamp(20px, 3vw, 36px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(56px, 7vw, 88px);
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5)
    .puck-grid-column {
    display: flex;
    min-width: 0;
    align-items: stretch;
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5)
    .puck-card--discount {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 240px;
    flex-direction: column;
    padding: 30px 28px 34px !important;
    border: 1px solid var(--nabip-border);
    border-top: 4px solid var(--nabip-teal);
    border-radius: var(--nabip-radius-lg);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    text-align: left !important;
    box-sizing: border-box;
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5)
    .puck-grid-column:nth-child(2)
    .puck-card--discount {
    border-top-color: var(--nabip-blue);
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5)
    .puck-card--discount
    .puck-card-eyebrow {
    margin: 0 0 14px;
    color: var(--nabip-teal-dark);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.35;
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5)
    .puck-card--discount
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: clamp(26px, 3vw, 36px);
    line-height: 1.1;
  }

  :scope > .puck-grid--qualifier-discounts:nth-child(5)
    .puck-card--discount
    .puck-card-description {
    margin: 16px 0 0;
    color: var(--nabip-muted);
    font-size: 14px;
    line-height: 1.72;
  }

  :scope > .puck-cta--application:nth-child(6) {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: clamp(42px, 6vw, 68px)
      max(var(--nabip-gutter), calc((100vw - 900px) / 2));
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 0;
    background: var(--nabip-navy);
    color: var(--nabip-white);
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-cta--application:nth-child(6) .puck-cta-title {
    color: var(--nabip-white);
  }

  :scope > .puck-cta--application:nth-child(6) .puck-cta-description {
    max-width: 640px;
    margin-inline: auto;
    color: rgba(255, 255, 255, 0.9);
  }

  :scope > .puck-cta--application:nth-child(6)
    a[href="https://nabip.org/membership-resources/lprt-leading-producers-round-table"] {
    min-height: 48px;
    margin-top: 22px;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(11) {
    display: flex;
    width: 100%;
    min-height: 112px;
    align-items: flex-start;
    justify-content: center;
    padding: 8px var(--nabip-gutter) 36px;
  }

  :scope > .puck-button-container:nth-child(11)
    .puck-button--national-link {
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(11)
    .puck-button--national-link::after {
    margin-left: 8px;
    content: "↗";
    font-size: 16px;
    line-height: 1;
  }

  :scope > .puck-grid--partners:nth-child(15) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: start;
    gap: clamp(14px, 2vw, 22px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(60px, 8vw, 96px);
  }

  :scope > .puck-grid--partners:nth-child(15) .puck-grid-column {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
    align-items: stretch;
  }

  :scope > .puck-grid--partners:nth-child(15) .puck-card--partner {
    display: flex;
    width: 100%;
    min-height: 230px;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    text-decoration: none;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner
    > div:first-child {
    display: flex;
    height: 132px !important;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner
    > div:first-child
    img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner
    > div:last-child {
    flex: 1 1 auto;
    padding: 18px 18px 20px;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: 16px;
    line-height: 1.3;
  }

  :scope > .puck-grid--partners:nth-child(15)
    .puck-card--partner
    .puck-card-description {
    margin: 8px 0 0;
    color: var(--nabip-muted);
    font-size: 12px;
  }
}

@media (max-width: 980px) {
  @scope (#puck-content:has(> .puck-grid--qualifier-discounts:nth-child(5)):has(> .puck-cta:nth-child(6)):has(> .puck-button-container:nth-child(11)):has(> .puck-grid--partners:nth-child(15))) {
    :scope > .puck-grid--partners:nth-child(15) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-grid--qualifier-discounts:nth-child(5)):has(> .puck-cta:nth-child(6)):has(> .puck-button-container:nth-child(11)):has(> .puck-grid--partners:nth-child(15))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-grid--qualifier-discounts:nth-child(5) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }

    :scope > .puck-grid--qualifier-discounts:nth-child(5)
      .puck-card--discount {
      min-height: 324px;
    }

    :scope > .puck-grid--partners:nth-child(15) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-grid--qualifier-discounts:nth-child(5)):has(> .puck-cta:nth-child(6)):has(> .puck-button-container:nth-child(11)):has(> .puck-grid--partners:nth-child(15))) {
    .puck-card--discount,
    .puck-card--partner,
    .puck-cta a,
    .puck-button {
      transition: none;
    }
  }
}

/*
 * Member of the Year interior page
 * Native invitation, deadline, file, contact, and partner children keep
 * this nomination page isolated from the other announcement interiors.
 */
@scope (#puck-content:has(> .puck-text:nth-child(2)):has(> .puck-text:nth-child(3)):has(> .puck-button-container:nth-child(7)):has(> .puck-grid--partners:nth-child(9))) {
  :scope > .puck-hero {
    min-height: clamp(360px, 38vw, 480px) !important;
  }

  :scope > .puck-hero > .puck-hero-content {
    padding-block: clamp(68px, 9vw, 112px);
  }

  :scope > .puck-text:nth-child(2),
  :scope > .puck-text:nth-child(3) {
    width: 100%;
    max-width: none;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - 900px) / 2));
    background: var(--nabip-white);
    box-sizing: border-box;
    color: var(--nabip-text);
    font-size: 16px;
    line-height: 1.8;
  }

  :scope > .puck-text:nth-child(2) {
    padding-top: clamp(38px, 5vw, 60px);
    padding-bottom: 18px;
    font-size: clamp(17px, 1.5vw, 20px);
    font-weight: 600;
  }

  :scope > .puck-text:nth-child(3) {
    padding-top: 18px;
    padding-bottom: clamp(38px, 5vw, 60px);
    border-top: 1px solid rgba(37, 71, 124, 0.16);
    text-align: center;
  }

  :scope > div:nth-child(4):has(a[href$=".pdf"]) {
    width: 100%;
    max-width: none;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - 820px) / 2))
      clamp(56px, 7vw, 88px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > div:nth-child(4):has(a[href$=".pdf"])
    > a {
    display: block !important;
    min-height: 112px;
    padding: 18px 20px;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    color: var(--nabip-navy);
    text-align: left;
    text-decoration: none;
    box-sizing: border-box;
  }

  :scope > div:nth-child(4):has(a[href$=".pdf"])
    > a:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
  }

  :scope > div:nth-child(4):has(a[href$=".pdf"])
    > a:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > div:nth-child(4):has(a[href$=".pdf"])
    a[href$=".pdf"]
    div[style*="white-space"] {
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere;
  }

  :scope > h2:nth-child(5),
  :scope > .puck-text:nth-child(6),
  :scope > .puck-button-container:nth-child(7) {
    width: 100%;
    max-width: none;
    background: var(--nabip-navy);
    box-sizing: border-box;
  }

  :scope > h2:nth-child(5) {
    margin: 0;
    padding: clamp(48px, 6vw, 72px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      18px;
    color: var(--nabip-white);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
  }

  :scope > .puck-text:nth-child(6) {
    padding: 10px
      max(var(--nabip-gutter), calc((100vw - 760px) / 2))
      24px;
    color: rgba(255, 255, 255, 0.92);
    font-size: 16px;
    line-height: 1.8;
    text-align: center;
  }

  :scope > .puck-button-container:nth-child(7) {
    display: flex;
    min-height: 132px;
    align-items: flex-start;
    justify-content: center;
    padding: 8px var(--nabip-gutter) 44px;
  }

  :scope > .puck-button-container:nth-child(7)
    .puck-button--moty-contact {
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(7)
    a[href="mailto:lisa@benefitsok.com"] {
    min-height: 48px !important;
    box-sizing: border-box;
  }

  :scope > .puck-button-container:nth-child(7)
    .puck-button--moty-contact::after {
    margin-left: 8px;
    content: "↗";
    font-size: 16px;
    line-height: 1;
  }

  :scope > h2:nth-child(8) {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: clamp(48px, 6vw, 72px)
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      20px;
    border-top: 1px solid var(--nabip-border);
    background: var(--nabip-white);
    color: var(--nabip-navy);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-align: center;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(9) {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: start;
    gap: clamp(14px, 2vw, 22px) !important;
    padding: 16px
      max(var(--nabip-gutter), calc((100vw - var(--nabip-content)) / 2))
      clamp(60px, 8vw, 96px);
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(9) .puck-grid-column {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
    align-items: stretch;
  }

  :scope > .puck-grid--partners:nth-child(9) .puck-card--partner {
    display: flex;
    width: 100%;
    min-height: 230px;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--nabip-border);
    border-radius: var(--nabip-radius);
    background: var(--nabip-white);
    box-shadow: var(--nabip-shadow-sm);
    text-decoration: none;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner:hover {
    border-color: rgba(0, 155, 149, 0.52);
    box-shadow: var(--nabip-shadow-md);
    transform: translateY(-3px);
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner:focus-visible {
    outline: 3px solid rgba(0, 155, 149, 0.42);
    outline-offset: 4px;
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner
    > div:first-child {
    display: flex;
    height: 132px !important;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: var(--nabip-white);
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner
    > div:first-child
    img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner
    > div:last-child {
    flex: 1 1 auto;
    padding: 18px 18px 20px;
    box-sizing: border-box;
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner
    .puck-card-title {
    margin: 0;
    color: var(--nabip-navy);
    font-size: 16px;
    line-height: 1.3;
  }

  :scope > .puck-grid--partners:nth-child(9)
    .puck-card--partner
    .puck-card-description {
    margin: 8px 0 0;
    color: var(--nabip-muted);
    font-size: 12px;
  }
}

@media (max-width: 980px) {
  @scope (#puck-content:has(> .puck-text:nth-child(2)):has(> .puck-text:nth-child(3)):has(> .puck-button-container:nth-child(7)):has(> .puck-grid--partners:nth-child(9))) {
    :scope > div:nth-child(4):has(a[href$=".pdf"])
      > a
      > div:first-child {
      display: grid !important;
      grid-template-columns: 48px minmax(0, 1fr);
      align-items: start !important;
      gap: 12px 16px !important;
    }

    :scope > div:nth-child(4):has(a[href$=".pdf"])
      > a
      > div:first-child
      > div:first-child {
      grid-column: 1;
      grid-row: 1;
    }

    :scope > div:nth-child(4):has(a[href$=".pdf"])
      > a
      > div:first-child
      > div:nth-child(2) {
      grid-column: 2;
      grid-row: 1;
      min-width: 0;
    }

    :scope > div:nth-child(4):has(a[href$=".pdf"])
      > a
      > div:first-child
      > div:last-child {
      grid-column: 2;
      grid-row: 2;
      justify-content: flex-start !important;
    }

    :scope > .puck-grid--partners:nth-child(9) {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
}

@media (max-width: 700px) {
  @scope (#puck-content:has(> .puck-text:nth-child(2)):has(> .puck-text:nth-child(3)):has(> .puck-button-container:nth-child(7)):has(> .puck-grid--partners:nth-child(9))) {
    :scope > .puck-hero {
      min-height: 360px !important;
    }

    :scope > .puck-hero .puck-hero-title {
      max-width: 100%;
      font-size: 34px !important;
      letter-spacing: -0.04em;
      overflow-wrap: anywhere;
    }

    :scope > .puck-grid--partners:nth-child(9) {
      grid-template-columns: 1fr !important;
      padding-inline: var(--nabip-gutter);
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  @scope (#puck-content:has(> .puck-text:nth-child(2)):has(> .puck-text:nth-child(3)):has(> .puck-button-container:nth-child(7)):has(> .puck-grid--partners:nth-child(9))) {
    .puck-card--partner,
    a[href$=".pdf"],
    .puck-button {
      transition: none;
    }
  }
}

/*
 * Award and recognition page frame alignment
 * Keep every non-hero section on these three pages at Home's selected
 * quick-links frame while retaining narrower reading measures inside.
 */
@scope (#puck-content:has(> .puck-image:nth-child(3)):has(> .puck-text:nth-child(4)):has(> .puck-text:nth-child(6)):has(> .puck-grid--partners:nth-child(8))) {
  :scope
    > h2:nth-child(2),
  :scope
    > .puck-image:nth-child(3),
  :scope
    > .puck-text:nth-child(4),
  :scope
    > h2:nth-child(5),
  :scope
    > .puck-text:nth-child(6),
  :scope
    > h2:nth-child(7),
  :scope
    > .puck-grid--partners:nth-child(8) {
    width: min(100%, var(--nabip-content)) !important;
    max-width: var(--nabip-content) !important;
    margin-inline: auto !important;
    box-sizing: border-box;
  }

  :scope
    > h2:nth-child(2),
  :scope
    > h2:nth-child(5),
  :scope
    > h2:nth-child(7) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > .puck-image:nth-child(3) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > .puck-image:nth-child(3) img {
    max-width: 100% !important;
  }

  :scope
    > .puck-text:nth-child(4),
  :scope
    > .puck-text:nth-child(6) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > .puck-text:nth-child(4) p,
  :scope
    > .puck-text:nth-child(4) ul,
  :scope
    > .puck-text:nth-child(6) p,
  :scope
    > .puck-text:nth-child(6) ul {
    width: min(100%, 900px);
    max-width: 900px;
    margin-inline: auto;
  }

  :scope
    > .puck-grid--partners:nth-child(8) {
    padding-inline: var(--nabip-gutter) !important;
  }
}

@scope (#puck-content:has(> .puck-grid--qualifier-discounts:nth-child(5)):has(> .puck-cta:nth-child(6)):has(> .puck-button-container:nth-child(11)):has(> .puck-grid--partners:nth-child(15))) {
  :scope
    > h2:nth-child(2),
  :scope
    > .puck-text:nth-child(3),
  :scope
    > h2:nth-child(4),
  :scope
    > .puck-grid--qualifier-discounts:nth-child(5),
  :scope
    > .puck-cta:nth-child(6),
  :scope
    > h2:nth-child(7),
  :scope
    > .puck-text:nth-child(8),
  :scope
    > h2:nth-child(9),
  :scope
    > .puck-text:nth-child(10),
  :scope
    > .puck-button-container:nth-child(11),
  :scope
    > h2:nth-child(12),
  :scope
    > .puck-text:nth-child(13),
  :scope
    > h2:nth-child(14),
  :scope
    > .puck-grid--partners:nth-child(15) {
    width: min(100%, var(--nabip-content)) !important;
    max-width: var(--nabip-content) !important;
    margin-inline: auto !important;
    box-sizing: border-box;
  }

  :scope
    > h2:nth-child(2),
  :scope
    > h2:nth-child(4),
  :scope
    > h2:nth-child(7),
  :scope
    > h2:nth-child(9),
  :scope
    > h2:nth-child(12),
  :scope
    > h2:nth-child(14),
  :scope
    > .puck-cta:nth-child(6),
  :scope
    > .puck-button-container:nth-child(11) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > .puck-text:nth-child(3),
  :scope
    > .puck-text:nth-child(8),
  :scope
    > .puck-text:nth-child(10),
  :scope
    > .puck-text:nth-child(13) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > .puck-grid--qualifier-discounts:nth-child(5),
  :scope
    > .puck-grid--partners:nth-child(15) {
    padding-inline: var(--nabip-gutter) !important;
  }

  :scope > h2:nth-child(4),
  :scope > .puck-grid--qualifier-discounts:nth-child(5),
  :scope > .puck-cta:nth-child(6),
  :scope > h2:nth-child(9),
  :scope > .puck-text:nth-child(10),
  :scope > .puck-button-container:nth-child(11),
  :scope > h2:nth-child(14),
  :scope > .puck-grid--partners:nth-child(15) {
    position: relative;
    background: transparent;
    isolation: isolate;
  }

  :scope > h2:nth-child(4)::before,
  :scope > .puck-grid--qualifier-discounts:nth-child(5)::before,
  :scope > h2:nth-child(9)::before,
  :scope > .puck-text:nth-child(10)::before,
  :scope > .puck-button-container:nth-child(11)::before,
  :scope > h2:nth-child(14)::before,
  :scope > .puck-grid--partners:nth-child(15)::before {
    position: absolute;
    z-index: -1;
    inset: 0 calc(50% - 50vw);
    background: var(--nabip-surface-blue);
    content: "";
  }

  :scope > .puck-cta:nth-child(6)::before {
    position: absolute;
    z-index: -1;
    inset: 0 calc(50% - 50vw);
    background: var(--nabip-navy);
    content: "";
  }

  :scope
    > .puck-text:nth-child(3) p,
  :scope
    > .puck-text:nth-child(8) p,
  :scope
    > .puck-text:nth-child(10) p,
  :scope
    > .puck-text:nth-child(13) p,
  :scope
    > .puck-text:nth-child(13) ul {
    width: min(100%, 900px);
    max-width: 900px;
    margin-inline: auto;
  }
}

@scope (#puck-content:has(> .puck-text:nth-child(2)):has(> .puck-text:nth-child(3)):has(> .puck-button-container:nth-child(7)):has(> .puck-grid--partners:nth-child(9))) {
  :scope
    > .puck-text:nth-child(2),
  :scope
    > .puck-text:nth-child(3),
  :scope
    > div:nth-child(4):has(a[href$=".pdf"]),
  :scope
    > h2:nth-child(5),
  :scope
    > .puck-text:nth-child(6),
  :scope
    > .puck-button-container:nth-child(7),
  :scope
    > h2:nth-child(8),
  :scope
    > .puck-grid--partners:nth-child(9) {
    width: min(100%, var(--nabip-content)) !important;
    max-width: var(--nabip-content) !important;
    margin-inline: auto !important;
    box-sizing: border-box;
  }

  :scope
    > .puck-text:nth-child(2),
  :scope
    > .puck-text:nth-child(3),
  :scope
    > .puck-text:nth-child(6) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > div:nth-child(4):has(a[href$=".pdf"]) {
    padding-inline: var(--nabip-gutter) !important;
  }

  :scope
    > h2:nth-child(5),
  :scope
    > h2:nth-child(8),
  :scope
    > .puck-button-container:nth-child(7) {
    padding-inline: var(--nabip-gutter);
  }

  :scope
    > .puck-text:nth-child(2) p,
  :scope
    > .puck-text:nth-child(3) p,
  :scope
    > .puck-text:nth-child(6) p {
    width: min(100%, 900px);
    max-width: 900px;
    margin-inline: auto;
  }

  :scope
    > div:nth-child(4):has(a[href$=".pdf"])
    img {
    max-width: 100%;
  }

  :scope
    > .puck-grid--partners:nth-child(9) {
    padding-inline: var(--nabip-gutter) !important;
  }
}

#puck-content:has(> .puck-text:nth-child(2)):has(
    > .puck-text:nth-child(3)
  ):has(> .puck-button-container:nth-child(7)):has(
    > .puck-grid--partners:nth-child(9)
  )
  > :is(
    h2:nth-child(5),
    .puck-text:nth-child(6),
    .puck-button-container:nth-child(7)
  ) {
  width: 100vw !important;
  max-width: none !important;
  margin-inline: calc(50% - 50vw) !important;
  box-sizing: border-box;
}

/*
 * Shared section frame alignment
 * Events, Calendar, and Public Announcements use the Home quick-links frame
 * as their outer-width reference. Text remains readable inside that frame.
 */
#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(3),
#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(6),
#puck-content:has(.recur-event-calendar)
  > .recur-event-calendar,
#puck-content:has(.puck-grid--announcements)
  > .puck-text:nth-child(2),
#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  box-sizing: border-box;
}

#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(3),
#puck-content:has(> .recur-event-list:nth-child(5))
  > .puck-text:nth-child(6) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(.puck-grid--announcements)
  > .puck-text:nth-child(2) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 756px) / 2)
  );
}

@media (max-width: 700px) {
  #puck-content:has(> .recur-event-list:nth-child(5))
    > .puck-text:nth-child(3) {
    padding-inline: 24px;
  }
}

#puck-content:has(> .recur-event-list:nth-child(5))
  .recur-event-list,
#puck-content:has(.puck-grid--announcements)
  > .puck-grid--announcements {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(.recur-event-calendar)
  .recur-event-calendar {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
}

/*
 * Shared section frame alignment — resource pages
 * Affiliations, Member Resources, and Newsletter use Home's quick-links
 * section as their outer-width reference. Existing card grids, file links,
 * and responsive column rules remain page-scoped above.
 */
#puck-content:has(.puck-grid--affiliation-features)
  > .puck-grid--affiliation-features,
#puck-content:has(.puck-grid--member-resources)
  > .puck-grid--member-resources,
#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-grid--resource-cards {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  padding-inline: var(--nabip-gutter);
  box-sizing: border-box;
}

#puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
  > .puck-text:nth-child(2) {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 756px) / 2)
  );
  box-sizing: border-box;
}

@media (max-width: 700px) {
  #puck-content:has(.puck-grid--resource-cards a[download]):has(> h2:nth-child(3))
    > .puck-text:nth-child(2) {
    padding-inline: var(--nabip-gutter);
  }
}

/*
 * Shared section frame alignment — membership pages
 * Keep each page's native cards, files, CTAs, buttons, partner links, and
 * intentional readable text measures while aligning their outer components
 * with Home's quick-links frame.
 */
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-text:nth-child(3),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--mission-vision,
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(6),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--ethics:nth-child(7),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(8),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-text:nth-child(9),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--documents,
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(11),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--partners {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(6),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(8),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(11) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--mission-vision,
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--documents,
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--partners {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-text:nth-child(9) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-text:nth-child(3) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > .puck-grid--ethics:nth-child(7) {
  width: min(
    calc(100% - (2 * var(--nabip-gutter))),
    calc(var(--nabip-content) - (2 * var(--nabip-gutter)))
  ) !important;
}

#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(6),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(8),
#puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
  > h2:nth-child(11),
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > h2,
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(4),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(7) {
  width: min(100%, var(--nabip-content)) !important;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-grid--join-actions,
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-button-container,
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-grid--partners,
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > h2,
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-grid--join-actions,
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-button-container,
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-grid--partners {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > h2 {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 1056px) / 2)
  );
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(4),
#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(6) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 812px) / 2)
  );
}

#puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
  > .puck-text:nth-child(8) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(2),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-grid--scholarship-options:nth-child(3),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(4),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(5),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-button-container:nth-child(6),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(7),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-grid--partners:nth-child(8) {
  width: min(100%, var(--nabip-content));
  max-width: none;
  margin-inline: auto;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-grid--scholarship-options:nth-child(3),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(4),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-button-container:nth-child(6),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > h2:nth-child(7),
#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-grid--partners:nth-child(8) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(2) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
  > .puck-text:nth-child(5) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 696px) / 2)
  );
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(5)):has(
    > .puck-grid--resource-cards:nth-child(7)
  ):has(> .puck-grid--partners:nth-child(11))
  > .puck-text:nth-child(3) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: var(--nabip-content) !important;
  padding-inline: clamp(16px, 2vw, 28px) !important;
}

@media (max-width: 700px) {
  #puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
    > .puck-text:nth-child(2),
  #puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
    > .puck-text:nth-child(5),
  #puck-content:has(> .puck-grid--mission-vision):has(> .puck-grid--documents)
    > .puck-text:nth-child(7),
  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(4),
  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(6),
  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(8),
  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(8) {
    padding-inline: var(--nabip-gutter);
  }

  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(4),
  #puck-content:has(> .puck-grid--join-actions):has(> .puck-grid--partners)
    > .puck-text:nth-child(6) {
    margin-inline: 0;
  }

  #puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
    > .puck-text:nth-child(2),
  #puck-content:has(> .puck-grid--scholarship-options:nth-child(3)):has(> .puck-button-container:nth-child(6)):has(> .puck-grid--partners:nth-child(8))
    > .puck-text:nth-child(5) {
    padding-inline: var(--nabip-gutter);
  }
}

/*
 * Final program-page frame pass
 * These exact child selectors intentionally sit last: several native page
 * rules use nth-child specificity, and Heading Pucks emit inline widths.
 */
#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > :is(
    .puck-text:nth-child(2),
    h2:nth-child(3),
    .puck-grid--people,
    h2:nth-child(5),
    .puck-grid--committee-people
  ),
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > :is(
    .puck-text:nth-child(3),
    h2,
    .puck-grid--monthly-education,
    .puck-image,
    .puck-text:nth-child(7),
    .puck-text:nth-child(8),
    .puck-button-container,
    .puck-grid--partners
  ),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > :is(
    .puck-text:nth-child(2),
    h2:nth-child(3),
    .puck-grid--resource-cards:nth-child(4),
    h2:nth-child(5),
    .puck-grid--resource-cards:nth-child(6),
    h2:nth-child(7),
    .puck-grid--resource-cards:nth-child(8)
  ) {
  width: min(100%, var(--nabip-content)) !important;
  max-width: none !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > :is(
    h2:nth-child(3),
    .puck-grid--people,
    h2:nth-child(5),
    .puck-grid--committee-people
  ),
#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > :is(
    h2,
    .puck-grid--monthly-education,
    .puck-image,
    .puck-button-container,
    .puck-grid--partners
  ),
#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > :is(
    h2:nth-child(3),
    .puck-grid--resource-cards:nth-child(4),
    h2:nth-child(5),
    .puck-grid--resource-cards:nth-child(6),
    h2:nth-child(7),
    .puck-grid--resource-cards:nth-child(8)
  ) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--people):has(> .puck-grid--committee-people)
  > .puck-text:nth-child(2) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 856px) / 2)
  );
}

#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text:nth-child(3) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 836px) / 2)
  );
}

#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text:nth-child(7) {
  padding-inline: var(--nabip-gutter);
}

#puck-content:has(> .puck-grid--monthly-education):has(> .puck-grid--partners)
  > .puck-text:nth-child(8) {
  padding-inline: max(
    var(--nabip-gutter),
    calc((100% - 696px) / 2)
  );
}

#puck-content:has(> .puck-grid--resource-cards:nth-child(4)):has(> .puck-grid--resource-cards:nth-child(6)):has(> .puck-grid--resource-cards:nth-child(8))
  > .puck-text:nth-child(2) {
  padding-inline: clamp(16px, 4vw, 52px);
}

            /* PROTECTED footer bottom bar + Recur attribution (Task: protect
               bottom-bar styling from custom CSS). Emitted AFTER the tenant's
               custom CSS and with !important on every declaration so no
               custom CSS can restyle, shrink, hide, or recolor the bottom bar
               or the "Built by"/"Powered by" badge. Emitted in FULL for all
               site modes, including designer-owned (advanced custom-CSS). */
            /* Render class contract v1.11.0 — PROTECTED footer bottom bar + Recur attribution (emitted after custom CSS; not overridable). */
.site-footer .footer-bottom-bar {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.5rem !important;
  margin-top: 1rem !important;
  border-top: 1px solid var(--color-border, #ddd) !important;
  padding: 0.5rem 0 0 !important;
  font-size: 0.6875rem !important;
  color: inherit !important;
  position: static !important;
  transform: none !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}
.site-footer .footer-bottom-bar .footer-bottom-bar-link {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  align-items: center !important;
  gap: 0.375rem !important;
  color: #4d4d4d !important;
  background: #ffffff !important;
  border-radius: 3px !important;
  padding: 2px 8px !important;
  text-decoration: none !important;
  font-size: 0.6875rem !important;
  position: static !important;
  transform: none !important;
  filter: none !important;
  width: auto !important;
  height: auto !important;
  max-width: none !important;
  max-height: none !important;
  overflow: visible !important;
  clip-path: none !important;
  transition: opacity 0.2s !important;
}
.site-footer .footer-bottom-bar .footer-bottom-bar-link svg {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: 25px !important;
  width: auto !important;
  vertical-align: middle !important;
}
.site-footer .footer-bottom-bar .footer-bottom-bar-link:hover {
  opacity: 0.8 !important;
}
.site-footer .footer-bottom-bar .footer-cookie-settings {
  display: inline !important;
  visibility: visible !important;
  color: inherit !important;
  font: inherit !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  position: static !important;
  cursor: pointer !important;
  opacity: 0.8 !important;
}
.site-footer .footer-bottom-bar .footer-cookie-settings:hover {
  opacity: 1 !important;
  text-decoration: none !important;
}
.site-footer .footer-bottom-bar .footer-cookie-settings:focus-visible {
  opacity: 1 !important;
  outline: 2px solid currentColor !important;
  outline-offset: 3px !important;
  text-decoration: none !important;
}
          