/*
Theme Name: National Disc Golf Museum
Template: twentytwentyfive
Version: 2.0.2
Description: NDGM implementation of the museum web style standard for Twenty Twenty-Five.
*/

@font-face {
  font-family: "Source Sans 3";
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url("fonts/source-sans-3-latin.woff2") format("woff2");
}

@font-face {
  font-family: "Source Sans 3";
  font-style: italic;
  font-weight: 200 900;
  font-display: swap;
  src: url("fonts/source-sans-3-latin-italic.woff2") format("woff2");
}

:root {
  --museum-font: "Source Sans 3", "Source Sans Pro", Arial, sans-serif;
  --museum-ink: #111111;
  --museum-muted: #5f6368;
  --museum-paper: #ffffff;
  --museum-soft: #f7f7f5;
  --museum-line: #d9d9d4;
  --museum-highlight: #ffee58;
  --museum-highlight-dark: #dfcb00;
  --museum-link: #503aa8;
  --museum-link-dark: #382878;
  --museum-content: 45rem;
  --museum-wide: 83.75rem;
  --museum-radius: 3px;
}

body, button, input, select, optgroup, textarea {
  color: var(--museum-ink);
  font-family: var(--museum-font);
  font-size: clamp(1rem, .96rem + .2vw, 1.125rem);
  font-weight: 400;
  line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
  color: var(--museum-ink);
  font-family: var(--museum-font);
  font-weight: 600;
  letter-spacing: -.01em;
  line-height: 1.15;
}

.wp-site-blocks h1,
.wp-site-blocks h2,
.wp-site-blocks h3 {
  font-family: var(--museum-font) !important;
  font-weight: 600 !important;
  letter-spacing: -.01em !important;
  line-height: 1.15 !important;
}
.wp-site-blocks h1 { font-size: clamp(2.15rem, 1.8rem + 1.5vw, 3rem) !important; }
.wp-site-blocks h2 { font-size: clamp(1.75rem, 1.55rem + .8vw, 2.25rem) !important; }
.wp-site-blocks h3 { font-size: clamp(1.35rem, 1.25rem + .45vw, 1.7rem) !important; }

a { text-underline-offset: .16em; }
a:hover { text-decoration-thickness: 2px; }

button, .button, input[type="button"], input[type="reset"], input[type="submit"],
.wp-element-button, .wp-block-button__link {
  border-radius: var(--museum-radius);
  font-family: var(--museum-font);
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
}

:focus-visible { outline: 3px solid var(--museum-link); outline-offset: 3px; }

.has-museum-accent-color { color: var(--museum-link) !important; }
.has-museum-accent-background-color { background-color: var(--museum-link) !important; }

.has-museum-black-background-color,
.has-museum-black-background-color h1,
.has-museum-black-background-color h2,
.has-museum-black-background-color h3,
.has-museum-black-background-color h4,
.has-museum-black-background-color h5,
.has-museum-black-background-color h6 { color: var(--museum-paper); }

.wp-site-blocks { background: var(--museum-paper); }
.wp-site-blocks > header { border-bottom: 1px solid var(--museum-line); }
.wp-site-blocks > header,
.wp-site-blocks > header .wp-block-navigation { font-family: var(--museum-font); }
.wp-site-blocks > header .wp-block-site-title { font-weight: 600; letter-spacing: -.01em; }
.museum-site-header { background: var(--museum-paper); }
.museum-utility-bar { border-bottom: 1px solid var(--museum-line); }
.museum-utility-bar .wp-block-group { gap: 1.25rem; }
.museum-utility-bar p { margin: 0; }
.museum-utility-bar a { color: var(--museum-ink); font-weight: 600; text-decoration: none; }
.museum-utility-bar a:hover,
.museum-utility-bar a:focus { color: var(--museum-link); text-decoration: underline; }
.museum-site-header .wp-block-navigation-item__content { font-weight: 600; }
.museum-site-header .wp-block-site-title { font-size: clamp(1.2rem, 1.05rem + .55vw, 1.6rem); line-height: 1.05; }
.museum-site-header .wp-block-navigation__responsive-container.is-menu-open { padding: 1.5rem; }
.wp-block-post-content > .wp-block-cover.alignfull:first-child { min-height: min(640px, 78vh) !important; }
.wp-site-blocks > footer { background: #111111; color: #ffffff; }
.wp-site-blocks > footer a { color: inherit; }

.museum-topic-grid { align-items: start; display: grid !important; gap: clamp(1.5rem, 2.5vw, 2.25rem) clamp(1rem, 2vw, 1.75rem); grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
.museum-topic-card { min-width: 0; }
.museum-topic-card .wp-block-image { margin-bottom: 1rem; overflow: hidden; }
.museum-topic-card .wp-block-image img { transition: transform .25s ease; width: 100%; }
.museum-topic-card .wp-block-image a:hover img { transform: scale(1.025); }
.museum-topic-card__content { gap: .45rem; }
.museum-topic-card__content > * { margin-block: 0; }
.museum-topic-card__label { font-size: .78rem !important; font-weight: 700; letter-spacing: .09em; line-height: 1.2; }
.museum-topic-card__title { line-height: 1.15; }
.museum-topic-card__title a { text-decoration: none; }
.museum-topic-card__title a:hover { text-decoration: underline; }
.museum-topic-card__description { font-size: 1rem; line-height: 1.45; }

.museum-news-grid { gap: clamp(2rem, 3vw, 3rem) clamp(1.25rem, 2.25vw, 2rem); }
.museum-news-card { align-self: start; min-width: 0; }
.museum-news-card__image { margin-bottom: 1rem; overflow: hidden; }
.museum-news-card__image img { transition: transform .25s ease; }
.museum-news-card__image a:hover img { transform: scale(1.02); }
.museum-news-card__content { gap: .45rem; }
.museum-news-card__content > * { margin-block: 0; }
.museum-news-card__topic, .museum-story__topic { font-size: .78rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.museum-news-card__topic a, .museum-story__topic a { color: inherit; text-decoration: none; }
.museum-news-card__date, .museum-story__date { color: var(--museum-muted); font-size: .9rem; }
.has-museum-black-background-color .museum-story__date { color: #d9d9d4; }
.museum-news-card__title { line-height: 1.12; }
.museum-news-card__title a { text-decoration: none; }
.museum-news-card__title a:hover { text-decoration: underline; }
.museum-news-card__excerpt { font-size: 1rem; line-height: 1.45; }
.museum-news-card__excerpt .wp-block-post-excerpt__more-link { font-weight: 700; }
.museum-story__deck { font-size: clamp(1.15rem, 1.05rem + .45vw, 1.4rem); line-height: 1.5; max-width: 48rem; }
.museum-story__hero img { width: 100%; }
.museum-story__body { font-size: clamp(1.05rem, 1rem + .15vw, 1.15rem); }
.museum-story__body > * + * { margin-block-start: 1.35em; }

@media (max-width: 1000px) { .museum-topic-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (min-width: 1001px) { .museum-news-grid > li:first-child { grid-column: span 2; } }
@media (max-width: 600px) {
  body { font-size: 1rem; }
  .wp-site-blocks h1 { font-size: 2.15rem !important; }
  .museum-site-header .wp-block-site-title { font-size: 1.05rem; }
  .wp-block-post-content > .wp-block-cover.alignfull:first-child { min-height: 32rem !important; }
  .museum-utility-bar .wp-block-group { gap: .8rem; justify-content: flex-start; }
  .museum-utility-bar p { font-size: .8rem !important; }
  .museum-topic-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .museum-topic-card .wp-block-image { margin-bottom: .8rem; }
}
