.article-layout {
  width: min(920px, calc(100% - 48px));
  max-width: 920px;
  font-family: "Cormorant Garamond", Georgia, serif;
}
.article-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  color: #8b7658;
  font: 13px/1.2 Arial, sans-serif;
  letter-spacing: .09em;
}
.article-topline .back-link { margin: 0; }
.article-breadcrumbs { display:flex; align-items:center; flex-wrap:wrap; gap:7px; min-width:0; }
.article-breadcrumbs a { color:#725f48; text-decoration:none; }
.article-breadcrumbs a:hover { text-decoration:underline; text-underline-offset:3px; }
.article-header { margin: 34px 0 24px; }
.article-header h1 {
  max-width: 900px;
  margin: 0 0 25px;
  font-size: clamp(49px, 5.5vw, 78px);
  line-height: .98;
  letter-spacing: -.025em;
  overflow-wrap: anywhere;
}
.article-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 28px;
  padding: 13px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  color: #736b73;
  font: 14px/1.3 Arial, sans-serif;
}
.article-stats span,.article-stats a { text-decoration: none; }
.article-stats b { color: #332b36; font-weight: 600; }
.article-cover {
  display: block;
  width: 100%;
  max-height: 680px;
  object-fit: cover;
  border-radius: 7px;
  margin: 30px auto 42px;
}
.article-body {
  width: min(100%, 760px);
  margin: 0 auto;
  padding: 5px 0 20px;
  color: #211d24;
  font: 400 20px/1.75 Georgia, "Times New Roman", serif;
  letter-spacing: .002em;
  overflow-wrap: anywhere;
}
.article-body p,.article-body>span,.article-body>div { margin: 0 0 1.25em; }
.article-body>span { display: block; }
.article-body strong { color:#18141b; font-weight:700; }
.article-body h2 { margin: 1.65em 0 .55em; font:600 38px/1.12 "Cormorant Garamond",Georgia,serif; }
.article-body h3 { margin: 1.5em 0 .5em; font:600 30px/1.18 "Cormorant Garamond",Georgia,serif; }
.article-body h4,.article-body h5 { margin: 1.35em 0 .45em; font:600 25px/1.2 "Cormorant Garamond",Georgia,serif; }
.article-body ul,.article-body ol { margin: 1.45em 0 1.65em; padding:18px 24px 18px 52px; border:1px solid #e4d8c8; border-radius:9px; background:#f7f2eb; }
.article-body li { margin: .55em 0; padding-left: .25em; }
.article-body ol { list-style:none; counter-reset:article-item; padding-left:60px; }
.article-body ol>li { position:relative; counter-increment:article-item; }
.article-body ol>li:before { content:counter(article-item); position:absolute; left:-40px; top:.08em; display:grid; place-items:center; width:27px; height:27px; border:1px solid #9f8154; border-radius:50%; color:#6d512e; font:700 13px/1 Arial,sans-serif; }
.article-body ul>li::marker { color:#927247; }
.article-body blockquote {
  position:relative;
  margin: 1.8em 0;
  padding: 24px 28px 22px 58px;
  border-left: 3px solid #a98b5b;
  background: #f5f0e9;
  color: #3b333d;
  font:500 23px/1.55 "Cormorant Garamond",Georgia,serif;
}
.article-body blockquote:before { content:"“"; position:absolute; left:20px; top:10px; color:#a98b5b; font:48px/1 Georgia,serif; }
.article-body blockquote p,.article-body blockquote span { margin-bottom:.65em; }
.article-body .article-callout { margin:1.7em 0; padding:19px 23px; border-left:4px solid #9b7e50; border-radius:4px; background:#f2ebe1; }
.article-body .article-callout--tip { border-left-color:#68755f; background:#e8ece4; }
.article-body .article-callout strong { display:block; margin-bottom:5px; font:600 24px/1.2 "Cormorant Garamond",Georgia,serif; }
.article-body .article-callout p { margin:0; }
.article-body a { color: #654921; font-weight:500; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.article-body img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 30px auto;
  border-radius: 5px;
}
.article-body figure { margin: 32px 0; }
.article-body figcaption { margin-top: 8px; color: var(--muted); text-align: center; font-size: 16px; }
.article-body video,.article-body audio {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 30px auto;
  border-radius: 7px;
  background: #17141a;
}
.article-body video { aspect-ratio: 16/9; height: auto; }
.youtube-player { width:100%; margin:32px 0; border:1px solid #d7c9b8; border-radius:10px; overflow:hidden; background:#25202a; }
.youtube-player-start { display:grid; width:100%; min-height:360px; place-content:center; gap:8px; border:0; border-radius:0; color:#fff; background:radial-gradient(circle at 50% 42%,#5a4b59 0,#29232c 62%); text-align:center; }
.youtube-player-start>span { display:grid; place-items:center; width:70px; height:70px; margin:0 auto 6px; padding-left:5px; border:1px solid #d0af74; border-radius:50%; color:#e2c58f; font-size:25px; }
.youtube-player-start strong { color:#fff; font:600 29px/1.15 "Cormorant Garamond",Georgia,serif; }
.youtube-player-start small { color:#d8d0d7; font:14px/1.4 Arial,sans-serif; }
.youtube-player iframe { display:block; width:100%; aspect-ratio:16/9; border:0; background:#111; }
.youtube-player figcaption { margin:0; padding:10px 15px; background:#f5f0e9; text-align:right; font:13px/1.4 Arial,sans-serif; }
.youtube-player figcaption a { color:#604b31; }
.article-body table { display: block; width: 100%; max-width: 100%; overflow-x: auto; border-collapse: collapse; font-size: 18px; }
.article-body th,.article-body td { padding: .7rem; border: 1px solid var(--line); }
.article-body hr { margin: 2em 0; border: 0; border-top: 1px solid var(--line); }
.article-author-card {
  display: grid;
  grid-template-columns: 76px minmax(0,1fr) minmax(170px,220px);
  gap: 22px;
  align-items: center;
  margin: 42px 0 25px;
  padding: 25px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: linear-gradient(130deg,#fffdfa,#f4efe8);
}
.author-avatar {
  width: 76px;
  height: 76px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 50%;
  background: #302936;
  color: #d7bc8c;
  font-size: 34px;
}
.author-avatar img { width: 100%; height: 100%; object-fit: cover; }
.author-copy h2 { margin: 3px 0; font-size: 31px; }
.author-copy h2 a { text-decoration: none; }
.author-copy p { margin: 5px 0 0; color: var(--muted); font-size: 17px; line-height: 1.25; }
.author-links { display: grid; gap: 8px; }
.author-links a { display: flex; justify-content: space-between; gap: 12px; padding: 9px 12px; border: 1px solid #d7c8b6; border-radius: 5px; text-decoration: none; font: 14px Arial,sans-serif; }
.article-rating {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 25px;
  padding: 27px;
  margin: 20px 0 40px;
  border-radius: 8px;
  background: #2c2630;
  color: #f7f0e7;
}
.article-rating .eyebrow { color: #c7a975; }
.article-rating h2 { margin: 4px 0; font-size: 35px; }
.article-rating p { margin: 4px 0; color: #d7cfd5; }
.article-rating fieldset { border: 0; padding: 0; margin: 0; text-align: right; }
.rating-stars { display: flex; flex-direction: row-reverse; justify-content: flex-start; gap: 3px; margin-bottom: 8px; }
.rating-stars input { position: absolute; opacity: 0; pointer-events: none; }
.rating-stars label { cursor: pointer; color: #746a73; font-size: 34px; line-height: 1; }
.rating-stars input:checked~label,.rating-stars label:hover,.rating-stars label:hover~label { color: #d6b06c; }
.rating-stars input:focus-visible+label { outline: 2px solid #fff; outline-offset: 2px; }
.article-rating .button { border-color: #b99b68; background: transparent; }
.rating-login { text-align: right; }
.article-comments { margin-top: 45px; padding-top: 30px; border-top: 1px solid var(--line); }
.comments-heading h2 { margin: 5px 0 22px; font-size: 40px; }
.comments-heading h2 small { font-size: 19px; color: var(--muted); }
.article-comment { padding: 19px 22px; margin: 12px 0; background: #fff; border: 1px solid var(--line); border-radius: 7px; }
.article-comment-reply { margin-left: 55px; border-left: 3px solid #b2986a; }
.comment-author { display: flex; justify-content: space-between; gap: 20px; padding-bottom: 9px; margin-bottom: 12px; border-bottom: 1px solid var(--line); }
.comment-author time { font: 12px Arial,sans-serif; color: #8d858c; }
.comment-body { line-height: 1.55; overflow-wrap: anywhere; }
.comment-body p { margin: .4em 0; }
.article-meta { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.article-meta .back-link { margin-bottom: 0; }
.subcategories { margin-top: -12px; }
.content-directory>.lead,.events-page>.lead { margin-bottom:30px; }
.content-directory>.lead,.events-page>.lead { color:#39333b; font:400 20px/1.6 Georgia,"Times New Roman",serif; }
.knowledge-sections {
  display:flex;
  align-items:stretch;
  flex-wrap:wrap;
  gap:0;
  margin:4px 0 18px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.knowledge-sections a {
  padding:13px 17px 11px;
  border-bottom:2px solid transparent;
  color:#453b48;
  text-decoration:none;
  font:600 16px/1.35 Georgia,"Times New Roman",serif;
}
.knowledge-sections a:hover,.knowledge-sections a[aria-current="page"] { border-color:#a88756; color:#2d2431; }
.knowledge-subsections {
  display:flex;
  flex-wrap:wrap;
  gap:8px 10px;
  margin:0 0 28px;
  padding:15px 17px;
  border:1px solid #e2d7ca;
  border-radius:7px;
  background:#f5efe7;
}
.knowledge-subsection-group { display:flex; align-items:center; flex-wrap:wrap; gap:5px; }
.knowledge-subsection-group>a:first-child { color:#302733; font-weight:700; }
.knowledge-subsection-children { display:flex; flex-wrap:wrap; gap:5px; padding-left:0; }
.knowledge-subsection-children a { font-size:15px; color:#564b57; }
.knowledge-subsections a {
  padding:5px 11px;
  border:1px solid transparent;
  border-radius:4px;
  color:#453b47;
  text-decoration:none;
  font:600 16px/1.3 Georgia,"Times New Roman",serif;
}
.knowledge-subsections a:hover,.knowledge-subsections a[aria-current="page"] { border-color:#bda887; background:#fffaf3; color:#2e2632; }
.directory-selection { margin:12px 0 24px; }
.directory-selection h2 { margin:3px 0 0; color:#211b25; font-size:38px; font-weight:600; }
.article-card-grid,.event-card-grid { align-items:stretch; }
.article-card,.event-card {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:270px;
  border-color:#ded1c1;
  background:#e6d8c7;
}
.article-card-media {
  position:absolute;
  z-index:-2;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.52;
  filter:grayscale(.68) sepia(.8) saturate(.55) contrast(.82);
  transform:scale(1.015);
}
.article-card-wash {
  position:absolute;
  z-index:-1;
  inset:0;
  background:linear-gradient(130deg,rgba(244,237,227,.68),rgba(218,199,178,.50));
}
.article-card h2,.event-card h2 { color:#211b25; font-size:32px; font-weight:600; line-height:1.08; margin:18px 0 10px; }
.article-card p,.event-card p { color:#302a31; font:400 17px/1.55 Georgia,"Times New Roman",serif; }
.article-card .card-arrow,.event-card .card-arrow { color:#72593c; }
.article-card:hover,.event-card:hover { border-color:#b89e7c; box-shadow:0 12px 28px rgba(62,45,38,.1); }
.event-card { background:#d9ccba; }
.event-card .article-card-wash { background:linear-gradient(135deg,rgba(239,230,216,.67),rgba(203,184,161,.51)); }
.pagination { display: flex; justify-content: center; align-items: center; gap: 1.5rem; margin-top: 2.5rem; }
@media(max-width:700px){
  .article-layout{width:calc(100% - 30px)}
  .article-header{margin-top:25px}
  .article-header h1{font-size:clamp(45px,13vw,62px)}
  .article-stats{gap:9px 18px}
  .article-body{font-size:19px;line-height:1.7}
  .article-body h2{font-size:32px}
  .article-body ul,.article-body ol{padding:15px 16px 15px 42px}
  .article-body ol{padding-left:52px}
  .article-body blockquote{padding:20px 20px 18px 48px;font-size:21px}
  .youtube-player-start{min-height:220px}
  .article-author-card{grid-template-columns:62px minmax(0,1fr);padding:19px;gap:15px}
  .author-avatar{width:62px;height:62px}
  .author-links{grid-column:1/-1}
  .article-rating{grid-template-columns:1fr;padding:22px}
  .article-rating fieldset,.rating-login{text-align:left}
  .rating-stars{justify-content:flex-end}
  .article-body>*{max-width:100%;min-width:0}
  .article-body a{overflow-wrap:anywhere;word-break:break-word}
  .article-comment-reply{margin-left:22px}
  .comment-author{display:block}
  .comment-author time{display:block;margin-top:4px}
  .article-topline{align-items:flex-start}
  .article-breadcrumbs{max-width:72%}
  .article-card,.event-card{min-height:245px}
  .article-card>.eyebrow,.event-card>.eyebrow{align-self:flex-start;text-align:left}
  .knowledge-sections{display:grid;grid-template-columns:1fr 1fr}
  .knowledge-sections a{padding:10px 8px;font-size:16px}
  .knowledge-subsections{padding:12px;gap:7px}
  .knowledge-subsections a{font-size:16px}
}
