/* Built by wp-theme/tools/build-css.py from foundation/, tokens/ and css/. Do not edit. */

/* foundation/system.css */

/* foundation/layers.css */
@layer pbly-reset, pbly-tokens;


/* foundation/reset.css */
@layer pbly-reset {
  .pbly,
  .pbly *,
  .pbly *::before,
  .pbly *::after { box-sizing: border-box; }
  .pbly {
    margin: 0;
    background: var(--pbly-color-background);
    color: var(--pbly-color-text-primary);
    font-family: var(--pbly-text-body-md-font-family);
    font-size: var(--pbly-text-body-md-font-size);
    font-weight: var(--pbly-text-body-md-font-weight);
    line-height: var(--pbly-text-body-md-line-height);
    letter-spacing: var(--pbly-text-body-md-letter-spacing);
  }
  .pbly :where(h1, h2, h3, h4, h5, h6, p, figure) { margin: 0; }
  .pbly :where(img, svg, video) { display: block; max-width: 100%; }
  .pbly img { height: auto; }
  .pbly :where(button, input, select, textarea) { font: inherit; }
  .pbly :focus-visible { outline: 2px solid var(--pbly-color-action-primary); outline-offset: 3px; }
  @media (prefers-reduced-motion: reduce) {
    .pbly *, .pbly *::before, .pbly *::after {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      scroll-behavior: auto !important;
      transition-duration: 0.01ms !important;
    }
  }
}


/* foundation/button.css */
.pbly .pbly-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  min-height: var(--pbly-button-min-height);
  gap: var(--pbly-space-2);
  padding: var(--pbly-button-padding-block) var(--pbly-button-padding-inline);
  border: 1px solid transparent;
  border-radius: var(--pbly-button-radius);
  background: transparent;
  color: inherit;
  font: inherit;
  font-weight: var(--pbly-button-font-weight);
  line-height: var(--pbly-font-line-height-snug);
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.18s, border-color 0.18s, color 0.18s;
}
.pbly .pbly-btn--primary { background: var(--pbly-color-action-primary); color: var(--pbly-color-action-on-primary); }
.pbly .pbly-btn--primary:hover:not(:disabled) { background: var(--pbly-color-action-hover); }
.pbly .pbly-btn--secondary { border-color: var(--pbly-color-border-default); color: var(--pbly-color-text-primary); }
.pbly .pbly-btn--secondary:hover:not(:disabled) { border-color: var(--pbly-color-border-strong); }
.pbly .pbly-btn:disabled { opacity: 0.5; cursor: not-allowed; }


/* foundation/accessibility.css */
.pbly .pbly-skip-link {
  position: absolute;
  z-index: 1000;
  top: -10rem;
  left: var(--pbly-layout-wrapper-gutter);
  padding: var(--pbly-space-3) var(--pbly-space-4);
  background: var(--pbly-color-action-primary);
  color: var(--pbly-color-action-on-primary);
}

.pbly .pbly-skip-link:focus {
  top: var(--pbly-space-3);
}


/* tokens/tokens.css */
/* Generated from tokens.json. Do not edit by hand. */
@layer pbly-tokens {
  .pbly {
    --pbly-color-palette-canvas: #F8F8F8;
    --pbly-color-palette-ink: #1A1A1A;
    --pbly-color-palette-graphite: #595959;
    --pbly-color-palette-slate: #707070;
    --pbly-color-palette-line: #F0F0F0;
    --pbly-color-palette-accent: #1A1A1A;
    --pbly-color-palette-accent-hover: #333333;
    --pbly-color-palette-white: #FFFFFF;
    --pbly-color-palette-orange: #F57325;
    --pbly-color-palette-yellow: #FCCA09;
    --pbly-color-palette-purple: #6C2E91;
    --pbly-color-palette-blue: #0066CC;
    --pbly-color-background: var(--pbly-color-palette-canvas);
    --pbly-color-text-primary: var(--pbly-color-palette-ink);
    --pbly-color-text-muted: var(--pbly-color-palette-graphite);
    --pbly-color-text-soft: var(--pbly-color-palette-slate);
    --pbly-color-text-on-menu: var(--pbly-color-palette-white);
    --pbly-color-text-menu-muted: #A6A6A6;
    --pbly-color-action-primary: var(--pbly-color-palette-accent);
    --pbly-color-action-hover: var(--pbly-color-palette-accent-hover);
    --pbly-color-action-on-primary: var(--pbly-color-palette-white);
    --pbly-color-action-membership: #037D8C;
    --pbly-color-action-membership-hover: #036C79;
    --pbly-color-surface-raised: var(--pbly-color-palette-white);
    --pbly-color-surface-contact-cta: #006875;
    --pbly-color-surface-menu: #0F0F0F;
    --pbly-color-border-default: var(--pbly-color-palette-line);
    --pbly-color-border-strong: var(--pbly-color-palette-ink);
    --pbly-color-border-accent: var(--pbly-color-action-membership);
    --pbly-color-border-menu: rgb(255 255 255 / 0.16);
    --pbly-color-border-field: #8C8C8C;
    --pbly-color-icon-document: #E40D0D;
    --pbly-color-category-industria-poligrafica: var(--pbly-color-palette-orange);
    --pbly-color-category-expozitii: var(--pbly-color-palette-yellow);
    --pbly-color-category-scoli-si-universitati: var(--pbly-color-palette-purple);
    --pbly-color-category-despre-membri-att: var(--pbly-color-palette-blue);
    --pbly-color-link-external: var(--pbly-color-link-default);
    --pbly-color-link-default: #037D8C;
    --pbly-color-link-hover: #036C79;
    --pbly-space-0: 0rem;
    --pbly-space-0-5: 0.125rem;
    --pbly-space-1: 0.25rem;
    --pbly-space-1-5: 0.375rem;
    --pbly-space-2: 0.5rem;
    --pbly-space-2-5: 0.625rem;
    --pbly-space-3: 0.75rem;
    --pbly-space-3-5: 0.875rem;
    --pbly-space-4: 1rem;
    --pbly-space-4-5: 1.125rem;
    --pbly-space-5: 1.25rem;
    --pbly-space-6: 1.5rem;
    --pbly-space-7: 1.75rem;
    --pbly-space-8: 2rem;
    --pbly-space-9: 2.25rem;
    --pbly-space-10: 2.5rem;
    --pbly-space-12: 3rem;
    --pbly-space-16: 4rem;
    --pbly-space-20: 5rem;
    --pbly-radius-sm: 4px;
    --pbly-radius-full: 999px;
    --pbly-radius-none: 0px;
    --pbly-radius-md: 8px;
    --pbly-radius-lg: 16px;
    --pbly-font-family-body: Inter, Arial, sans-serif;
    --pbly-font-size-base: 1rem;
    --pbly-font-size-lg: 1.4rem;
    --pbly-font-size-card: 1.3rem;
    --pbly-font-size-xs: 0.8rem;
    --pbly-font-size-sm: 0.9rem;
    --pbly-font-size-md: 1.2rem;
    --pbly-font-size-xl: 1.6rem;
    --pbly-font-size-2xl: 1.8rem;
    --pbly-font-size-3xl: 2rem;
    --pbly-font-size-4xl: 2.25rem;
    --pbly-font-size-5xl: 3rem;
    --pbly-font-size-card-mobile: var(--pbly-font-size-lg);
    --pbly-font-size-dense: var(--pbly-font-size-sm);
    --pbly-font-size-stat: 2.5rem;
    --pbly-font-size-faq-mobile: var(--pbly-font-size-subheading);
    --pbly-font-size-subheading: 1.1rem;
    --pbly-font-size-display: var(--pbly-font-size-stat);
    --pbly-font-size-display-mobile: var(--pbly-font-size-2xl);
    --pbly-font-weight-regular: 400;
    --pbly-font-weight-medium: 500;
    --pbly-font-weight-semibold: 600;
    --pbly-font-weight-bold: 700;
    --pbly-font-weight-light: 300;
    --pbly-font-line-height-tight: 1.2;
    --pbly-font-line-height-snug: 1.25;
    --pbly-font-line-height-body: 1.625;
    --pbly-font-line-height-relaxed: 1.6;
    --pbly-font-line-height-compact: 1.4;
    --pbly-font-tracking-body: 0px;
    --pbly-font-tracking-label: 0px;
    --pbly-font-tracking-tight: -0.3px;
    --pbly-font-tracking-heading: -0.2px;
    --pbly-text-heading-lg-font-family: var(--pbly-font-family-body);
    --pbly-text-heading-lg-font-size: var(--pbly-font-size-3xl);
    --pbly-text-heading-lg-font-weight: var(--pbly-font-weight-bold);
    --pbly-text-heading-lg-letter-spacing: var(--pbly-font-tracking-tight);
    --pbly-text-heading-lg-line-height: var(--pbly-font-line-height-snug);
    --pbly-text-heading-md-font-family: var(--pbly-font-family-body);
    --pbly-text-heading-md-font-size: var(--pbly-font-size-xl);
    --pbly-text-heading-md-font-weight: var(--pbly-font-weight-bold);
    --pbly-text-heading-md-letter-spacing: var(--pbly-font-tracking-tight);
    --pbly-text-heading-md-line-height: var(--pbly-font-line-height-snug);
    --pbly-text-heading-feature-font-family: var(--pbly-font-family-body);
    --pbly-text-heading-feature-font-size: var(--pbly-font-size-2xl);
    --pbly-text-heading-feature-font-weight: var(--pbly-font-weight-bold);
    --pbly-text-heading-feature-letter-spacing: var(--pbly-font-tracking-tight);
    --pbly-text-heading-feature-line-height: var(--pbly-font-line-height-snug);
    --pbly-text-heading-card-font-family: var(--pbly-font-family-body);
    --pbly-text-heading-card-font-size: var(--pbly-font-size-lg);
    --pbly-text-heading-card-font-weight: var(--pbly-font-weight-bold);
    --pbly-text-heading-card-letter-spacing: var(--pbly-font-tracking-tight);
    --pbly-text-heading-card-line-height: var(--pbly-font-line-height-snug);
    --pbly-text-heading-mobile-page-font-family: var(--pbly-font-family-body);
    --pbly-text-heading-mobile-page-font-size: var(--pbly-font-size-xl);
    --pbly-text-heading-mobile-page-font-weight: var(--pbly-font-weight-bold);
    --pbly-text-heading-mobile-page-letter-spacing: var(--pbly-font-tracking-tight);
    --pbly-text-heading-mobile-page-line-height: var(--pbly-font-line-height-snug);
    --pbly-text-heading-mobile-section-font-family: var(--pbly-font-family-body);
    --pbly-text-heading-mobile-section-font-size: var(--pbly-font-size-lg);
    --pbly-text-heading-mobile-section-font-weight: var(--pbly-font-weight-bold);
    --pbly-text-heading-mobile-section-letter-spacing: var(--pbly-font-tracking-tight);
    --pbly-text-heading-mobile-section-line-height: var(--pbly-font-line-height-snug);
    --pbly-text-heading-mobile-feature-font-family: var(--pbly-font-family-body);
    --pbly-text-heading-mobile-feature-font-size: var(--pbly-font-size-lg);
    --pbly-text-heading-mobile-feature-font-weight: var(--pbly-font-weight-bold);
    --pbly-text-heading-mobile-feature-letter-spacing: var(--pbly-font-tracking-tight);
    --pbly-text-heading-mobile-feature-line-height: var(--pbly-font-line-height-snug);
    --pbly-text-heading-mobile-card-font-family: var(--pbly-font-family-body);
    --pbly-text-heading-mobile-card-font-size: var(--pbly-font-size-md);
    --pbly-text-heading-mobile-card-font-weight: var(--pbly-font-weight-bold);
    --pbly-text-heading-mobile-card-letter-spacing: var(--pbly-font-tracking-tight);
    --pbly-text-heading-mobile-card-line-height: var(--pbly-font-line-height-compact);
    --pbly-text-body-md-font-family: var(--pbly-font-family-body);
    --pbly-text-body-md-font-size: var(--pbly-font-size-base);
    --pbly-text-body-md-font-weight: var(--pbly-font-weight-regular);
    --pbly-text-body-md-letter-spacing: var(--pbly-font-tracking-body);
    --pbly-text-body-md-line-height: var(--pbly-font-line-height-body);
    --pbly-text-label-sm-font-family: var(--pbly-font-family-body);
    --pbly-text-label-sm-font-size: var(--pbly-font-size-xs);
    --pbly-text-label-sm-font-weight: var(--pbly-font-weight-semibold);
    --pbly-text-label-sm-letter-spacing: var(--pbly-font-tracking-label);
    --pbly-text-label-sm-line-height: var(--pbly-font-line-height-compact);
    --pbly-shadow-sm: 0px 2px 4px 0px rgb(0 0 0 / 0.05);
    --pbly-shadow-md: 0px 4px 12px 0px rgb(0 0 0 / 0.12);
    --pbly-shadow-lg: 0px 12px 32px 0px rgb(0 0 0 / 0.18);
    --pbly-shadow-up: 0px -4px 24px 0px rgb(0 0 0 / 0.18);
    --pbly-button-radius: var(--pbly-radius-none);
    --pbly-button-padding-block: var(--pbly-space-0);
    --pbly-button-padding-inline: var(--pbly-space-6);
    --pbly-button-min-height: 44px;
    --pbly-button-font-weight: var(--pbly-font-weight-semibold);
    --pbly-button-mobile-padding-block: var(--pbly-space-0);
    --pbly-button-mobile-padding-inline: var(--pbly-space-6);
    --pbly-button-height: var(--pbly-space-12);
    --pbly-layout-wrapper-max: 1440px;
    --pbly-layout-wrapper-narrow: 47.5rem;
    --pbly-layout-wrapper-gutter: var(--pbly-space-3);
    --pbly-layout-wrapper-band-gutter: var(--pbly-space-6);
    --pbly-layout-section-padding: var(--pbly-space-8);
    --pbly-layout-section-gap: var(--pbly-space-16);
    --pbly-layout-section-directory-title-offset: 96px;
    --pbly-layout-measure-normal: 42rem;
    --pbly-layout-measure-wide: 54rem;
    --pbly-layout-grid-gap: var(--pbly-space-6);
    --pbly-layout-grid-compact-gap: var(--pbly-space-4);
    --pbly-layout-card-padding: var(--pbly-space-6);
    --pbly-layout-card-compact-padding: var(--pbly-space-4);
    --pbly-layout-card-reading-padding: var(--pbly-space-8);
    --pbly-layout-card-mobile-padding: var(--pbly-space-4);
    --pbly-layout-card-content-padding-block: var(--pbly-space-16);
    --pbly-layout-card-mobile-content-padding-block: var(--pbly-space-8);
    --pbly-layout-media-editorial-height: 500px;
    --pbly-layout-media-editorial-mobile-height: 250px;
    --pbly-layout-media-recommendation-size: 100px;
    --pbly-layout-media-institution-height: 200px;
    --pbly-layout-media-event-motif-size: 140px;
    --pbly-layout-media-event-hero-height: 425px;
    --pbly-layout-media-directory-motif-size: 150px;
    --pbly-layout-media-directory-motif-mobile-height: 96px;
    --pbly-layout-media-member-motif-mobile-height: 64px;
    --pbly-layout-media-brand-height: 40px;
    --pbly-layout-media-mobile-brand-height: 36px;
    --pbly-layout-menu-action-max-width: 20rem;
    --pbly-layout-footer-motif-width: 180px;
    --pbly-motion-menu-enter-ms: 320;
    --pbly-motion-menu-exit-ms: 240;
  }
}

/* css/project.css */

/* css/base.css */
@font-face { font-family: Inter; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/Inter-3.woff2") format("woff2"); }
@font-face { font-family: Inter; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/Inter-4.woff2") format("woff2"); }
@font-face { font-family: Inter; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/Inter-5.woff2") format("woff2"); }
@font-face { font-family: Inter; font-style: normal; font-weight: 700; font-display: swap; src: url("../fonts/Inter-6.woff2") format("woff2"); }
.pbly { color: var(--pbly-color-text-primary); background: var(--pbly-color-background); font-family: var(--pbly-font-family-body); font-size: var(--pbly-font-size-base); font-weight: var(--pbly-font-weight-medium); line-height: var(--pbly-font-line-height-body); }
.pbly a { color: inherit; text-decoration: none; }
.pbly a:hover { text-decoration: underline; }
.pbly :where(button) { padding: 0; border: 0; background: none; color: inherit; font: inherit; cursor: pointer; }
.pbly :where(button,a,summary):focus-visible { outline: 2px solid var(--pbly-color-border-strong); outline-offset: 4px; }
.pbly :where(h1,h2,h3,h4,p,ul,ol) { margin: 0; }
.pbly :where(h1,h2,h3) { font-weight: var(--pbly-font-weight-bold); }
.pbly h1 { font-size: var(--pbly-text-heading-lg-font-size); line-height: var(--pbly-text-heading-lg-line-height); letter-spacing: var(--pbly-text-heading-lg-letter-spacing); }
.pbly h2 { font-size: var(--pbly-text-heading-card-font-size); line-height: var(--pbly-text-heading-card-line-height); letter-spacing: var(--pbly-font-tracking-heading); }
.pbly h3 { font-size: var(--pbly-font-size-md); line-height: var(--pbly-font-line-height-compact); letter-spacing: var(--pbly-font-tracking-heading); }
.pbly img { max-width: 100%; height: auto; display: block; }
.pbly svg { flex-shrink: 0; }
.pbly [hidden] { display: none; }
.pbly [data-js="shuffle"] > [hidden] { display: none; }
.pbly input[type="checkbox"] { appearance: none; display: inline-grid; place-items: center; width: var(--pbly-space-4); height: var(--pbly-space-4); margin: 0; border: 1px solid var(--pbly-color-border-field); border-radius: var(--pbly-radius-none); background: var(--pbly-color-surface-raised); cursor: pointer; }
.pbly input[type="checkbox"]:checked { border-color: var(--pbly-color-action-primary); background: var(--pbly-color-action-primary); }
.pbly input[type="checkbox"]:checked::before { content: ""; width: 62%; height: 62%; background: var(--pbly-color-action-on-primary); clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0, 43% 62%); }
.pbly input[type="checkbox"]:disabled { cursor: not-allowed; }
.pbly input[type="checkbox"]:disabled:checked { border-color: var(--pbly-color-text-soft); background: var(--pbly-color-text-soft); }
.pbly input[type="checkbox"]:focus-visible { outline: 2px solid var(--pbly-color-border-accent); outline-offset: var(--pbly-space-1); }
.pbly [id] { scroll-margin-top: var(--pbly-space-20); }
.pbly .pbly-btn { height: var(--pbly-button-height); min-height: var(--pbly-button-height); font-size: var(--pbly-font-size-sm); text-transform: uppercase; text-decoration: none; }
.pbly .pbly-btn:hover { text-decoration: none; }
.pbly .prose { overflow-wrap: anywhere; }
.pbly .prose :where(p,ul,ol,figure,blockquote,table) { margin-bottom: var(--pbly-space-4); }
.pbly .prose :where(h2,h3,h4) { margin-block: var(--pbly-space-8) var(--pbly-space-4); }
.pbly .prose :where(h2,h3,h4)[id] { scroll-margin-top: calc(var(--pbly-space-20) + var(--pbly-space-6)); }
.pbly .prose :where(ul,ol) { padding-left: var(--pbly-space-8); }
.pbly .prose a:not(.pbly-btn) { text-decoration: underline; }
.pbly .prose img { margin-block: var(--pbly-space-6); }
.pbly .prose iframe { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; border: 0; margin-block: var(--pbly-space-6); }
.pbly .prose table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.pbly .prose th,.pbly .prose td { padding: var(--pbly-space-2); border: 1px solid var(--pbly-color-border-default); }
.pbly .prose :last-child { margin-bottom: 0; }
.pbly .prose :where(p,ul,ol,blockquote) { max-width: var(--pbly-layout-measure-normal); }

@media (max-width: 640px) {
  .pbly h1 { font-size: var(--pbly-font-size-2xl); line-height: var(--pbly-font-line-height-snug); }
}

/* Grayscale font smoothing where supported by the browser and platform. */
.pbly { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.pbly :is(.prose a:not(.pbly-btn),.text-page__breadcrumbs a,.education-detail__resources a,.event-detail__map,.home-about__faq p a,.story__source a,.contact-card a) { color: var(--pbly-color-link-default); }
.pbly :is(.prose a:not(.pbly-btn),.text-page__breadcrumbs a,.education-detail__resources a,.event-detail__map,.home-about__faq p a,.story__source a,.contact-card a):hover { color: var(--pbly-color-link-hover); }
.pbly .prose a:not(.pbly-btn) { text-decoration: underline; text-underline-offset: var(--pbly-space-1); }

@media (max-width: 640px) {
  .pbly .pbly-btn { padding: var(--pbly-button-mobile-padding-block) var(--pbly-button-mobile-padding-inline); }
}


/* css/layout.css */
.pbly .section { padding-block: var(--pbly-layout-section-padding); }
.pbly main > .section:first-child { padding-top: var(--pbly-space-12); }
.pbly .wrapper { width: min(90%, var(--pbly-layout-wrapper-max)); margin-inline: auto; }
.pbly .section-header { margin-bottom: var(--pbly-space-6); }
.pbly .section-header__title { font-size: var(--pbly-text-heading-md-font-size); line-height: var(--pbly-text-heading-md-line-height); letter-spacing: var(--pbly-text-heading-md-letter-spacing); }
.pbly :is(.section-label,.school-card__label) { color: var(--pbly-color-text-soft); font-size: var(--pbly-text-label-sm-font-size); line-height: var(--pbly-text-label-sm-line-height); letter-spacing: var(--pbly-text-label-sm-letter-spacing); font-weight: var(--pbly-text-label-sm-font-weight); text-transform: uppercase; }
.pbly .section-label { margin: 0 0 var(--pbly-space-4); }
.pbly .featured-layout { display: grid; grid-template-columns: minmax(0, 70fr) minmax(0, 30fr); align-items: start; }
.pbly .featured-layout__side { display: grid; gap: var(--pbly-space-3); margin-left: var(--pbly-space-8); }
.pbly .content-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); align-items: start; }
.pbly .content-layout__side { margin-left: var(--pbly-space-12); }
.pbly .news-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--pbly-layout-grid-gap); align-items: stretch; }
.pbly .school-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--pbly-layout-grid-gap); }
.pbly .member-grid,.pbly .event-grid,.pbly .related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--pbly-layout-grid-gap); }
.pbly .compact-list { display: grid; gap: var(--pbly-space-3); }
.pbly .empty-state { color: var(--pbly-color-text-muted); padding: var(--pbly-space-6); text-align: center; }
.pbly .load-more { display: flex; width: fit-content; margin: var(--pbly-space-8) auto 0; }
.pbly h1.section-header__title { font-size: var(--pbly-text-heading-lg-font-size); line-height: var(--pbly-text-heading-lg-line-height); }

@media (max-width: 1200px) {
  .pbly .wrapper { width: calc(100% - 2 * var(--pbly-space-6)); }
  .pbly main > .section:first-child { padding-top: var(--pbly-space-6); }
  .pbly .featured-layout,.pbly .content-layout { grid-template-columns: minmax(0, 1fr); }
  .pbly .featured-layout__side { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-left: 0; margin-top: var(--pbly-space-6); }
  .pbly .content-layout__side { margin-left: 0; margin-top: var(--pbly-space-8); }
  .pbly .school-grid,.pbly .member-grid,.pbly .event-grid,.pbly .related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .pbly .section { padding-block: var(--pbly-space-4); }
  .pbly main > .section:first-child { padding-top: var(--pbly-space-4); }
  .pbly .wrapper { width: calc(100% - 2 * var(--pbly-layout-wrapper-gutter)); }
  .pbly .featured-layout__side,.pbly .news-grid,.pbly .school-grid,.pbly .member-grid,.pbly .event-grid,.pbly .related-grid { grid-template-columns: minmax(0, 1fr); }
  .pbly .section-header__title { font-size: var(--pbly-font-size-xl); line-height: var(--pbly-font-line-height-tight); }
  .pbly .news-grid,.pbly .school-grid,.pbly .member-grid,.pbly .event-grid,.pbly .related-grid { gap: var(--pbly-layout-grid-compact-gap); }
}

@media (min-width: 1201px) {
  .pbly .member-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}


/* css/components.css */

/* css/components/site-chrome.css */
.pbly .site-header { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid var(--pbly-color-border-default); background: var(--pbly-color-surface-raised); }
.pbly .site-header__inner { display: flex; align-items: center; justify-content: space-between; min-height: 80px; }
.pbly .site-header__brand { display: block; }
.pbly .site-header__brand img { width: auto; height: var(--pbly-layout-media-brand-height); }
.pbly .site-nav { display: flex; gap: var(--pbly-space-8); align-items: center; }
.pbly .site-nav a { position: relative; padding-block: var(--pbly-space-2); font-size: var(--pbly-font-size-sm); font-weight: var(--pbly-font-weight-bold); text-transform: uppercase; }
.pbly .site-nav a::after { content: ""; height: 2px; position: absolute; inset: auto 0 0; background: currentColor; opacity: 0; transition: opacity .2s; }
.pbly .site-nav a:hover { text-decoration: none; }
.pbly .site-nav a:hover::after,.pbly .site-nav a[aria-current="page"]::after { opacity: 1; }
.pbly .site-header__menu-button { display: none; align-items: center; justify-content: center; width: 40px; height: 44px; }
.pbly .site-footer { margin-top: var(--pbly-space-8); background: var(--pbly-color-surface-raised); font-size: var(--pbly-font-size-base); }
.pbly .site-footer__content { padding-top: var(--pbly-space-20); padding-bottom: var(--pbly-space-10); }
.pbly .site-footer__columns,.pbly .site-footer__affiliations { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 2fr) minmax(0, 3fr); }
.pbly .site-footer h2 { margin-bottom: var(--pbly-space-6); font-size: var(--pbly-font-size-md); line-height: var(--pbly-font-line-height-compact); }
.pbly .site-footer__columns p { margin-bottom: var(--pbly-space-6); }
.pbly .site-footer__columns nav { display: flex; flex-direction: column; align-items: start; gap: var(--pbly-space-2); }
.pbly .site-footer__affiliations { align-items: center; margin-top: var(--pbly-space-12); }
.pbly .site-footer__intergraf-mobile { display: none; }
.pbly .site-footer__social { grid-column: 2 / -1; display: flex; gap: var(--pbly-space-8); }
.pbly .site-footer__social a { display: inline-flex; align-items: center; gap: var(--pbly-space-2); text-decoration: underline; font-weight: var(--pbly-font-weight-bold); }
.pbly .site-footer__bottom { background: url("../images/footer_graph.png") bottom right / var(--pbly-layout-footer-motif-width) auto no-repeat; min-height: calc(var(--pbly-layout-footer-motif-width) * 289 / 506); padding-block: var(--pbly-space-12) var(--pbly-space-6); } /* min-height: footer_graph.png is 506 × 289, so the motif never gets cropped */
.pbly .site-footer__legal { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--pbly-space-6); padding-right: max(0px, calc(var(--pbly-layout-footer-motif-width) + var(--pbly-space-6) - (100vw - min(90vw, var(--pbly-layout-wrapper-max))) / 2)); color: var(--pbly-color-text-soft); font-size: var(--pbly-font-size-sm); }
.pbly .site-footer__legal nav { display: flex; gap: var(--pbly-space-6); flex-wrap: wrap; }
.pbly .site-footer__legal > p { flex-shrink: 0; max-width: 100%; }

@media (max-width: 1200px) {
  .pbly .site-nav { display: none; }
  .pbly .site-header__menu-button { display: inline-flex; }
  .pbly .site-footer__columns,.pbly .site-footer__affiliations { grid-template-columns: 50% 25% 25%; }
  .pbly .site-footer__legal { padding-right: var(--pbly-layout-footer-motif-width); }
}

@media (max-width: 640px) {
  .pbly .site-header__inner { width: calc(100% - 2 * var(--pbly-layout-wrapper-gutter)); }
  .pbly .site-header__brand img { height: var(--pbly-layout-media-mobile-brand-height); }
  .pbly .site-footer__content { width: calc(100% - 2 * var(--pbly-layout-wrapper-band-gutter)); padding-block: var(--pbly-space-12) var(--pbly-space-10); }
  .pbly .site-footer__columns { grid-template-columns: 40% 60%; row-gap: var(--pbly-space-16); }
  .pbly .site-footer__about { grid-column: 1 / -1; }
  .pbly .site-footer__intergraf-mobile { display: block; margin-top: var(--pbly-space-12); }
  .pbly .site-footer__intergraf-desktop { display: none; }
  .pbly .site-footer__affiliations { grid-template-columns: minmax(0, 1fr); gap: var(--pbly-space-8); }
  .pbly .site-footer__social { grid-column: 1 / -1; }
  .pbly .site-footer__legal { width: calc(100% - 2 * var(--pbly-layout-wrapper-band-gutter)); flex-direction: column; align-items: start; padding-right: 0; padding-bottom: 0; }
  .pbly .site-footer__legal nav { flex-direction: column; gap: var(--pbly-space-2); }
}

.pbly .site-nav .site-nav__membership { padding: var(--pbly-button-padding-block) var(--pbly-space-6); }
.pbly .site-nav .site-nav__membership::after { display: none; }
.pbly .mobile-menu .site-nav__membership { font-size: var(--pbly-font-size-sm); }

.pbly .site-nav__membership { padding: var(--pbly-button-padding-block) var(--pbly-space-6); border: 0; background: var(--pbly-color-action-membership); color: var(--pbly-color-action-on-primary); }
.pbly .site-nav__membership:hover { background: var(--pbly-color-action-membership-hover); }


/* Full-screen navigation */
.pbly .mobile-menu { position: fixed; inset: 0; width: 100%; max-width: none; height: 100dvh; max-height: none; margin: 0; padding: 0; border: 0; overflow-y: auto; overscroll-behavior: contain; background: var(--pbly-color-surface-menu); color: var(--pbly-color-text-on-menu); }
.pbly .mobile-menu[open] { display: block; }
.pbly .mobile-menu::backdrop { background: var(--pbly-color-surface-menu); }
.pbly .mobile-menu__inner { width: min(90%, var(--pbly-layout-wrapper-max)); min-height: 100%; margin-inline: auto; padding-block: var(--pbly-space-8) var(--pbly-space-12); display: flex; flex-direction: column; }
.pbly .mobile-menu__top { display: flex; align-items: center; justify-content: space-between; gap: var(--pbly-space-6); }
.pbly .mobile-menu__brand { display: block; }
.pbly .mobile-menu__brand img { width: auto; height: var(--pbly-space-10); filter: brightness(0) invert(1); }
.pbly .mobile-menu__close { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: var(--pbly-button-height); height: var(--pbly-button-height); border: 1px solid var(--pbly-color-text-muted); border-radius: var(--pbly-radius-sm); background: var(--pbly-color-action-hover); color: var(--pbly-color-text-on-menu); }
.pbly .mobile-menu__close svg { width: var(--pbly-space-6); height: var(--pbly-space-6); }
.pbly .mobile-menu__primary { padding-block: var(--pbly-space-16); }
.pbly .mobile-menu__primary ul { display: flex; flex-direction: column; align-items: flex-start; gap: var(--pbly-space-2); margin: 0; padding: 0; list-style: none; }
.pbly .mobile-menu__primary li { max-width: 100%; }
.pbly .mobile-menu__primary li a { display: block; padding-block: var(--pbly-space-2); font-size: var(--pbly-text-heading-lg-font-size); font-weight: var(--pbly-font-weight-medium); line-height: var(--pbly-text-heading-lg-line-height); letter-spacing: var(--pbly-font-tracking-heading); color: var(--pbly-color-text-menu-muted); text-transform: none; text-decoration: none; }
.pbly .mobile-menu__primary li a:is([aria-current],:hover,:focus-visible) { color: var(--pbly-color-text-on-menu); }
.pbly .mobile-menu .mobile-menu__membership { margin-top: var(--pbly-space-8); font-size: var(--pbly-font-size-sm); }
.pbly .mobile-menu__secondary { margin-top: auto; }
.pbly .mobile-menu__group { border-top: 1px solid var(--pbly-color-text-muted); }
.pbly .mobile-menu__group summary { display: flex; align-items: center; justify-content: space-between; gap: var(--pbly-space-6); min-height: var(--pbly-space-16); padding-block: var(--pbly-space-4); color: var(--pbly-color-text-menu-muted); cursor: pointer; list-style: none; }
.pbly .mobile-menu__group summary::-webkit-details-marker { display: none; }
.pbly .mobile-menu__group summary svg { width: var(--pbly-space-4); height: var(--pbly-space-4); }
.pbly .mobile-menu__group[open] summary svg { transform: rotate(180deg); }
.pbly .mobile-menu__group nav { display: flex; flex-direction: column; align-items: flex-start; padding-bottom: var(--pbly-space-6); }
.pbly .mobile-menu__consent[hidden] { display: none; }
.pbly .mobile-menu__group nav :is(a,button) { padding-block: var(--pbly-space-3); color: var(--pbly-color-text-menu-muted); font-size: var(--pbly-font-size-sm); line-height: var(--pbly-font-line-height-compact); }
.pbly .mobile-menu__footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--pbly-space-8); padding-top: var(--pbly-space-8); border-top: 1px solid var(--pbly-color-text-muted); color: var(--pbly-color-text-menu-muted); font-size: var(--pbly-font-size-sm); }
.pbly .mobile-menu__socials { display: flex; flex-wrap: wrap; gap: var(--pbly-space-6); }
.pbly .mobile-menu__socials a { display: inline-flex; align-items: center; gap: var(--pbly-space-2); min-height: var(--pbly-button-height); }
.pbly .mobile-menu__socials svg { width: var(--pbly-space-5); height: var(--pbly-space-5); }
.pbly .mobile-menu__email { padding-block: var(--pbly-space-3); }
.pbly .mobile-menu :where(a,button,summary):focus-visible { outline-color: var(--pbly-color-text-on-menu); }
.pbly .mobile-menu__group :is(summary,a,button):is(:hover,:focus-visible),.pbly .mobile-menu__footer a:is(:hover,:focus-visible) { color: var(--pbly-color-text-on-menu); }
@media (max-width: 640px) {
  .pbly .mobile-menu__inner { width: calc(100% - 2 * var(--pbly-layout-wrapper-band-gutter)); padding-top: var(--pbly-space-6); }
  .pbly .mobile-menu__brand img { height: var(--pbly-space-8); }
  .pbly .mobile-menu__primary li a { font-size: var(--pbly-font-size-2xl); }
  .pbly .mobile-menu__footer { flex-direction: column; align-items: flex-start; gap: var(--pbly-space-4); }
}

/* Shared full-screen menu motion and controls. */
.pbly .mobile-menu--fullscreen { background: var(--pbly-color-surface-menu); opacity: 0; transform: translateY(calc(-1 * var(--pbly-space-3))); transition: opacity calc(var(--pbly-motion-menu-enter-ms) * 1ms) ease, transform calc(var(--pbly-motion-menu-enter-ms) * 1ms) ease; }
.pbly .mobile-menu--fullscreen::backdrop { background: var(--pbly-color-surface-menu); opacity: 0; transition: opacity calc(var(--pbly-motion-menu-enter-ms) * 1ms) ease; }
.pbly .mobile-menu--fullscreen .mobile-menu__brand img { height: var(--pbly-layout-media-brand-height); }
.pbly .mobile-menu--fullscreen .mobile-menu__close { width: var(--pbly-space-10); height: var(--pbly-button-min-height); border: 0; border-radius: 0; background: transparent; }
.pbly .mobile-menu--fullscreen .mobile-menu__close svg { width: var(--pbly-space-6); height: var(--pbly-space-6); }
.pbly .mobile-menu--fullscreen .mobile-menu__primary ul { gap: 0; }
.pbly .mobile-menu--fullscreen[data-state="open"] { opacity: 1; transform: translateY(0); }
.pbly .mobile-menu--fullscreen[data-state="open"]::backdrop { opacity: 1; }
.pbly .mobile-menu--fullscreen[data-state="closing"],.pbly .mobile-menu--fullscreen[data-state="closing"]::backdrop { transition-duration: calc(var(--pbly-motion-menu-exit-ms) * 1ms); }
.pbly .mobile-menu--fullscreen[data-state="closing"] { pointer-events: none; }
@media (max-width: 640px) {
  .pbly .mobile-menu--fullscreen .mobile-menu__brand img { height: var(--pbly-layout-media-mobile-brand-height); }
}
@media (prefers-reduced-motion: reduce) {
  .pbly .mobile-menu--fullscreen,.pbly .mobile-menu--fullscreen::backdrop { transition: none; }
  .pbly .mobile-menu--fullscreen { transform: none; }
}

.pbly .mobile-menu--fullscreen .mobile-menu__inner { padding-bottom: 0; }
.pbly .mobile-menu--fullscreen .mobile-menu__close { width: var(--pbly-button-height); height: var(--pbly-button-height); }
.pbly .mobile-menu--fullscreen :is(.mobile-menu__group,.mobile-menu__footer) { border-color: var(--pbly-color-border-menu); }
.pbly .mobile-menu__action-bar { position: sticky; bottom: 0; z-index: 1; flex-shrink: 0; margin-top: var(--pbly-space-6); padding-block: var(--pbly-space-6) calc(var(--pbly-space-6) + env(safe-area-inset-bottom)); background: var(--pbly-color-surface-menu); }
.pbly .mobile-menu--fullscreen .mobile-menu__action-bar .mobile-menu__membership { display: flex; width: 100%; margin-top: 0; }
@media (min-width: 641px) {
  .pbly .mobile-menu--fullscreen .mobile-menu__action-bar .mobile-menu__membership { max-width: var(--pbly-layout-menu-action-max-width); }
}


/* css/components/cards.css */
.pbly .category { display: inline-flex; align-items: center; gap: var(--pbly-space-2); min-height: 24px; color: var(--pbly-color-text-muted); font-size: var(--pbly-text-label-sm-font-size); font-weight: var(--pbly-text-label-sm-font-weight); line-height: var(--pbly-text-label-sm-line-height); text-decoration: underline; } /* min-height: 24px touch target (WCAG 2.5.8) */
.pbly .category > span { width: 12px; height: 10px; background: var(--pbly-color-category-industria-poligrafica); clip-path: polygon(0 0, 100% 0, 0 100%); }
.pbly .category--expozitii > span { background: var(--pbly-color-category-expozitii); }
.pbly .category--scoli-si-universitati > span { background: var(--pbly-color-category-scoli-si-universitati); }
.pbly .category--despre-membri-att > span { background: var(--pbly-color-category-despre-membri-att); }
.pbly .detail-link { display: flex; align-items: center; gap: var(--pbly-space-2); width: fit-content; font-size: var(--pbly-font-size-sm); font-weight: var(--pbly-font-weight-bold); text-transform: uppercase; }
.pbly .feature-card,.pbly .news-card,.pbly .compact-card,.pbly .school-card,.pbly .member-card,.pbly .event-card { background: var(--pbly-color-surface-raised); box-shadow: var(--pbly-shadow-sm); min-width: 0; }
.pbly .feature-card { display: grid; grid-template-columns: minmax(0, 40fr) minmax(0, 60fr); }
.pbly .feature-card__body { display: flex; flex-direction: column; justify-content: flex-end; padding: var(--pbly-layout-card-reading-padding); }
.pbly .feature-card .category { display: flex; min-height: 22px; width: fit-content; }
.pbly .feature-card__title { font-size: var(--pbly-text-heading-feature-font-size); line-height: var(--pbly-text-heading-feature-line-height); margin-block: var(--pbly-space-4); }
.pbly .feature-card__excerpt,.pbly .news-card__excerpt { color: var(--pbly-color-text-muted); font-size: var(--pbly-text-body-md-font-size); line-height: var(--pbly-text-body-md-line-height); }
.pbly .feature-card .detail-link { margin-top: var(--pbly-space-6); }
.pbly .feature-card__media img { width: 100%; height: var(--pbly-layout-media-editorial-height); object-fit: cover; object-position: center; }
.pbly .compact-card { display: grid; grid-template-columns: minmax(0, 1fr) var(--pbly-layout-media-recommendation-size); padding: var(--pbly-layout-card-compact-padding); }
.pbly .compact-card__body { padding-right: var(--pbly-space-6); }
.pbly .compact-card .category { display: flex; min-height: 22px; width: fit-content; }
.pbly .compact-card__title { margin-top: var(--pbly-space-3); font-size: var(--pbly-font-size-base); line-height: var(--pbly-font-line-height-compact); font-weight: var(--pbly-font-weight-bold); letter-spacing: var(--pbly-font-tracking-body); }
.pbly .compact-card__media img { width: var(--pbly-layout-media-recommendation-size); height: var(--pbly-layout-media-recommendation-size); object-fit: cover; }
.pbly .news-card__media img { width: 100%; height: 260px; object-fit: cover; }
.pbly .news-card__body { display: flex; flex-direction: column; align-items: start; flex: 1; padding: var(--pbly-layout-card-padding); }
.pbly .news-card__title { font-size: var(--pbly-font-size-card); line-height: var(--pbly-text-heading-card-line-height); margin-block: var(--pbly-space-4) var(--pbly-space-3); }
.pbly .news-card .detail-link { margin-top: auto; margin-left: auto; align-self: flex-end; padding-top: var(--pbly-space-6); }
.pbly .school-card { display: flex; flex-direction: column; }
.pbly .school-card__media img { width: 100%; aspect-ratio: 12 / 5; object-fit: cover; }
.pbly .school-card__body { display: flex; flex-direction: column; padding: var(--pbly-layout-card-padding); flex: 1; }
.pbly .school-card__title { font-size: var(--pbly-font-size-card-mobile); line-height: var(--pbly-text-heading-card-line-height); margin-block: 0 var(--pbly-space-4); }
.pbly .school-card__label { display: grid; grid-template-columns: var(--pbly-space-4) minmax(0, 1fr); gap: var(--pbly-space-2); align-items: center; margin-top: auto; padding-top: 0; }
.pbly .school-card__label svg { width: var(--pbly-space-4); height: var(--pbly-space-4); color: inherit; }
.pbly .school-card__speciality { padding: var(--pbly-space-2) 0 var(--pbly-space-6) var(--pbly-space-6); font-size: var(--pbly-font-size-base); font-weight: var(--pbly-font-weight-semibold); color: var(--pbly-color-text-muted); line-height: var(--pbly-font-line-height-relaxed); }
.pbly .school-card__address { display: grid; grid-template-columns: var(--pbly-space-4) minmax(0, 1fr); gap: var(--pbly-space-2); align-items: start; padding-top: var(--pbly-space-6); border-top: 1px solid var(--pbly-color-border-default); font-size: var(--pbly-font-size-sm); font-weight: var(--pbly-font-weight-semibold); color: var(--pbly-color-text-soft); line-height: var(--pbly-font-line-height-relaxed); }
.pbly .school-card__address svg { width: var(--pbly-space-4); height: var(--pbly-space-4); margin-top: calc((var(--pbly-font-size-sm) * var(--pbly-font-line-height-relaxed) - var(--pbly-space-4)) / 2); }
.pbly .school-card__address-text { min-height: 0; }
.pbly .member-card { display: flex; flex-direction: column; }
.pbly .member-card__body { flex: 1; }
.pbly .member-card__logo { width: 150px; height: 150px; object-fit: contain; margin: var(--pbly-space-4) 0 0 var(--pbly-space-4); }
.pbly .member-card__copy { padding: var(--pbly-space-3) var(--pbly-layout-card-reading-padding) var(--pbly-layout-card-reading-padding); }
.pbly .member-card h2 { font-size: var(--pbly-font-size-card); line-height: var(--pbly-text-heading-card-line-height); margin-bottom: var(--pbly-space-3); }
.pbly .member-card p { font-size: var(--pbly-font-size-base); line-height: var(--pbly-font-line-height-relaxed); }
.pbly .member-card__location { display: flex; align-items: center; gap: var(--pbly-space-2); margin-top: var(--pbly-space-8); color: var(--pbly-color-text-soft); font-weight: var(--pbly-font-weight-semibold); }
.pbly .member-card .member-card__location { font-size: var(--pbly-font-size-sm); }
.pbly .member-card__location svg { width: 16px; height: 16px; }
.pbly .member-card__contact { display: flex; border-top: 1px solid var(--pbly-color-border-default); }
.pbly .member-card__contact a { flex: 1; display: flex; justify-content: center; align-items: center; padding-block: var(--pbly-space-6); color: var(--pbly-color-text-muted); }
.pbly .member-card__contact a + a { border-left: 1px solid var(--pbly-color-border-default); }
.pbly .member-card__contact a:hover { background: var(--pbly-color-background); }
.pbly .event-card__media { display: flex; align-items: flex-end; min-height: 260px; position: relative; background: var(--pbly-color-text-primary); color: var(--pbly-color-action-on-primary); }
.pbly .event-card__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.pbly .event-card__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(transparent 30%, var(--pbly-color-text-primary)); }
.pbly .event-card__date { display: flex; align-items: center; gap: var(--pbly-space-2); padding: var(--pbly-space-8); z-index: 1; font-size: var(--pbly-font-size-sm); font-weight: var(--pbly-font-weight-semibold); }
.pbly .event-card__body { padding: var(--pbly-space-8); }
.pbly .event-card__body p { display: flex; gap: var(--pbly-space-2); color: var(--pbly-color-text-soft); margin-top: var(--pbly-space-4); font-size: var(--pbly-font-size-sm); font-weight: var(--pbly-font-weight-semibold); }
.pbly .event-card__body p svg { width: 16px; margin-top: var(--pbly-space-1); }
.pbly .category-nav { background: var(--pbly-color-surface-raised); box-shadow: var(--pbly-shadow-sm); margin-bottom: var(--pbly-space-8); }
.pbly .category-nav a { display: flex; align-items: center; gap: var(--pbly-space-4); padding: var(--pbly-space-4) var(--pbly-layout-card-padding); border-bottom: 1px solid var(--pbly-color-border-default); font-size: var(--pbly-font-size-base); font-weight: var(--pbly-font-weight-semibold); }
.pbly .category-nav svg { width: 20px; height: 20px; }
.pbly .information-card,.pbly .contact-card { background: var(--pbly-color-surface-raised); box-shadow: var(--pbly-shadow-sm); padding: var(--pbly-layout-card-reading-padding); }
.pbly .contact-card__portrait { width: 80px; height: 80px; object-fit: cover; border-radius: var(--pbly-radius-full); margin-bottom: var(--pbly-space-6); }
.pbly .contact-card p { font-size: var(--pbly-font-size-dense); line-height: var(--pbly-font-line-height-relaxed); margin-top: var(--pbly-space-2); }
.pbly .contact-card + .contact-card { margin-top: var(--pbly-space-6); }
.pbly .news-card { display: flex; flex-direction: column; height: 100%; }
.pbly .event-card__body h2 { font-size: var(--pbly-font-size-card); line-height: var(--pbly-text-heading-card-line-height); }

@media (max-width: 1200px) {
  .pbly .feature-card { grid-template-columns: minmax(0, 1fr); }
  .pbly .feature-card__media { grid-row: 1; }
}

@media (max-width: 640px) {
  .pbly .feature-card__media img { height: var(--pbly-layout-media-editorial-mobile-height); }
  .pbly .feature-card__body { padding: var(--pbly-space-6) var(--pbly-space-3) var(--pbly-space-3); }
  .pbly .feature-card__title { margin-top: var(--pbly-space-6); margin-bottom: var(--pbly-space-3); font-size: var(--pbly-font-size-2xl); margin-block: var(--pbly-space-4); }
  .pbly .feature-card__excerpt { display: none; }
  .pbly .feature-card .detail-link { margin: var(--pbly-space-6) 0 0; }
  .pbly .information-card,.pbly .contact-card { padding: var(--pbly-space-8) var(--pbly-space-6); }
  .pbly .feature-card__body,.pbly .news-card__body,.pbly .school-card__body,.pbly .event-card__body,.pbly .information-card,.pbly .contact-card { padding: var(--pbly-layout-card-mobile-padding); }
}


.pbly .news-card__excerpt { font-size: var(--pbly-font-size-sm); }
.pbly .feature-card__title { margin-block: var(--pbly-space-8); }
.pbly .feature-card .detail-link { margin-top: var(--pbly-space-8); }
.pbly .compact-card__title { line-height: var(--pbly-font-line-height-snug); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.pbly .compact-card { min-height: calc(var(--pbly-layout-media-recommendation-size) + 2 * var(--pbly-layout-card-compact-padding)); }

/* Card proportions refined with the shared spacing and typography scale. */
.pbly .school-card__body { padding: var(--pbly-layout-card-padding); }
.pbly .school-card__media img { aspect-ratio: 2 / 1; }
.pbly .school-card__title { font-size: var(--pbly-font-size-md); }
.pbly .school-card__speciality { line-height: var(--pbly-font-line-height-compact); }
.pbly .detail-link svg { width: var(--pbly-space-3); height: var(--pbly-space-3); flex-shrink: 0; }
.pbly .compact-card { padding: var(--pbly-space-3); min-height: calc(var(--pbly-layout-media-recommendation-size) + 2 * var(--pbly-space-3)); }
.pbly .compact-card__body { padding-right: var(--pbly-space-6); }

.pbly .event-card__body p { margin-top: var(--pbly-space-8); align-items: center; font-size: var(--pbly-font-size-sm); font-weight: var(--pbly-font-weight-semibold); line-height: var(--pbly-font-line-height-relaxed); }
.pbly .event-card__body p svg { width: var(--pbly-space-4); height: var(--pbly-space-4); margin-top: 0; flex-shrink: 0; }
.pbly .event-card__date svg { width: var(--pbly-space-4); height: var(--pbly-space-4); flex-shrink: 0; }

.pbly .compact-card__title { font-size: var(--pbly-font-size-base); }

@media (max-width: 640px) {
  .pbly .event-card__body,.pbly .event-card__date { padding: var(--pbly-layout-card-mobile-padding); }
}

.pbly .news-card__title { font-weight: var(--pbly-font-weight-bold); }

@media (max-width: 640px) {
  .pbly .school-card__body { padding: var(--pbly-layout-card-mobile-padding); }
}

@media (max-width: 640px) {
  .pbly .feature-card__title { font-size: var(--pbly-text-heading-mobile-feature-font-size); margin-block: var(--pbly-space-4); }
}

.pbly .education-detail__resources a { color: var(--pbly-color-link-default); }
.pbly .education-detail__resources a:hover { color: var(--pbly-color-link-hover); }

@media (min-width: 641px) {
  .pbly .member-card__body { display: flex; flex-direction: column; }
  .pbly .member-card__copy { display: flex; flex-direction: column; flex: 1; }
  .pbly .member-card__location { margin-top: auto; padding-top: var(--pbly-space-8); }
}

.pbly .contact-card__portrait { width: var(--pbly-layout-media-recommendation-size); height: var(--pbly-layout-media-recommendation-size); }
.pbly .contact-card h3 { font-size: var(--pbly-font-size-lg); }
.pbly .contact-card p:first-of-type { color: var(--pbly-color-text-soft); }
.pbly .contact-card p:has(a) { font-size: var(--pbly-font-size-base); margin-top: var(--pbly-space-4); line-height: var(--pbly-font-line-height-body); }


/* css/components/contact-cta.css */
.pbly .contact-cta { padding-block: var(--pbly-space-16); background: var(--pbly-color-surface-contact-cta); color: var(--pbly-color-action-on-primary); }
.pbly .contact-cta__layout { display: flex; justify-content: space-between; align-items: center; gap: var(--pbly-space-12); }
.pbly .contact-cta__title { font-size: var(--pbly-text-heading-lg-font-size); line-height: var(--pbly-text-heading-lg-line-height); margin-bottom: var(--pbly-space-4); }
.pbly .contact-cta__actions { display: flex; flex-direction: column; align-items: flex-start; gap: var(--pbly-space-4); flex-shrink: 0; }
.pbly main:has(> .contact-cta) + .site-footer { margin-top: 0; }
@media (max-width: 640px) {
  .pbly .contact-cta { padding-block: var(--pbly-space-12); }
  .pbly .contact-cta__layout { flex-direction: column; align-items: flex-start; gap: var(--pbly-space-16); }
  .pbly .contact-cta__title { font-size: var(--pbly-font-size-2xl); }
}


.pbly .contact-cta__contact-link { background: var(--pbly-color-surface-raised); color: var(--pbly-color-text-primary); display: inline-flex; align-items: center; gap: var(--pbly-space-5); font-size: var(--pbly-font-size-sm); text-transform: uppercase; font-weight: var(--pbly-font-weight-bold); line-height: var(--pbly-font-line-height-compact); text-decoration: none; }
.pbly .contact-cta__contact-icon { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: var(--pbly-button-height); height: var(--pbly-button-height); background: var(--pbly-color-surface-raised); color: var(--pbly-color-text-primary); }
.pbly .contact-cta__contact-icon svg { width: var(--pbly-space-6); height: var(--pbly-space-6); }

.pbly .contact-cta__contact-link > span:first-child { padding-left: var(--pbly-space-4); }
.pbly .contact-cta__contact-link:is(:hover,:focus-visible) { text-decoration: none; }
.pbly .contact-cta__contact-link:focus-visible { outline-color: var(--pbly-color-action-on-primary); }

@media (max-width: 640px) {
  .pbly .contact-cta > .wrapper { width: calc(100% - 2 * var(--pbly-layout-wrapper-band-gutter)); }
}

.pbly .contact-cta__contact-link { transition: color 200ms ease; }
.pbly .contact-cta__contact-icon svg { transition: transform 200ms ease; }
.pbly .contact-cta__contact-link:is(:hover,:focus-visible) { color: var(--pbly-color-action-membership); }
.pbly .contact-cta__contact-link:is(:hover,:focus-visible) .contact-cta__contact-icon svg { transform: translate(var(--pbly-space-1), calc(-1 * var(--pbly-space-1))); }
@media (prefers-reduced-motion: reduce) {
  .pbly .contact-cta__contact-link,.pbly .contact-cta__contact-icon svg { transition: none; }
  .pbly .contact-cta__contact-link:is(:hover,:focus-visible) .contact-cta__contact-icon svg { transform: none; }
}


/* css/components/benefits.css */
.pbly .benefit-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--pbly-layout-grid-gap); list-style: none; margin: 0; padding: 0; }
.pbly .benefit-card { min-width: 0; padding: var(--pbly-space-8); background: var(--pbly-color-background); box-shadow: var(--pbly-shadow-sm); }
.pbly .benefit-card__icon { display: block; color: var(--pbly-color-link-default); margin-bottom: var(--pbly-space-8); }
.pbly .benefit-card__icon svg { display: block; width: var(--pbly-space-6); height: var(--pbly-space-6); }
.pbly .benefit-card h3 { font-size: var(--pbly-font-size-md); line-height: var(--pbly-font-line-height-compact); margin: 0 0 var(--pbly-space-4); }
.pbly .benefit-card p { margin: 0; color: var(--pbly-color-text-muted); }
@media (max-width: 1200px) {
  .pbly .benefit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pbly .benefit-grid > .benefit-card:last-child:nth-child(odd) { grid-column: 1 / -1; }
}
@media (max-width: 640px) {
  .pbly .benefit-grid { grid-template-columns: minmax(0, 1fr); gap: var(--pbly-layout-grid-compact-gap); }
  .pbly .benefit-card { padding: var(--pbly-space-6); }
  .pbly .benefit-card__icon { margin-bottom: var(--pbly-space-6); }
}


/* css/components/consent.css */
/* Cookie consent: the banner (template-parts/site/cookie-notice.php), its footer link and the YouTube placeholder (inc/consent.php). */
.pbly .cookie-notice { width: 440px; max-width: calc(100% - 2 * var(--pbly-space-8)); max-height: calc(100dvh - 2 * var(--pbly-space-6)); overflow-y: auto; overscroll-behavior: contain; position: fixed; bottom: var(--pbly-space-6); right: var(--pbly-space-6); z-index: 30; padding: var(--pbly-space-4); background: var(--pbly-color-surface-raised); box-shadow: var(--pbly-shadow-lg); font-size: var(--pbly-font-size-sm); line-height: var(--pbly-font-line-height-body); }
.pbly .cookie-notice[hidden] { display: none; }
.pbly .cookie-notice__content { display: grid; grid-template-columns: 40px 1fr; gap: var(--pbly-space-4); }
.pbly .cookie-notice__content > svg { width: 40px; height: 40px; margin-top: var(--pbly-space-1); }
.pbly .cookie-notice__title { margin: 0 0 var(--pbly-space-1); }
.pbly .cookie-notice__title:focus { outline: none; }
.pbly .cookie-notice__message { margin: 0; }
.pbly .cookie-notice__content [hidden],.pbly .cookie-notice__actions [hidden] { display: none; }
.pbly .cookie-notice__choices fieldset { display: grid; gap: var(--pbly-space-3); margin: 0; padding: 0; border: 0; }
.pbly .cookie-notice__choice { display: grid; grid-template-columns: var(--pbly-space-4) minmax(0, 1fr); gap: var(--pbly-space-3); align-items: start; color: var(--pbly-color-text-muted); cursor: pointer; }
.pbly .cookie-notice__choice strong { display: block; color: var(--pbly-color-text-primary); font-weight: var(--pbly-font-weight-semibold); }
.pbly .cookie-notice__choice input { width: var(--pbly-space-4); height: var(--pbly-space-4); margin: var(--pbly-space-1) 0 0; }
.pbly .cookie-notice__actions { margin-top: var(--pbly-space-4); }
.pbly .cookie-notice__actions .pbly-btn { width: 100%; }
.pbly .cookie-notice__links { display: flex; flex-wrap: wrap; gap: var(--pbly-space-4); margin: var(--pbly-space-3) 0 0; }
.pbly .cookie-notice__links button,.pbly .cookie-notice__links a { display: inline-flex; align-items: center; gap: var(--pbly-space-1); color: var(--pbly-color-link-default); font-weight: var(--pbly-font-weight-semibold); text-decoration: underline; }
.pbly .cookie-notice__links button:hover,.pbly .cookie-notice__links a:hover { color: var(--pbly-color-link-hover); }
.pbly .cookie-notice__links svg { width: var(--pbly-font-size-sm); height: var(--pbly-font-size-sm); }
.pbly .site-footer__consent { text-align: start; }
.pbly .site-footer__consent:hover { text-decoration: underline; }
.pbly .site-footer__consent[hidden] { display: none; }

@media (max-width: 640px) {
  .pbly .cookie-notice { max-width: 100%; width: 100%; max-height: 85dvh; bottom: 0; right: 0; border-top: 1px solid var(--pbly-color-border-default); box-shadow: var(--pbly-shadow-up); }
}

/* The YouTube placeholder is its own small document inside the video's iframe. */
.pbly .video-consent { min-height: 100vh; display: grid; place-content: center; justify-items: center; gap: var(--pbly-space-3); padding: var(--pbly-space-4); background: var(--pbly-color-surface-menu); color: var(--pbly-color-text-on-menu); text-align: center; }
.pbly .video-consent__title { margin: 0; font-size: var(--pbly-font-size-md); font-weight: var(--pbly-font-weight-semibold); }
.pbly .video-consent__play { gap: var(--pbly-space-2); background: var(--pbly-color-text-on-menu); color: var(--pbly-color-surface-menu); }
.pbly .video-consent__play:hover { background: var(--pbly-color-text-menu-muted); color: var(--pbly-color-surface-menu); text-decoration: none; }
.pbly .video-consent__play svg { width: var(--pbly-space-4); height: var(--pbly-space-4); }
.pbly .video-consent__note { max-width: var(--pbly-layout-measure-normal); margin: 0; color: var(--pbly-color-text-menu-muted); font-size: var(--pbly-font-size-xs); }
.pbly .video-consent__note a { color: var(--pbly-color-text-on-menu); text-decoration: underline; }

@media (max-width: 640px) {
  .pbly .video-consent { gap: var(--pbly-space-2); padding: var(--pbly-space-3); }
  .pbly .video-consent__title { display: none; }
}


/* css/components/promotion.css */
/* Promotional banners (template-parts/site/promotion.php): wide above the homepage news, narrow in the Noutăți, article and event sidebars. */
.pbly .promotion { display: block; margin-bottom: var(--pbly-space-12); }
.pbly .promotion-slot--side .promotion { margin: var(--pbly-space-8) 0 0; }
.pbly .promotion :is(picture,img) { display: block; width: 100%; }



/* css/pages.css */

/* css/pages/home.css */
.pbly .home-education { padding-block: var(--pbly-layout-section-padding); }

@media (max-width: 640px) {
  .pbly .home-education { padding-top: var(--pbly-space-4); }
}


@media (min-width: 1201px) {
  .pbly .home-education .school-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (min-width: 1201px) {
  .pbly .home-feature .featured-layout { align-items: stretch; }
  .pbly .home-feature .feature-card__media { position: relative; min-height: var(--pbly-layout-media-editorial-height); }
  .pbly .home-feature .feature-card__media img { position: absolute; inset: 0; height: 100%; }
  .pbly .home-feature .featured-layout__side { align-content: stretch; grid-auto-rows: minmax(min-content, 1fr); }
}

.pbly .home-events { grid-template-columns: minmax(0, 1fr); }
.pbly .home-events__note { font-size: var(--pbly-font-size-xs); color: var(--pbly-color-text-soft); margin-bottom: var(--pbly-space-4); }

.pbly .home-education { padding-bottom: var(--pbly-space-20); }
.pbly .home-about { padding-block: var(--pbly-space-20); background: var(--pbly-color-surface-raised); }
.pbly .home-about__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: calc(2 * var(--pbly-space-20)); align-items: start; }
.pbly .home-about__title { font-size: var(--pbly-text-heading-lg-font-size); font-weight: var(--pbly-font-weight-bold); line-height: var(--pbly-text-heading-lg-line-height); letter-spacing: var(--pbly-text-heading-lg-letter-spacing); }
.pbly .home-about__intro { margin-top: var(--pbly-space-8); font-size: var(--pbly-font-size-base); }
.pbly .home-about__pillars { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--pbly-space-12); }
.pbly .home-about__pillar > svg { width: var(--pbly-space-8); height: var(--pbly-space-8); margin-bottom: var(--pbly-space-4); }
.pbly .home-about__pillar h3 { font-size: var(--pbly-font-size-md); margin-bottom: var(--pbly-space-3); }
.pbly .home-about__pillar p { color: var(--pbly-color-text-muted); }
.pbly .home-about__actions { margin-top: var(--pbly-space-12); }
.pbly .home-about__facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--pbly-space-6); margin: var(--pbly-space-12) 0 0; border-top: 1px solid var(--pbly-color-border-default); padding-top: var(--pbly-space-8); }
.pbly .home-about__facts > div { display: flex; flex-direction: column-reverse; gap: var(--pbly-space-2); }
.pbly .home-about__facts dt { font-size: var(--pbly-font-size-sm); color: var(--pbly-color-text-soft); }
.pbly .home-about__facts dd { font-size: var(--pbly-font-size-stat); font-weight: var(--pbly-font-weight-bold); line-height: var(--pbly-text-heading-lg-line-height); letter-spacing: var(--pbly-text-heading-lg-letter-spacing); margin: 0; }
@media (max-width: 1200px) {
  .pbly .home-about__layout { gap: var(--pbly-space-8); }
}
@media (max-width: 640px) {
  .pbly .home-education { padding-bottom: var(--pbly-space-4); }
  .pbly .home-about { padding-block: var(--pbly-space-8); }
  .pbly .home-about__layout { grid-template-columns: minmax(0, 1fr); gap: var(--pbly-space-16); }
  .pbly .home-about__title { font-size: var(--pbly-font-size-2xl); }
}

.pbly .home-about__faq { border-bottom: 1px solid var(--pbly-color-border-default); }
.pbly .home-about__faq summary { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--pbly-space-6); padding-block: var(--pbly-space-6); cursor: pointer; list-style: none; font-size: var(--pbly-font-size-md); font-weight: var(--pbly-font-weight-bold); line-height: var(--pbly-font-line-height-compact); }
.pbly .home-about__faq summary::-webkit-details-marker { display: none; }
.pbly .home-about__faq-icon { flex-shrink: 0; width: var(--pbly-space-4); height: var(--pbly-space-4); margin-top: calc((var(--pbly-font-size-md) * var(--pbly-font-line-height-compact) - var(--pbly-space-4)) / 2); }
.pbly .home-about__faq[open] .home-about__faq-icon { transform: rotate(45deg); }
.pbly .home-about__faq p { padding: 0 calc(var(--pbly-space-4) + var(--pbly-space-6)) var(--pbly-space-6) 0; color: var(--pbly-color-text-muted); font-size: var(--pbly-font-size-base); }
.pbly .home-about__faq p a { text-decoration: underline; }

/* Progressive enhancement: native details remains functional without size interpolation. */
.pbly .home-about__faq-icon { transition: transform 300ms ease; /* exception: matches the contact CTA interaction duration. */ }
@supports (interpolate-size: allow-keywords) {
  .pbly .home-about__faq { interpolate-size: allow-keywords; }
  .pbly .home-about__faq::details-content { block-size: 0; opacity: 0; overflow: clip; transition: block-size 300ms ease, opacity 300ms ease, content-visibility 300ms; transition-behavior: allow-discrete; /* exception: native accordion opening and closing duration. */ }
  .pbly .home-about__faq[open]::details-content { block-size: auto; opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .pbly .home-about__faq-icon,.pbly .home-about__faq::details-content { transition: none; }
}

@media (max-width: 640px) {
  .pbly .home-about > .wrapper { width: calc(100% - 2 * var(--pbly-layout-wrapper-band-gutter)); }
}

@media (max-width: 640px) {
  .pbly .home-news .content-layout__side { margin-top: var(--pbly-space-12); }
  .pbly .home-education { padding-block: var(--pbly-space-12); }
  .pbly .home-about__faq summary { font-size: var(--pbly-font-size-faq-mobile); }
  .pbly .home-about__faq-icon { margin-top: calc((var(--pbly-font-size-faq-mobile) * var(--pbly-font-line-height-compact) - var(--pbly-space-4)) / 2); }
}

@media (min-width: 641px) and (max-width: 1200px) {
  .pbly .home-events { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pbly .home-events .event-card { display: flex; flex-direction: column; }
  .pbly .home-events .event-card__body { flex: 1; }
}

@media (min-width: 641px) {
  .pbly .home-feature .feature-card__title { font-size: var(--pbly-font-size-xl); }
}


/* css/pages/content.css */
.pbly .directory { position: relative; }
.pbly .directory::before { content: ""; position: absolute; inset: 0; pointer-events: none; background-position: top right; background-repeat: no-repeat; background-size: var(--pbly-layout-media-directory-motif-size) auto; opacity: 1; transition: opacity 300ms ease; }
.pbly .directory > .wrapper { position: relative; }
.pbly .directory--membri::before { background-image: url("../images/pg_bkg_1.png"); }
.pbly .directory--events::before { background-image: url("../images/pg_bkg_2.png"); }
.pbly .directory--educatie::before { background-image: url("../images/pg_bkg_3.png"); }
.pbly .directory .section-header { margin: 0 0 var(--pbly-space-12); }
.pbly .directory :is(.school-grid,.member-grid) + .section-label { margin-top: var(--pbly-layout-section-gap); }
.pbly .events__past { margin-top: var(--pbly-space-8); }
.pbly .about__copy { max-width: var(--pbly-layout-measure-wide); margin-bottom: var(--pbly-space-8); }
.pbly .achievement-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--pbly-layout-grid-gap); }
.pbly .achievement h3 { margin-bottom: var(--pbly-space-4); font-size: var(--pbly-font-size-md); line-height: var(--pbly-font-line-height-compact); letter-spacing: var(--pbly-font-tracking-heading); }
.pbly .news-grid--more { margin-top: var(--pbly-space-6); }
.pbly .category-page .section-header__title[style*="--att-category-color"] { padding-left: var(--pbly-space-5); border-left: 4px solid var(--att-category-color); }
.pbly .category-page .load-more:disabled { opacity: 1; cursor: default; }
.pbly .article-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); align-items: start; }
.pbly .article-layout__side { grid-column: 1; grid-row: 1; margin-right: var(--pbly-space-8); }
.pbly .story { grid-column: 2; grid-row: 1; background: var(--pbly-color-surface-raised); box-shadow: var(--pbly-shadow-sm); min-width: 0; }
.pbly .story__header { padding: var(--pbly-space-12); }
.pbly .story__meta { display: flex; align-items: center; justify-content: space-between; gap: var(--pbly-layout-grid-compact-gap); }
.pbly .story__header h1 { margin-block: var(--pbly-space-6) var(--pbly-space-4); }
.pbly .story__date { font-size: var(--pbly-font-size-sm); color: var(--pbly-color-text-soft); font-weight: var(--pbly-font-weight-semibold); }
.pbly .story__image { width: 100%; height: var(--pbly-layout-media-editorial-height); object-fit: cover; object-position: center; }
.pbly .story__body { padding: var(--pbly-space-12); }
.pbly .share-links { display: flex; align-items: center; gap: var(--pbly-space-3); flex-shrink: 0; }
.pbly .share-links a { display: inline-flex; align-items: center; justify-content: center; width: var(--pbly-space-8); height: var(--pbly-space-8); border-radius: var(--pbly-radius-full); background: var(--pbly-color-border-default); color: var(--pbly-color-text-muted); }
.pbly .share-links a:hover { background: var(--pbly-color-background); }
.pbly .share-links svg { width: var(--pbly-space-4); height: var(--pbly-space-4); }
.pbly .story__source { margin-top: var(--pbly-space-8); color: var(--pbly-color-text-soft); font-size: var(--pbly-font-size-sm); }
.pbly .education-detail__side { margin-left: var(--pbly-space-12); }
.pbly .education-detail__main > .section-label { margin-top: var(--pbly-space-8); }
.pbly .education-detail__logo { width: var(--pbly-space-20); height: var(--pbly-space-20); object-fit: contain; margin-bottom: var(--pbly-space-5); }
.pbly .education-detail__resources { list-style: none; padding: 0; margin: var(--pbly-space-8) 0 0; display: grid; gap: var(--pbly-space-5); }
.pbly .education-detail__resources a { display: flex; align-items: center; gap: var(--pbly-space-4); color: var(--pbly-color-text-soft); }
.pbly .education-detail__resource-icon { display: inline-flex; flex-shrink: 0; }
.pbly .education-detail__resource-icon svg { width: var(--pbly-space-6); height: var(--pbly-space-6); }
.pbly .education-detail__resource-icon--pdf { color: var(--pbly-color-icon-document); }
.pbly .education-detail__specialization h3 { margin-bottom: var(--pbly-space-4); }
.pbly .education-detail__specialization + .education-detail__specialization { margin-top: var(--pbly-layout-grid-gap); }
.pbly .education-detail__subject { margin-block: var(--pbly-space-4) var(--pbly-space-8); color: var(--pbly-color-text-muted); }
.pbly .information-card.education-detail__information { padding: 0; }
.pbly .education-detail__image { width: 100%; height: var(--pbly-layout-media-institution-height); object-fit: cover; }
.pbly .education-detail__fields { padding: var(--pbly-layout-card-reading-padding); }
.pbly .education-detail__fields h3 { margin-top: var(--pbly-space-6); font-size: var(--pbly-font-size-subheading); }
.pbly .education-detail__fields h3:first-child { margin-top: 0; }
.pbly .education-detail__fields p { overflow-wrap: anywhere; }
.pbly .education-detail__side > .section-label:not(:first-child) { margin-top: var(--pbly-space-8); }
.pbly .event-detail__hero { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); box-shadow: var(--pbly-shadow-sm); }
.pbly .event-detail__visual { position: relative; display: flex; align-items: flex-end; min-height: 400px; background: var(--pbly-color-text-primary); color: var(--pbly-color-action-on-primary); }
.pbly .event-detail__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.pbly .event-detail__visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(transparent 30%, var(--pbly-color-text-primary)); }
.pbly .event-detail__visual h1 { position: relative; z-index: 1; padding: var(--pbly-space-8) var(--pbly-space-8) var(--pbly-space-8); }
.pbly .event-detail__location { padding: var(--pbly-layout-card-reading-padding); background: url("../images/pg_bkg_2.png") top right / var(--pbly-layout-media-event-motif-size) auto no-repeat var(--pbly-color-surface-raised); }
.pbly .event-detail__location :where(p,h2) { display: flex; align-items: start; gap: var(--pbly-space-2); margin-bottom: var(--pbly-space-8); }
.pbly .event-detail__location p,.pbly .event-detail__location h2 { font-size: var(--pbly-font-size-dense); line-height: var(--pbly-font-line-height-relaxed); }
.pbly .event-detail__location > p:first-child { font-weight: var(--pbly-font-weight-semibold); }
.pbly .event-detail__location h2 { font-weight: var(--pbly-font-weight-semibold); }
.pbly .event-detail__location svg { margin-top: var(--pbly-space-1); }
.pbly .event-detail__map { color: var(--pbly-color-link-external); font-size: var(--pbly-font-size-dense); }
.pbly .event-detail__calendar { display: flex; align-items: center; gap: var(--pbly-space-2); width: fit-content; margin-top: var(--pbly-space-6); }
.pbly .event-detail__calendar svg { margin-top: 0; }
.pbly .event-description .information-card h2 { margin-top: 0; }
.pbly .legal-members { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--pbly-space-2) var(--pbly-layout-grid-gap); list-style: none; text-transform: uppercase; font-size: var(--pbly-font-size-dense); }
.pbly .prose .legal-members { padding-left: 0; }
.pbly .legal-members--columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pbly .achievement { padding: var(--pbly-layout-card-padding); background: var(--pbly-color-surface-raised); border-top: 2px solid var(--pbly-color-border-strong); }
.pbly .about__copy p { max-width: var(--pbly-layout-measure-wide); }
.pbly .story__body { max-width: none; }

@media (max-width: 1200px) {
  .pbly .article-layout { grid-template-columns: minmax(0, 1fr); }
  .pbly .story { grid-column: 1; grid-row: 1; }
  .pbly .article-layout__side { grid-column: 1; grid-row: 2; margin-right: 0; margin-top: var(--pbly-space-12); }
  .pbly .education-detail__side { margin: var(--pbly-space-8) 0 0; }
  .pbly .event-detail__hero { grid-template-columns: minmax(0, 1fr); }
  .pbly .achievement-grid { gap: var(--pbly-layout-grid-gap); }
}

@media (max-width: 640px) {
  .pbly .directory .section-header { margin: 0 0 var(--pbly-space-8); padding-top: var(--pbly-space-8); }
  .pbly .achievement-grid { grid-template-columns: minmax(0, 1fr); gap: var(--pbly-layout-grid-compact-gap); }
  .pbly .story__header,.pbly .story__body { padding: var(--pbly-space-6); }
  .pbly .story__meta { flex-direction: column-reverse; align-items: stretch; }
  .pbly .share-links { justify-content: flex-end; }
  .pbly .story__image { height: var(--pbly-layout-media-editorial-mobile-height); }
  .pbly .event-detail__visual { min-height: 300px; }
  .pbly .event-detail__visual h1 { padding: var(--pbly-space-6); }
  .pbly .event-detail__location { padding: var(--pbly-space-16) var(--pbly-space-6) var(--pbly-space-8); }
  .pbly .legal-members--columns-2 { grid-template-columns: minmax(0, 1fr); }
  .pbly .achievement { padding: var(--pbly-layout-card-mobile-padding); }
  .pbly .story__header,.pbly .story__body,.pbly .event-detail__location { padding: var(--pbly-layout-card-mobile-padding); }
  .pbly .education-detail__side { margin-left: 0; }
  .pbly .education-detail__fields { padding: var(--pbly-layout-card-mobile-padding); }
}

.pbly .directory--educatie { padding-top: var(--pbly-space-12); }

.pbly .event-detail__visual { flex-direction: column; justify-content: flex-end; align-items: stretch; }
.pbly .event-detail__visual h1 { padding-bottom: var(--pbly-space-4); }
.pbly .event-detail__date { position: relative; z-index: 1; display: flex; align-items: center; gap: var(--pbly-space-2); padding: 0 var(--pbly-space-8) var(--pbly-space-8); font-size: var(--pbly-font-size-sm); }
.pbly .event-detail__date svg { width: var(--pbly-space-4); height: var(--pbly-space-4); flex-shrink: 0; }
.pbly .event-detail__location :where(p,h2) { margin-bottom: var(--pbly-space-4); }
.pbly .event-detail__calendar { font-size: var(--pbly-font-size-xs); padding: var(--pbly-space-2) var(--pbly-space-4); }
.pbly .event-detail__calendar svg { width: var(--pbly-space-4); height: var(--pbly-space-4); }

@media (min-width: 1201px) {
  .pbly .directory--educatie .school-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

.pbly .event-detail__location { display: flex; flex-direction: column; align-items: flex-start; gap: var(--pbly-space-3); }
.pbly .event-detail__location :where(p,h2) { margin: 0; }
.pbly .event-detail__location h2 svg { width: var(--pbly-space-4); height: var(--pbly-space-4); flex-shrink: 0; margin-top: var(--pbly-space-1); }
.pbly .event-detail__location > p,.pbly .event-detail__map { margin-left: var(--pbly-space-6); }
.pbly .event-detail__location .event-detail__calendar { margin-top: var(--pbly-space-3); padding: var(--pbly-space-3) var(--pbly-space-6); font-size: var(--pbly-font-size-sm); }
.pbly .event-description .prose p { margin-bottom: var(--pbly-space-6); }
.pbly .event-description .prose > :last-child { margin-bottom: 0; }

.pbly .event-detail__location { justify-content: center; padding: var(--pbly-space-8); }
.pbly .event-detail__location > p,.pbly .event-detail__map { margin-left: 0; }
.pbly .event-detail__location h2 { align-items: center; }
.pbly .event-detail__location h2 svg { margin-top: 0; }
.pbly .event-detail__location .event-detail__calendar { margin-top: var(--pbly-space-6); padding: var(--pbly-button-padding-block) var(--pbly-button-padding-inline); gap: var(--pbly-space-3); }

.pbly .event-detail__location { gap: var(--pbly-space-2); }
.pbly .event-detail__visual h1 { font-size: var(--pbly-font-size-2xl); }
@media (min-width: 1201px) {
  .pbly .event-detail__visual { min-height: var(--pbly-layout-media-event-hero-height); }
}

@media (min-width: 1201px) {
  .pbly .education-similar .school-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

.pbly .story__body.prose :where(p,ul,ol,blockquote) { max-width: none; }

.pbly .event-detail__map { display: inline-flex; align-items: center; gap: var(--pbly-space-2); font-weight: var(--pbly-font-weight-medium); }
.pbly .event-detail__map svg { width: var(--pbly-space-3); height: var(--pbly-space-3); margin-top: 0; flex-shrink: 0; }

@media (max-width: 640px) {
  .pbly .directory--educatie { padding-top: var(--pbly-space-4); }
  .pbly .event-detail__location { padding: var(--pbly-layout-card-mobile-padding); }
  .pbly .event-detail__visual h1 { padding: var(--pbly-layout-card-mobile-padding); }
  .pbly .event-detail__date { padding: 0 var(--pbly-layout-card-mobile-padding) var(--pbly-layout-card-mobile-padding); }
}

@media (max-width: 640px) {
  .pbly .directory::before { background-size: auto var(--pbly-layout-media-directory-motif-mobile-height); }
  .pbly .directory--membri::before { background-size: auto var(--pbly-layout-media-member-motif-mobile-height); }
  .pbly .directory .section-header { padding-top: calc(var(--pbly-layout-section-directory-title-offset) - var(--pbly-space-4)); }
}

@media (min-width: 1201px) {
  .pbly .directory .section-header { padding-top: calc(var(--pbly-layout-section-directory-title-offset) - var(--pbly-space-12)); }
}

@media (max-width: 640px) {
  .pbly .event-detail__location .event-detail__calendar { padding: var(--pbly-button-mobile-padding-block) var(--pbly-button-mobile-padding-inline); }
}

.pbly .directory--membri { padding-bottom: var(--pbly-space-20); }
@media (max-width: 640px) {
  .pbly .directory--membri { padding-bottom: var(--pbly-space-12); }
}

@media (min-width: 641px) and (max-width: 1200px) {
  .pbly .directory::before { background-size: auto var(--pbly-layout-media-directory-motif-mobile-height); }
  .pbly .directory--membri::before { background-size: auto var(--pbly-layout-media-member-motif-mobile-height); }
  .pbly main > .directory:first-child { padding-top: var(--pbly-space-6); }
  .pbly .directory .section-header { padding-top: calc(var(--pbly-layout-section-directory-title-offset) - var(--pbly-space-6)); }
}

@media (max-width: 640px) {
  .pbly :is(.education-similar,.education-articles,.article-related) { padding-top: var(--pbly-space-12); }
}

.pbly .event-detail__location h2 { font-size: var(--pbly-font-size-base); }
@media (max-width: 640px) {
  .pbly .event-detail__location { padding: var(--pbly-space-16) var(--pbly-layout-card-mobile-padding) var(--pbly-space-8); }
}

@media (min-width: 641px) {
  .pbly .event-detail__location { padding-inline: var(--pbly-space-10); }
}

@media (min-width: 1601px) {
  .pbly .directory::before { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .pbly .directory::before { transition: none; }
}

/* Shared long-form content spacing; heading margins retain their existing rules. */
.pbly .story__body.prose,.pbly .event-description article.information-card.prose { padding: var(--pbly-layout-card-content-padding-block) var(--pbly-space-12); }
.pbly :is(.story__body.prose,.event-description article.information-card.prose) :where(p,ul,ol,blockquote) { max-width: none; }
.pbly :is(.story__body.prose,.event-description article.information-card.prose) :is(p,ul,ol,blockquote) { margin-bottom: var(--pbly-space-6); }
.pbly :is(.story__body.prose,.event-description article.information-card.prose) > :last-child { margin-bottom: 0; }
@media (max-width: 640px) {
  .pbly .story__body.prose,.pbly .event-description article.information-card.prose { padding: var(--pbly-layout-card-mobile-content-padding-block) var(--pbly-layout-card-mobile-padding); }
}

.pbly .event-detail { padding-bottom: var(--pbly-space-4); }
.pbly .event-description { padding-top: var(--pbly-space-4); }

@media (min-width: 1201px) {
  .pbly .article-layout__side { margin-right: var(--pbly-space-12); }
  .pbly .event-description .content-layout__side,.pbly .education-detail__side { margin-left: var(--pbly-space-8); }
}
@media (min-width: 641px) {
  .pbly .event-detail__visual h1,.pbly .event-detail__date { padding-inline: var(--pbly-space-12); }
}


/* css/pages/text-page.css */
.pbly:has(main > .text-page) { background: var(--pbly-color-surface-raised); }
.pbly .text-page { padding-block: var(--pbly-space-20); background: var(--pbly-color-surface-raised); border-bottom: 1px solid var(--pbly-color-border-default); }
.pbly main > .text-page:first-child { padding-top: var(--pbly-space-20); }
.pbly main:has(> .text-page) + .site-footer { margin-top: 0; }
.pbly .text-page__content { max-width: var(--pbly-layout-wrapper-narrow); margin-inline: auto; }
.pbly .text-page__breadcrumbs { margin-bottom: var(--pbly-space-8); font-size: var(--pbly-font-size-sm); line-height: var(--pbly-font-line-height-compact); color: var(--pbly-color-text-soft); }
.pbly .text-page__breadcrumbs ol { display: flex; flex-wrap: wrap; gap: var(--pbly-space-2); list-style: none; padding: 0; margin: 0; }
.pbly .text-page__breadcrumbs li { display: inline-flex; align-items: baseline; gap: var(--pbly-space-2); min-width: 0; }
.pbly .text-page__breadcrumbs a { text-decoration: underline; text-underline-offset: var(--pbly-space-0-5); }
.pbly .text-page__header { margin-bottom: var(--pbly-space-12); }
.pbly .text-page__header::after { content: ""; display: block; width: var(--pbly-space-12); height: var(--pbly-space-1); margin-top: var(--pbly-space-6); background: var(--pbly-color-border-accent); }
.pbly .text-page__copy { font-size: var(--pbly-font-size-base); line-height: var(--pbly-font-line-height-body); }
.pbly .text-page__copy h2 { margin-block: var(--pbly-space-12) var(--pbly-space-4); font-size: var(--pbly-text-heading-md-font-size); line-height: var(--pbly-text-heading-md-line-height); }
.pbly .text-page__copy h3 { margin-block: var(--pbly-space-8) var(--pbly-space-3); font-size: var(--pbly-font-size-subheading); line-height: var(--pbly-font-line-height-compact); }
.pbly .text-page__copy :where(p,ul,ol,blockquote) { max-width: none; }
.pbly .text-page__copy :where(p,ul,ol) { margin-bottom: var(--pbly-space-6); }
.pbly .text-page__copy > :first-child { margin-top: 0; }
.pbly .text-page__copy li + li { margin-top: var(--pbly-space-2); }
.pbly .text-page__copy .text-page__meta { font-size: var(--pbly-font-size-sm); color: var(--pbly-color-text-soft); }
.pbly .text-page__copy .legal-members { text-transform: none; }
.pbly .text-page__copy .legal-members li { margin-top: 0; }
.pbly .text-page__copy > :last-child { margin-bottom: 0; }

@media (max-width: 640px) {
  .pbly .text-page > .wrapper { width: calc(100% - 2 * var(--pbly-layout-wrapper-band-gutter)); }
  .pbly .text-page { padding-block: var(--pbly-space-12); }
  .pbly main > .text-page:first-child { padding-top: var(--pbly-space-12); }
  .pbly .text-page__header { margin-bottom: var(--pbly-space-8); }
  .pbly .text-page__breadcrumbs { margin-bottom: var(--pbly-space-6); }
  .pbly .text-page__copy h2 { margin-top: var(--pbly-space-8); }
}



/* css/pages/about.css */
.pbly .about-page { padding-block: var(--pbly-space-20); }
.pbly .about-hero,.pbly .about-purpose { background: var(--pbly-color-surface-raised); }
.pbly main > .about-hero:first-child { padding-top: var(--pbly-space-20); }
.pbly .about-hero__layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); align-items: end; gap: var(--pbly-space-16); margin-bottom: var(--pbly-space-16); }
.pbly .about-hero__layout .section-header { margin: 0; align-self: start; }
.pbly .about-hero__title-continuation { display: block; color: var(--pbly-color-text-muted); }
.pbly .about-hero__intro { padding-top: var(--pbly-space-8); }
.pbly .about-hero__intro .about__copy { margin: 0; font-size: var(--pbly-font-size-base); }
.pbly .about-hero__gallery { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: var(--pbly-layout-grid-gap); }
.pbly .about-hero__gallery figure { position: relative; min-width: 0; margin: 0; overflow: hidden; }
.pbly .about-hero__group { aspect-ratio: 2 / 1; }
.pbly .about-hero__gallery img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.pbly .about-hero__group img { object-position: center 35%; }
.pbly .about-hero__portrait img { object-position: center 45%; }
.pbly .about-page__split { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); gap: var(--pbly-space-16); align-items: start; }
.pbly .about-page__split > .section-header { margin: 0; }
.pbly .about-page__facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--pbly-space-8); margin: var(--pbly-space-12) 0 0; padding-top: var(--pbly-space-8); border-top: 1px solid var(--pbly-color-border-default); }
.pbly .about-page__facts > div { display: flex; flex-direction: column-reverse; gap: var(--pbly-space-2); }
.pbly .about-page__facts dt { font-size: var(--pbly-font-size-sm); color: var(--pbly-color-text-soft); }
.pbly .about-page__facts dd { font-size: var(--pbly-font-size-stat); line-height: var(--pbly-font-line-height-tight); font-weight: var(--pbly-font-weight-bold); margin: 0; }
.pbly .about-page__copy.prose :where(p,ul,ol) { max-width: var(--pbly-layout-measure-normal); }
.pbly .about-page__copy p { margin-bottom: var(--pbly-space-6); }
.pbly .about-page__copy > :last-child { margin-bottom: 0; }
.pbly .about-achievements .achievement-grid { grid-template-columns: minmax(0, 1fr); gap: var(--pbly-space-6); }
.pbly .about-achievements .achievement { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: var(--pbly-space-12); padding: var(--pbly-space-8); border-top: 0; border-left: var(--pbly-space-1) solid var(--pbly-color-border-accent); box-shadow: var(--pbly-shadow-sm); }
.pbly .about-achievements .achievement h3 { font-size: var(--pbly-font-size-md); line-height: var(--pbly-text-heading-card-line-height); margin: 0; }
.pbly .about-page[id] { scroll-margin-top: calc(var(--pbly-space-20) + var(--pbly-space-6)); }

@media (max-width: 1200px) {
  .pbly .about-hero__layout { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: var(--pbly-space-8); }
  .pbly .about-page__split { gap: var(--pbly-space-8); }
  .pbly .about-achievements .achievement { gap: var(--pbly-space-8); }
}

@media (max-width: 640px) {
  .pbly .about-page { padding-block: var(--pbly-space-12); }
  .pbly main > .about-hero:first-child { padding-top: var(--pbly-space-12); }
  .pbly .about-page > .wrapper { width: calc(100% - 2 * var(--pbly-layout-wrapper-band-gutter)); }
  .pbly .about-hero__layout,.pbly .about-page__split { grid-template-columns: minmax(0, 1fr); gap: var(--pbly-space-8); }
  .pbly .about-hero__layout { margin-bottom: var(--pbly-space-8); }
  .pbly .about-hero__intro { padding-top: 0; }
  .pbly .about-hero__gallery { grid-template-columns: minmax(0, 1fr); gap: var(--pbly-layout-grid-compact-gap); }
  .pbly .about-hero__gallery figure { aspect-ratio: 4 / 3; }
  .pbly .about-page__facts { margin-top: var(--pbly-space-8); padding-top: var(--pbly-space-6); gap: var(--pbly-space-6); }
  .pbly .about-achievements .achievement { grid-template-columns: minmax(0, 1fr); padding: var(--pbly-layout-card-mobile-padding); gap: var(--pbly-space-5); }
}

.pbly .about-hero h1.section-header__title { font-size: var(--pbly-font-size-display); }

@media (min-width: 1201px) {
  .pbly .about-purpose .about-page__split { column-gap: calc(2 * var(--pbly-space-16)); }
}

.pbly .about-purpose .about-page__copy p:last-of-type { margin-bottom: 0; }
.pbly .about-purpose .about-page__copy > .pbly-btn { margin-top: var(--pbly-space-12); }
.pbly .about-achievements .achievement p { color: var(--pbly-color-text-muted); }
.pbly .about-purpose { padding-bottom: calc(2 * var(--pbly-space-16)); }
@media (max-width: 640px) {
  .pbly .about-purpose { padding-bottom: var(--pbly-space-16); }
}

@media (min-width: 641px) {
  .pbly :is(.about-purpose,.about-achievements,.about-join) h2.section-header__title { font-size: var(--pbly-font-size-2xl); }
}

/* Member benefits */
.pbly .about-join { padding-bottom: calc(2 * var(--pbly-space-16)); background: var(--pbly-color-surface-raised); }
.pbly .about-join .section-header { margin: 0; }
.pbly .about-join .benefit-grid { margin-top: var(--pbly-space-16); }
@media (max-width: 640px) {
  .pbly .about-join { padding-bottom: var(--pbly-space-16); }
  .pbly .about-join .benefit-grid { margin-top: var(--pbly-space-8); }
}


/* css/pages/contact.css */
.pbly .contact-page { padding-block: var(--pbly-space-20); }
.pbly main > .contact-intro:first-child { padding-top: var(--pbly-space-20); }
.pbly :is(.contact-intro,.contact-registration) { background: var(--pbly-color-background); }
.pbly .contact-membership { background: var(--pbly-color-surface-raised); }
.pbly .contact-membership .benefit-grid { margin-top: var(--pbly-space-12); }
.pbly :is(.contact-membership,.contact-registration) { padding-block: calc(2 * var(--pbly-space-16)); }
.pbly .contact-page .section-header { margin: 0; }
.pbly .contact-intro__layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: var(--pbly-space-16); align-items: start; }
.pbly .contact-intro__main .contact-options { margin-top: var(--pbly-space-16); }
.pbly .contact-intro__lead { margin-top: var(--pbly-space-6); max-width: var(--pbly-layout-measure-normal); }
.pbly :is(.contact-intro__lead,.contact-page__copy,.contact-registration__intro > p) { color: var(--pbly-color-text-muted); }
.pbly .contact-options__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--pbly-space-8); margin: 0; }
.pbly .contact-options__list > div { border-top: 1px solid var(--pbly-color-border-default); padding-top: var(--pbly-space-6); min-width: 0; }
.pbly .contact-options__list > div:last-child { grid-column: 1 / -1; }
.pbly .contact-options dt { font-size: var(--pbly-font-size-sm); color: var(--pbly-color-text-soft); margin-bottom: var(--pbly-space-3); }
.pbly .contact-options dd { margin: 0; }
.pbly .contact-options address { font-style: normal; color: var(--pbly-color-text-primary); }
.pbly .contact-options a { overflow-wrap: anywhere; font-size: var(--pbly-font-size-md); font-weight: var(--pbly-font-weight-bold); }
.pbly .contact-options a:hover { color: var(--pbly-color-link-hover); }
.pbly .contact-page__split { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); align-items: start; gap: var(--pbly-space-16); }
.pbly .contact-page__copy p { max-width: var(--pbly-layout-measure-normal); }
.pbly .contact-registration { scroll-margin-top: calc(var(--pbly-space-20) + var(--pbly-space-6)); }
.pbly .contact-registration .contact-registration__intro h2.section-header__title { font-size: var(--pbly-font-size-3xl); }
.pbly .contact-registration__intro > p { margin-top: var(--pbly-space-6); }
.pbly .contact-registration__steps { display: grid; gap: var(--pbly-space-6); counter-reset: membership-step; list-style: none; margin: var(--pbly-space-12) 0 0; padding: 0; }
.pbly .contact-registration__steps li { position: relative; padding: var(--pbly-space-6) 0 0 var(--pbly-space-10); border-top: 1px solid var(--pbly-color-border-default); counter-increment: membership-step; }
.pbly .contact-registration__steps li::before { content: "0" counter(membership-step); position: absolute; left: 0; color: var(--pbly-color-link-default); font-size: var(--pbly-font-size-md); font-weight: var(--pbly-font-weight-bold); }
.pbly .contact-registration__steps h3 { font-size: var(--pbly-font-size-md); margin-bottom: var(--pbly-space-3); }
.pbly .contact-registration__steps p { color: var(--pbly-color-text-muted); font-size: var(--pbly-font-size-sm); }
.pbly .registration-form { box-shadow: var(--pbly-shadow-sm); min-width: 0; padding: var(--pbly-space-10); border-top: var(--pbly-space-1) solid var(--pbly-color-border-accent); background: var(--pbly-color-surface-raised); }
.pbly .registration-form__header { margin-bottom: var(--pbly-space-8); }
.pbly .registration-form__header h3 { font-size: var(--pbly-font-size-lg); margin-bottom: var(--pbly-space-2); }
.pbly :is(.registration-form__header p,.registration-form__hint,.registration-form__actions p) { font-size: var(--pbly-font-size-sm); color: var(--pbly-color-text-muted); }
.pbly .registration-form__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--pbly-space-6); }
.pbly .registration-form__field { min-width: 0; }
.pbly .registration-form__field--full { grid-column: 1 / -1; }
.pbly .registration-form__field label { display: block; margin-bottom: var(--pbly-space-2); font-size: var(--pbly-font-size-sm); font-weight: var(--pbly-font-weight-semibold); }
.pbly .registration-form__field label span { font-weight: var(--pbly-font-weight-medium); color: var(--pbly-color-text-muted); }
.pbly .registration-form :is(input:not([type="checkbox"]),textarea) { display: block; width: 100%; min-width: 0; min-height: var(--pbly-button-height); border: 1px solid var(--pbly-color-border-field); border-radius: var(--pbly-radius-none); padding: var(--pbly-space-3); background: var(--pbly-color-surface-raised); color: var(--pbly-color-text-primary); font: inherit; }
.pbly .registration-form textarea { resize: vertical; line-height: var(--pbly-font-line-height-body); }
.pbly .registration-form :is(input,textarea):focus-visible { outline: 2px solid var(--pbly-color-border-accent); outline-offset: var(--pbly-space-1); }
.pbly .registration-form__hint { margin-top: var(--pbly-space-2); }
.pbly .registration-form__privacy { display: flex; align-items: flex-start; gap: var(--pbly-space-3); margin-top: var(--pbly-space-8); font-size: var(--pbly-font-size-sm); line-height: var(--pbly-font-line-height-body); }
.pbly .registration-form__privacy input { flex: 0 0 auto; width: var(--pbly-space-5); height: var(--pbly-space-5); margin: calc((var(--pbly-font-size-sm) * var(--pbly-font-line-height-body) - var(--pbly-space-5)) / 2) 0 0; }
.pbly .registration-form__privacy input:checked { border-color: var(--pbly-color-action-membership); background: var(--pbly-color-action-membership); }
.pbly .registration-form a { color: var(--pbly-color-link-default); text-decoration: underline; overflow-wrap: anywhere; }
.pbly .registration-form a:hover { color: var(--pbly-color-link-hover); }
.pbly .registration-form__actions { margin-top: var(--pbly-space-8); }
.pbly .registration-form__actions p { margin-top: var(--pbly-space-4); }
.pbly .contact-faq { margin-top: calc(2 * var(--pbly-space-16)); }
.pbly .contact-faq .section-header__intro { margin-top: var(--pbly-space-4); color: var(--pbly-color-text-muted); }
.pbly:has(.contact-intro) .site-footer { margin-top: 0; }
.pbly .contact-intro h1.section-header__title { font-size: var(--pbly-font-size-display); }
@media (min-width: 1201px) {
  .pbly .contact-registration__intro { margin-right: var(--pbly-space-16); }
}
@media (min-width: 641px) {
  .pbly .contact-page h2.section-header__title { font-size: var(--pbly-font-size-2xl); }
}
@media (max-width: 1200px) {
  .pbly :is(.contact-intro__layout,.contact-page__split) { gap: var(--pbly-space-8); }
  .pbly .contact-intro__layout { grid-template-columns: minmax(0, 1fr); gap: var(--pbly-space-12); }
  .pbly .contact-registration > .contact-page__split { grid-template-columns: minmax(0, 1fr); gap: var(--pbly-space-12); }
  .pbly .contact-registration__steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .pbly .contact-page { padding-block: var(--pbly-space-12); }
  .pbly .contact-membership .benefit-grid { margin-top: var(--pbly-space-8); }
  .pbly :is(.contact-membership,.contact-registration) { padding-block: var(--pbly-space-16); }
  .pbly .contact-registration .contact-registration__intro h2.section-header__title { font-size: var(--pbly-text-heading-mobile-page-font-size); }
  .pbly main > .contact-intro:first-child { padding-top: var(--pbly-space-12); }
  .pbly .contact-page > .wrapper { width: calc(100% - 2 * var(--pbly-layout-wrapper-band-gutter)); }
  .pbly :is(.contact-intro__layout,.contact-page__split,.contact-registration__steps,.registration-form__fields) { grid-template-columns: minmax(0, 1fr); }
  .pbly .contact-options__list { grid-template-columns: minmax(0, 1fr); gap: var(--pbly-space-6); }
  .pbly .contact-registration__steps { margin-top: var(--pbly-space-8); }
  .pbly .registration-form { padding: var(--pbly-space-8) var(--pbly-space-6); }
  .pbly .contact-faq { margin-top: calc(var(--pbly-space-16) + var(--pbly-space-8)); }
  .pbly .contact-faq .home-about__faq summary { font-size: var(--pbly-font-size-subheading); }
  .pbly .contact-faq .home-about__faq-icon { margin-top: calc((var(--pbly-font-size-subheading) * var(--pbly-font-line-height-compact) - var(--pbly-space-4)) / 2); }
}


/* Shared mobile typography roles. */
@media (max-width: 640px) {
  .pbly :is(h1:not(.feature-card__title):not(.event-detail__visual > h1),h1.section-header__title,.text-page__header h1.section-header__title) {
    font-size: var(--pbly-text-heading-mobile-page-font-size);
    line-height: var(--pbly-text-heading-mobile-page-line-height);
  }
  .pbly main :is(.about-hero,.contact-intro) h1.section-header__title { font-size: var(--pbly-font-size-display-mobile); }
  .pbly :is(h2.section-header__title,.home-about__title,.text-page__copy h2) {
    font-size: var(--pbly-text-heading-mobile-section-font-size);
    line-height: var(--pbly-text-heading-mobile-section-line-height);
  }
  .pbly :is(.feature-card__title,.event-detail__visual h1) {
    font-size: var(--pbly-text-heading-mobile-feature-font-size);
    line-height: var(--pbly-text-heading-mobile-feature-line-height);
  }
  .pbly :is(.news-card__title,.school-card__title,.event-card__body h2,.about-achievements .achievement h3,.contact-card h3) {
    font-size: var(--pbly-text-heading-mobile-card-font-size);
    line-height: var(--pbly-text-heading-mobile-card-line-height);
  }
}

@media (max-width: 640px) {
  .pbly .contact-cta__title { font-size: var(--pbly-text-heading-mobile-page-font-size); line-height: var(--pbly-text-heading-mobile-page-line-height); }
}


/* css/wordpress.css */
/* WordPress integration: editor-controlled colours, admin bar, core content classes. */

/* Category colour from the JetEngine term field "Culoare Categorie"; the slug classes remain the fallback. */
.pbly .category[style*="--att-category-color"] > span { background: var(--att-category-color); }

/* Sticky header below the logged-in admin bar. */
.pbly.admin-bar .site-header { top: var(--wp-admin--admin-bar--height, 0px); /* exception: WordPress admin bar height */ }
@media (max-width: 600px) { /* exception: WordPress core admin bar breakpoint */
  .pbly.admin-bar .site-header { top: 0; }
}

/* Core helper and content classes produced by WordPress and the classic editor. */
.pbly .screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; /* exception: WordPress screen-reader-text pattern */ }
.pbly .prose .aligncenter { display: block; margin-inline: auto; }
.pbly .prose .alignleft { float: left; margin: 0 var(--pbly-space-6) var(--pbly-space-4) 0; }
.pbly .prose .alignright { float: right; margin: 0 0 var(--pbly-space-4) var(--pbly-space-6); }
.pbly .prose .wp-caption { max-width: 100%; }
.pbly .prose .wp-caption-text,
.pbly .prose figcaption { margin-top: var(--pbly-space-2); color: var(--pbly-color-text-soft); font-size: var(--pbly-font-size-sm); }
.pbly .prose img { max-width: 100%; height: auto; }

@media (max-width: 640px) {
  .pbly .prose .alignleft,
  .pbly .prose .alignright { float: none; margin-inline: 0; }
}

/* Touch and accordion polish (see js/main.js "Accordions"). */
.pbly { -webkit-tap-highlight-color: transparent; }
.pbly .mobile-menu__group summary svg { transition: transform 300ms ease; /* exception: matches the FAQ accordion duration. */ }
.pbly .home-about__faq[data-accordion="closing"] .home-about__faq-icon,
.pbly .mobile-menu__group[data-accordion="closing"] summary svg { transform: none; }
@media (prefers-reduced-motion: reduce) {
  .pbly .mobile-menu__group summary svg { transition: none; }
}

/* The menu dialog takes focus when opened by tap, so no control shows a focus ring. */
.pbly .mobile-menu:focus { outline: none; }

/* Homepage events: second group label (past events after upcoming ones). */
.pbly .home-events + .section-label { margin-top: var(--pbly-space-10); }

/* "Vezi mai multe" while the next articles load (js/main.js). */
.pbly .load-more[aria-busy="true"] { cursor: progress; pointer-events: none; }
.pbly .load-more[aria-busy="true"]::before { content: ""; flex-shrink: 0; width: 1em; height: 1em; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: att-spin 700ms linear infinite; }
@keyframes att-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .pbly .load-more[aria-busy="true"]::before { animation-duration: 2s; }
}

/* Evenimente: past events directly under the title when there are no upcoming events. */
.pbly .section-header + .events__past { margin-top: 0; }

/* Institution cards: specialization flush left; titles keep two lines of space in multi-column grids so labels line up. */
.pbly .school-card__speciality { padding-left: 0; }
@media (min-width: 641px) {
  .pbly .school-card__title { min-height: calc(2em * var(--pbly-text-heading-card-line-height)); }
}
