/*
 * Way — breadcrumbs, content pages, blog grid, single post, comments, pagination, 404.
 */

/* breadcrumbs (on the navy band) */
.way-crumbs { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 4px 12px; margin: 0 0 14px; font: 700 11px/1.4 var(--way-body); letter-spacing: .16em; text-transform: uppercase; color: var(--way-muted); }
.way-crumbs a, .way-crumbs span { color: var(--way-muted); text-decoration: none; }
.way-crumbs a:hover { color: var(--way-navy); }
.way-crumbs i { display: inline-block; width: 5px; height: 5px; background: var(--way-gold); transform: rotate(45deg); font-style: normal; }

/* content pages */
.way-page { padding-bottom: 80px; }
.way-page > .way-wrap { padding-top: 56px; }
.way-page > .elementor, .way-page > .elementor-section-wrap { padding-top: 0; }
.way-prose { max-width: 820px; margin: 0 auto; font-size: 17px; line-height: 1.85; color: var(--way-ink); }
.way-prose > :first-child { margin-top: 0; }
.way-prose h2 { font-size: clamp(32px, 3.6vw, 46px); margin: 1.5em 0 .5em; }
.way-prose h3 { font-size: 28px; margin: 1.7em 0 .5em; }
.way-prose h3::before { content: ""; display: inline-block; width: 8px; height: 8px; background: var(--way-gold); transform: rotate(45deg); margin-right: 12px; vertical-align: middle; }
.way-prose a:not(.button):not(.way-btn) { color: var(--way-gold-d); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.way-prose a:not(.button):not(.way-btn):hover { color: var(--way-navy); }
.way-prose img { border-radius: var(--way-petal); }
.way-prose ul li::marker { color: var(--way-gold); }
.way-prose pre, .way-prose code { background: var(--way-blush); border-radius: 6px; font-size: .9em; }
.way-prose code { padding: 2px 6px; }
.way-prose pre { padding: 18px; overflow: auto; }
.way-wrap--narrow { max-width: 860px; }
.way-page .entry-content > .alignfull { max-width: none; }

/* blog / archive grid */
.way-archive { padding: 56px 0 100px; }
.way-pgrid { display: grid; grid-template-columns: repeat(var(--way-blog-cols, 3), 1fr); gap: 34px; }
.way-pgrid--3 { grid-template-columns: repeat(3, 1fr); }
.way-pcard { position: relative; display: flex; flex-direction: column; background: #fff; border-radius: var(--way-petal); overflow: hidden; border: 1px solid rgba(192, 167, 112, .25); box-shadow: 0 12px 34px rgba(23, 24, 49, .08); transition: transform .4s var(--way-ease), box-shadow .4s; }
.way-pcard:hover { transform: translateY(-8px); box-shadow: 0 26px 54px rgba(23, 24, 49, .14); }
.way-pcard__img { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--way-blush); }
.way-pcard__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--way-ease); }
.way-pcard:hover .way-pcard__img img { transform: scale(1.07); }
.way-pcard__b { padding: 26px 26px 30px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.way-pcard__m { font: 700 11px/1 var(--way-body); letter-spacing: .2em; text-transform: uppercase; color: var(--way-gold-d); }
.way-pcard h2 { font: 600 25px/1.15 var(--way-head); margin: 0; }
.way-pcard h2 a { color: var(--way-navy); text-decoration: none; }
.way-pcard h2 a:hover { color: var(--way-gold-d); }
.way-pcard p { color: var(--way-muted); font-size: 15px; line-height: 1.7; margin: 0; }
.way-pcard .way-arrow { align-self: flex-start; margin-top: auto; }

.way-empty { text-align: center; max-width: 560px; margin: 40px auto; }
.way-empty p { color: var(--way-muted); }
.way-empty .way-msearch, .way-empty form { margin: 24px auto 0; }

/* pagination */
.way-pagination, .woocommerce-pagination { margin-top: 56px; text-align: center; }
.way-pagination .nav-links, .woocommerce-pagination ul.page-numbers { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 0; border: 0; }
.way-pagination .page-numbers, .woocommerce-pagination .page-numbers li .page-numbers { display: inline-grid; place-items: center; min-width: 44px; height: 44px; padding: 0 14px; border: 1px solid rgba(192, 167, 112, .6); border-radius: 4px 16px 4px 16px; background: #fff; color: var(--way-navy); font: 700 14px/1 var(--way-body); text-decoration: none; transition: background-color .25s, color .25s, transform .25s; }
.woocommerce-pagination ul.page-numbers li { border: 0; margin: 0; }
.way-pagination a.page-numbers:hover, .woocommerce-pagination a.page-numbers:hover { background: var(--way-navy); color: #fff; transform: translateY(-2px); }
.way-pagination .page-numbers.current, .woocommerce-pagination .page-numbers.current { background: var(--way-navy); color: var(--way-gold); border-color: var(--way-navy); }
.way-pagination .dots { border: 0; background: transparent; }

/* single post */
.way-article { padding: 56px 0 80px; }
.way-article__img { margin: 0 0 44px; }
.way-article__img img { width: 100%; border-radius: var(--way-petal-l); }
.way-tags { display: flex; flex-wrap: wrap; gap: 10px; max-width: 820px; margin: 40px auto 0; }
.way-tags a { padding: 8px 16px; border: 1px solid rgba(192, 167, 112, .7); border-radius: 4px 14px 4px 14px; font: 600 13px/1 var(--way-body); color: var(--way-navy); text-decoration: none; transition: background-color .25s, color .25s; }
.way-tags a:hover { background: var(--way-navy); color: #fff; }
.way-postnav .nav-links, .post-navigation .nav-links { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; max-width: 820px; margin: 48px auto 0; padding-top: 32px; border-top: 1px solid var(--way-line); }
.post-navigation a { display: block; text-decoration: none; }
.post-navigation .nav-next { text-align: right; }
.post-navigation .nav-subtitle { display: block; font: 700 11px/1 var(--way-body); letter-spacing: .2em; text-transform: uppercase; color: var(--way-gold-d); margin-bottom: 8px; }
.post-navigation .nav-title { font: 600 22px/1.2 var(--way-head); color: var(--way-navy); }
.post-navigation a:hover .nav-title { color: var(--way-gold-d); }
.way-related { padding: 80px 0; }
.way-related .way-head { margin-bottom: 40px; }

/* comments */
.comments-area, .way-comments { max-width: 820px; margin: 64px auto 0; }
.comments-title, .way-comments__t, .comment-reply-title { font: 600 34px/1.1 var(--way-head); color: var(--way-navy); margin: 0 0 24px; }
.comment-list, .way-comments__list { list-style: none; margin: 0 0 40px; padding: 0; }
.comment-list .children, .way-comments__list .children { list-style: none; padding-left: 28px; margin-top: 16px; }
.comment-body { position: relative; padding: 24px; margin-bottom: 16px; background: var(--way-ivory); border: 1px solid rgba(192, 167, 112, .3); border-radius: var(--way-petal); }
.comment-author { display: flex; align-items: center; gap: 12px; font-weight: 700; color: var(--way-navy); }
.comment-author img { border-radius: 50%; }
.comment-author .says { display: none; }
.comment-metadata { font-size: 12px; margin: 4px 0 10px; }
.comment-metadata a { color: var(--way-muted); text-decoration: none; }
.reply a { font: 700 11px/1 var(--way-body); letter-spacing: .16em; text-transform: uppercase; color: var(--way-gold-d); text-decoration: none; }
.comment-form label { display: block; margin-bottom: 6px; }
.comment-form p { margin-bottom: 16px; }
.comment-form-cookies-consent { display: flex; gap: 10px; align-items: center; }
.comment-form-cookies-consent input { width: auto; }
.comment-form-cookies-consent label { margin: 0; font-weight: 400; }

/* search form widget & 404 */
.search-form { display: flex; gap: 8px; max-width: 520px; }
.search-form label { flex: 1; }
.search-form .search-submit { flex: none; }
.way-404 { text-align: center; padding: 70px 0 110px; }
.way-404__n { font: 500 clamp(110px, 20vw, 220px)/1 var(--way-head); color: var(--way-gold); opacity: .85; letter-spacing: .04em; }
.way-404 p { max-width: 520px; margin: 0 auto 26px; color: var(--way-muted); }
.way-404 .way-msearch { max-width: 520px; margin: 0 auto 26px; }

@media (max-width: 1000px) {
  .way-pgrid, .way-pgrid--3 { grid-template-columns: repeat(2, 1fr); gap: 26px; }
}
@media (max-width: 640px) {
  .way-pgrid, .way-pgrid--3 { grid-template-columns: 1fr; }
  .way-prose { font-size: 16px; }
  .post-navigation .nav-links { grid-template-columns: 1fr; }
  .post-navigation .nav-next { text-align: left; }
  .way-archive { padding-bottom: 70px; }
}
