/* CMS-managed menus, dropdowns, and shared resource components.
   Native <details> submenus work with or without JavaScript, including iOS Safari. */
.site-page #nav .nav-menu{min-width:0;justify-content:flex-end}
.site-page .brand{min-width:0;max-width:calc(100% - 60px)}
.site-page .brand-name{white-space:normal;overflow-wrap:anywhere;min-width:0}
.site-page .brand-logo,.site-page .foot-logo{flex-shrink:0}
.site-page #nav .nav-menu a{white-space:nowrap;text-align:start}

/* Desktop & Mobile Progressive Disclosure Menu Groups */
.site-page .nav-group{
  display:inline-flex;
  align-items:center;
  position:relative;
  min-width:0;
  border-radius:var(--site-radius-sm);
}
.site-page #nav .nav-group>.nav-parent-link{
  padding-inline-end:6px;
  border-top-right-radius:0;
  border-bottom-right-radius:0;
}
.site-page .nav-group details{
  position:relative;
  display:inline-flex;
  align-items:center;
}
.site-page .nav-group summary{
  list-style:none;
  cursor:pointer;
  min-height:44px;
  min-width:34px;
  padding:8px 8px 8px 4px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  border-radius:0 var(--site-radius-sm) var(--site-radius-sm) 0;
  font:500 0.85rem/1.4 var(--site-sans);
  color:var(--site-charcoal);
  touch-action:manipulation;
  user-select:none;
  transition:background-color .15s ease,color .15s ease;
}
.site-page .nav-group summary::-webkit-details-marker{display:none}
.site-page .nav-group summary:hover,
.site-page .nav-group details[open]>summary{
  color:var(--site-primary);
  background:var(--site-soft);
}
.site-page #nav .nav-group .nav-toggle-text{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.site-page .nav-group .nav-chevron{
  width:14px;
  height:14px;
  transition:transform .2s ease;
  flex-shrink:0;
}
.site-page .nav-group details[open]>summary .nav-chevron{
  transform:rotate(180deg);
}
.site-page #nav .nav-children{
  position:absolute;
  top:calc(100% + 6px);
  right:0;
  left:auto;
  z-index:1010;
  width:min(280px,88vw);
  padding:12px;
  background:var(--site-surface);
  border:1px solid var(--site-line);
  border-top:2px solid var(--site-gold-bright);
  border-radius:var(--site-radius);
  box-shadow:var(--site-shadow-lg);
  display:flex;
  flex-direction:column;
  gap:2px;
}
.site-page #nav .nav-group:first-child .nav-children,
.site-page #nav .nav-group:nth-child(2) .nav-children{
  left:0;
  right:auto;
}
.site-page #nav .nav-children a{
  max-width:none;
  width:100%;
  display:flex;
  justify-content:flex-start;
  padding:10px 14px;
  min-height:44px;
  font-size:0.92rem;
  white-space:normal;
  border-radius:8px;
}
.site-page #nav .nav-children a:hover,
.site-page #nav .nav-children a[aria-current="page"]{
  background:var(--site-soft-gold);
  color:var(--site-navy);
}

/* Footer Menu Groups */
.site-page .foot-links .nav-group{display:contents}
.site-page .foot-links .nav-group details{display:contents}
.site-page .foot-links .nav-group summary{display:none}
.site-page .foot-links .nav-children{display:contents}

/* Shared Media & Resource Cards */
.site-page .resource-image{max-width:100%;height:auto;border-radius:var(--site-radius);box-shadow:var(--site-shadow)}
.site-page figcaption{font-size:0.875rem;color:var(--site-muted);margin-top:8px}
.preview-notice{padding:16px 24px;background:var(--site-soft-gold);border-bottom:1px solid var(--site-gold-line);font-size:1rem;color:var(--site-ink)}

/* Continue Exploring Navigation Block */
.site-page .core-next{
  margin-block:56px 24px;
  padding:var(--site-card-space);
  background:var(--site-surface-warm);
  border:1px solid var(--site-line);
  border-top:3px solid var(--site-gold-bright);
  border-radius:var(--site-radius-lg);
  box-shadow:var(--site-shadow);
}
.site-page .core-next h2{
  font:500 clamp(1.6rem,3vw,2.1rem)/1.2 var(--site-serif);
  color:var(--site-navy);
  margin:0 0 20px;
}
.site-page .core-next ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));
  gap:10px 20px;
}
.site-page .core-next a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:46px;
  padding:10px 14px;
  background:var(--site-paper);
  border:1px solid var(--site-line);
  border-radius:var(--site-radius-sm);
  color:var(--site-ink);
  font:500 0.94rem/1.4 var(--site-sans);
  text-decoration:none;
  overflow-wrap:anywhere;
  transition:border-color .15s ease,background-color .15s ease,color .15s ease;
}
.site-page .core-next a::after{
  content:'→';
  color:var(--site-gold);
  font-weight:600;
  flex-shrink:0;
}
.site-page .core-next a:hover{
  border-color:var(--site-gold-bright);
  background:var(--site-soft-gold);
  color:var(--site-navy);
}

/* Reading Tools Toolbar */
.reading-tools{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-block:20px 28px;
}
.reading-tools[hidden]{display:none!important}
.reading-tools button{
  min-height:44px;
  padding:8px 16px;
  border:1px solid var(--site-line-strong);
  background:var(--site-surface);
  color:var(--site-ink);
  border-radius:var(--site-radius-sm);
  font:500 0.875rem/1.4 var(--site-sans);
  cursor:pointer;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease;
}
.reading-tools button:hover{
  border-color:var(--site-primary);
  color:var(--site-primary);
  background:var(--site-soft);
}
.reading-tools button[aria-pressed="true"]{
  background:var(--site-navy);
  border-color:var(--site-navy);
  color:#ffffff;
}
.reading-large main p,.reading-large main li{font-size:1.25rem;line-height:1.85}

/* Pathway Studies Section */
.pathway-studies{margin-block:48px}
.pathway-studies>h2{
  font:500 clamp(1.75rem,3.4vw,2.35rem)/1.2 var(--site-serif);
  color:var(--site-navy);
  margin:0 0 24px;
}
.resource-cards{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));
  gap:22px;
}
.resource-cards article{
  padding:var(--site-card-space);
  border:1px solid var(--site-line);
  border-top:3px solid var(--site-gold-bright);
  border-radius:var(--site-radius);
  background:var(--site-surface);
  box-shadow:var(--site-shadow);
  min-width:0;
  display:flex;
  flex-direction:column;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.resource-cards article:hover{
  transform:translateY(-2px);
  box-shadow:var(--site-shadow-lg);
  border-color:var(--site-gold-line);
}
.resource-cards h3{
  font:500 1.45rem/1.3 var(--site-serif);
  margin:0 0 12px;
  overflow-wrap:anywhere;
}
.resource-cards h3 a{
  display:inline-block;
  padding-block:4px;
  min-height:44px;
  color:var(--site-navy);
  text-decoration:none;
}
.resource-cards h3 a:hover{
  color:var(--site-primary);
  text-decoration:underline;
  text-underline-offset:4px;
}
.resource-cards p{
  font-size:0.96rem;
  line-height:1.7;
  color:var(--site-muted);
  margin:0 0 14px;
}
.resource-reference{
  margin-top:auto!important;
  margin-bottom:0!important;
  padding-top:12px;
  border-top:1px solid var(--site-line);
  font:600 0.84rem/1.5 var(--site-sans);
  color:var(--site-gold)!important;
}

/* Mobile Navigation Drawer Adjustments */
@media(max-width:1120px){
  .site-page #nav .nav-menu{justify-content:flex-start}
  .site-page #nav .nav-group{
    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;
    width:100%;
    border-bottom:1px solid rgba(227,223,214,0.6);
    border-radius:0;
  }
  .site-page #nav .nav-group>.nav-parent-link{
    width:100%;
    border-radius:var(--site-radius-sm);
  }
  .site-page #nav .nav-group details{
    display:contents;
  }
  .site-page #nav .nav-group summary{
    grid-column:2;
    min-width:44px;
    min-height:48px;
    padding:10px 12px;
    border-radius:var(--site-radius-sm);
    color:var(--site-primary);
    font-weight:600;
  }
  .site-page #nav .nav-group .nav-toggle-text{
    position:static;
    width:auto;
    height:auto;
    margin:0;
    overflow:visible;
    clip:auto;
    font-size:0.8rem;
  }
  .site-page #nav .nav-children{
    grid-column:1/-1;
    position:static;
    width:100%;
    padding:6px 0 10px 16px;
    margin:0 0 6px;
    background:var(--site-paper);
    border:0;
    border-left:2px solid var(--site-gold-bright);
    border-radius:0 var(--site-radius-sm) var(--site-radius-sm) 0;
    box-shadow:none;
  }
  .site-page #nav .nav-children a{
    padding:10px 14px;
    min-height:46px;
    font-size:0.95rem;
  }
  .site-page #nav .nav-menu a{max-width:none;white-space:normal}
}

@media print{
  .site-page #nav,.site-page footer,.skip-link,.reading-tools,.preview-notice,.breadcrumbs,.core-next{display:none!important}
  .site-page main{width:auto;max-width:none;padding:0}
  .site-page{background:white;color:black}
  .site-page article,.site-page section{break-inside:auto}
  .resource-cards{display:block}
  .resource-cards article{break-inside:avoid}
  a{color:black;text-decoration:underline}
  h1,h2,h3{break-after:avoid}
}
