/* Blog: reuses the original fonts, colors and components. */
.ry-blog{overflow-wrap:anywhere}
.ry-blog .blog-intro{background:linear-gradient(180deg,var(--teal-soft),#fff 88%);padding:64px 0 42px}
.ry-blog .blog-intro .sec-head{margin-bottom:0}
.ry-blog h1{font-size:clamp(32px,4.6vw,52px);font-weight:700;letter-spacing:-.015em}
.ry-blog .blog-list{padding:30px 0 84px}
.ry-blog .blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.ry-blog .blog-card{padding:0;overflow:hidden;min-width:0;display:flex;flex-direction:column}
.ry-blog .blog-card-image{display:block;background:var(--teal-soft);aspect-ratio:16/10;overflow:hidden}
.ry-blog .blog-card-image img{display:block;width:100%;height:100%;object-fit:cover}
.ry-blog .blog-card-body{padding:28px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.ry-blog .blog-card h2{font-size:22px;font-weight:600;margin:12px 0}
.ry-blog .blog-card h2 a:hover{color:var(--teal)}
.ry-blog .blog-categories{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px;color:var(--teal);font-size:12px;font-weight:600}
.ry-blog .blog-categories a{display:inline-block;background:var(--teal-soft);padding:5px 12px;border-radius:999px}
.ry-blog .blog-categories a:hover{background:var(--teal);color:#fff}
.ry-blog .blog-date{display:block;color:var(--gray);font-size:13px}
.ry-blog .blog-excerpt{margin-bottom:22px}
.ry-blog .blog-read{margin-top:auto}
.ry-blog .blog-empty{max-width:760px;margin:0 auto;text-align:center}
.ry-blog .blog-empty h2{font-size:26px;margin-bottom:14px}
.ry-blog .blog-empty:hover{transform:none}
.ry-blog .blog-pagination{margin-top:36px}
.ry-blog .blog-pagination ul{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:8px}
.ry-blog .page-numbers:not(ul),.ry-blog .post-page-numbers{display:inline-flex;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:12px;color:var(--teal)}
.ry-blog .page-numbers.current,.ry-blog .page-numbers:hover,.ry-blog .post-page-numbers.current{background:var(--teal);color:#fff;border-color:var(--teal)}
.ry-blog.blog-single{padding:54px 0 84px}
.ry-blog .blog-article-wrap{max-width:912px}
.ry-blog .blog-back{display:inline-block;color:var(--teal);font-size:15px;font-weight:600;margin-bottom:30px}
.ry-blog .blog-back:hover{text-decoration:underline}
.ry-blog .blog-article-head{margin-bottom:30px}
.ry-blog .blog-article-head h1{margin:14px 0 22px}
.ry-blog .blog-featured{margin:0 0 34px}
.ry-blog .blog-featured img{display:block;width:100%;height:auto;border-radius:24px}
.ry-blog .blog-post-content{color:var(--gray);font-size:17px;line-height:1.8;display:flow-root}
.ry-blog .blog-post-content :where(p,ul,ol,figure,blockquote,table,pre){margin-bottom:22px}
.ry-blog .blog-post-content :where(h2,h3,h4,h5,h6){color:var(--ink);margin:32px 0 16px}
.ry-blog .blog-post-content h2{font-size:clamp(26px,3.4vw,36px)}
.ry-blog .blog-post-content h3{font-size:24px}
.ry-blog .blog-post-content a,.ry-blog .blog-tags a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.ry-blog .blog-post-content :where(ul,ol){padding-left:26px}
.ry-blog .blog-post-content blockquote{padding:20px 24px;background:var(--teal-soft);border-left:4px solid var(--teal);border-radius:0 14px 14px 0}
.ry-blog .blog-post-content blockquote p:last-child{margin-bottom:0}
.ry-blog .blog-post-content img{max-width:100%;height:auto;border-radius:14px}
.ry-blog .blog-post-content :where(figure,iframe,video){max-width:100%}
.ry-blog .blog-post-content figcaption{font-size:13px;color:var(--gray);text-align:center;margin-top:10px}
.ry-blog .blog-post-content :where(pre,.wp-block-table){max-width:100%;overflow-x:auto}
.ry-blog .blog-post-content pre{padding:18px;background:var(--bg-alt);border:1px solid var(--line);border-radius:14px}
.ry-blog .blog-post-content table{border-collapse:collapse;width:100%}
.ry-blog .blog-post-content :where(th,td){padding:12px;border:1px solid var(--line)}
.ry-blog .blog-post-content section{padding:0}
.ry-blog .blog-post-content .alignleft{float:left;margin:0 24px 22px 0}
.ry-blog .blog-post-content .alignright{float:right;margin:0 0 22px 24px}
.ry-blog .blog-post-content .aligncenter{margin-left:auto;margin-right:auto}
.ry-blog .blog-post-content :where(.alignwide,.alignfull){width:auto;max-width:100%;margin-left:0;margin-right:0}
.ry-blog .blog-tags{font-size:14px;margin-top:30px}
.ry-blog .post-navigation{border-top:1px solid var(--line);padding-top:26px;margin-top:40px}
.ry-blog .post-navigation .nav-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.ry-blog .post-navigation .nav-next{text-align:right}
.ry-blog .post-navigation a{font-family:'Poppins',sans-serif;font-size:16px;font-weight:600}
.ry-blog .post-navigation a span{display:block;color:var(--teal);font-family:'Inter',sans-serif;font-size:12px;margin-bottom:6px}
@media(max-width:1024px){.ry-blog .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
  .ry-blog .blog-intro{padding:40px 0 28px}
  .ry-blog h1{font-size:clamp(29px,8vw,38px)}
  .ry-blog .blog-list{padding:20px 0 52px}
  .ry-blog .blog-grid{grid-template-columns:1fr;gap:20px}
  .ry-blog .blog-card-body{padding:24px 22px}
  .ry-blog.blog-single{padding:34px 0 52px}
  .ry-blog .blog-post-content{font-size:16px}
  .ry-blog .post-navigation .nav-links{grid-template-columns:1fr;gap:20px}
  .ry-blog .post-navigation .nav-next{text-align:left}
  .ry-blog .blog-post-content :where(.alignleft,.alignright){float:none;margin:0 auto 22px}
}
