/* Blog presentation scoped to the existing R.I.O. website. Inline article
   colours, strong/emphasis, table formatting and Gutenberg classes survive. */
.rio-blog { text-align: left; }
.page.rio-blog-page { padding-top: 0; }
.rio-blog-header { background: #282e3e; }
/* The standard hero reserves space for an absolute navbar. Blog pages have no
   hero, so keep the menu in normal flow; the fixed mobile bar still needs 56px. */
.rio-blog-header .rd-navbar-wrap { position: relative; min-height: 56px; height: auto !important; }
.rio-blog-header .text-logo text { fill: #fff; }
.rio-blog-language { position: relative; display: flex; gap: 1.1rem; justify-content: flex-end; align-items: center; max-width: 1170px; margin: 20px auto 0; padding: 0 15px; }
.rio-blog-language > [aria-current="page"] { color: #282e3e; font-weight: 700; }
.rio-blog-language > .btn { margin: 0; font-size: 12px; padding: 8px 15px; }
.rio-blog-article { padding-top: 36px; padding-bottom: 65px; }
.rio-blog-article-heading { margin-bottom: 35px; max-width: 900px; }
.rio-blog-article h1 { font-size: clamp(30px, 4vw, 49px); line-height: 1.15; overflow-wrap: anywhere; }
.rio-blog-article-heading > p:first-child { margin-bottom: 25px; }
.rio-blog-byline { color: #606879; margin-top: 15px; }
.rio-blog-content { line-height: 1.75; overflow-wrap: break-word; }
.rio-blog-content p, .rio-blog-content ul, .rio-blog-content ol, .rio-blog-content figure, .rio-blog-content table, .rio-blog-content blockquote { margin: 0 0 24px; }
.rio-blog-content h2, .rio-blog-content h3, .rio-blog-content h4 { margin: 40px 0 20px; scroll-margin-top: 110px; }
.rio-blog-content ul, .rio-blog-content ol { padding-left: 28px; }
.rio-blog-content ul { list-style: disc; }
.rio-blog-content ol { list-style: decimal; }
.rio-blog-content li { padding-left: 3px; margin-bottom: 8px; }
.rio-blog-content img { max-width: 100%; height: auto; display: block; }
.rio-blog-content img:not([src$=".svg"]) { cursor: zoom-in; }
.rio-blog-content .lightbox-trigger { display: none; }
.rio-blog-content figure { max-width: 100%; }
.rio-blog-content figcaption, .rio-blog-content .wp-caption-text { font-size: 14px; line-height: 1.45; color: #606879; margin-top: 10px; }
.rio-blog-content .wp-block-gallery { display: flex; flex-wrap: wrap; gap: 15px; align-items: flex-start; }
.rio-blog-content .wp-block-gallery > .wp-block-image { flex: 1 1 230px; width: calc(33.333% - 15px); margin: 0; }
.rio-blog-content .wp-block-gallery.columns-2 > .wp-block-image { width: calc(50% - 15px); }
.rio-blog-content .wp-block-gallery.columns-1 > .wp-block-image { width: 100%; }
.rio-blog-content .wp-block-gallery.is-cropped img { aspect-ratio: 3 / 2; object-fit: cover; width: 100%; }
.rio-blog-content .tiled-gallery__gallery { width: 100%; }
.rio-blog-content .tiled-gallery__row { display: flex; gap: 10px; align-items: flex-start; }
.rio-blog-content .tiled-gallery__col { flex-shrink: 1; min-width: 0; }
.rio-blog-content .tiled-gallery__item { margin-bottom: 10px; }
.rio-blog-content .tiled-gallery__item img { width: 100%; }
.rio-blog-content .wp-block-jetpack-slideshow_container { position: relative; background: #191919; padding-bottom: 42px; }
.rio-blog-content .wp-block-jetpack-slideshow_swiper-wrapper { display: block; padding: 0; margin: 0; list-style: none; height: auto; transform: none !important; }
.rio-blog-content .wp-block-jetpack-slideshow_slide { width: 100%; margin: 0; padding: 0; height: auto; }
.rio-blog-content .wp-block-jetpack-slideshow_slide[hidden] { display: none; }
.rio-blog-content .wp-block-jetpack-slideshow_slide figure { margin: 0; }
.rio-blog-content .wp-block-jetpack-slideshow_image { max-height: 630px; margin: 0 auto; width: auto; object-fit: contain; }
.rio-blog-content .wp-block-jetpack-slideshow_button-prev, .rio-blog-content .wp-block-jetpack-slideshow_button-next { top: calc(50% - 21px); background-color: rgba(0,0,0,.45); }
.rio-blog-content .wp-block-jetpack-slideshow_button-pause { position: absolute; bottom: 8px; left: 15px; color: #fff; padding: 3px 10px; border: 1px solid #777; cursor: pointer; font-size: 13px; }
.rio-blog-content .wp-block-jetpack-slideshow_pagination { bottom: 10px; color: #fff; pointer-events: none; font-size: 14px; text-align: center; }
.rio-blog-content .wp-block-columns { display: flex; flex-wrap: wrap; gap: 25px; }
.rio-blog-content .wp-block-column { flex: 1 1 260px; min-width: 0; }
.rio-blog-content .wp-block-table { overflow-x: auto; }
.rio-blog-content table { border-collapse: collapse; width: 100%; min-width: 350px; }
.rio-blog-content td, .rio-blog-content th { border: 1px solid #d6dce7; padding: 10px 13px; vertical-align: top; }
.rio-blog-content th { font-weight: 700; }
.rio-blog-content .is-style-stripes tr:nth-child(even) { background-color: #f4f6fa; }
.rio-blog-content blockquote { border-left: 3px solid #547abb; padding-left: 22px; }
.rio-blog-content .aligncenter { margin-left: auto; margin-right: auto; }
.rio-blog-content .alignleft { float: left; margin-right: 25px; }
.rio-blog-content .alignright { float: right; margin-left: 25px; }
.rio-blog-content .has-text-align-center { text-align: center; }
.rio-blog-content .has-text-align-right { text-align: right; }
.rio-blog-content .has-text-align-left { text-align: left; }
.rio-blog-content .has-small-font-size { font-size: 13px; }
.rio-blog-content .has-medium-font-size { font-size: 20px; }
.rio-blog-content .has-large-font-size { font-size: 36px; }
.rio-blog-content .has-x-large-font-size { font-size: 42px; }
.rio-blog-content .has-black-color { color: #000; }
.rio-blog-content .has-white-color { color: #fff; }
.rio-blog-content .has-vivid-red-color { color: #cf2e2e; }
.rio-blog-content .has-vivid-cyan-blue-color { color: #0693e3; }
.rio-blog-content .has-luminous-vivid-orange-color { color: #ff6900; }
.rio-blog-content .has-pale-pink-color { color: #f78da7; }
.rio-blog-content .has-cyan-bluish-gray-color { color: #abb8c3; }
.rio-blog-content .has-light-green-cyan-color { color: #7bdcb5; }
.rio-blog-content .has-vivid-green-cyan-color { color: #00d084; }
.rio-blog-content .has-pale-cyan-blue-color { color: #8ed1fc; }
.rio-blog-content .has-vivid-purple-color { color: #9b51e0; }
.rio-blog-content .has-luminous-vivid-amber-color { color: #fcb900; }
.rio-blog-content iframe { max-width: 100%; }
.rio-blog-content .wp-block-embed__wrapper { position: relative; }
.rio-blog-content video, .rio-blog-content audio { max-width: 100%; }
.rio-blog-content pre { overflow-x: auto; padding: 15px; background: #f4f6fa; }
.rio-blog-back { clear: both; padding-top: 45px; }
.rio-blog-comments { border-top: 1px solid #d6dce7; margin-top: 40px; }
.rio-blog-comment { border-bottom: 1px solid #e4e8f0; padding: 20px 0; }
.rio-blog-comment-author { font-weight: 700; margin-bottom: 10px; }
.rio-blog-comment > div { white-space: pre-line; }
.rio-blog-welcome { display: grid; grid-template-columns: minmax(180px, 32%) 1fr; gap: 35px; align-items: center; max-width: 950px; margin: 30px 0 40px; }
.rio-blog-welcome > img { width: 100%; height: auto; }
.rio-blog-welcome p { line-height: 1.65; }
.rio-blog-topics { display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0; }
.rio-blog-topics button { font: inherit; padding: 10px 16px; background: #fff; border: 1px solid #bccbe4; color: #282e3e; border-radius: 2px; cursor: pointer; }
.rio-blog-topics button[aria-pressed="true"] { background: #547abb; border-color: #547abb; color: #fff; }
.rio-blog-search-label { display: block; font-weight: 700; margin-bottom: 7px; }
.rio-blog-search { display: block; width: min(100%, 450px); font: inherit; border: 1px solid #bccbe4; padding: 12px; margin-bottom: 32px; }
.rio-blog .rio-article-card[hidden] { display: none; }
.rio-blog-pinned { display: inline-block; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: #547abb; margin: 8px 10px 8px 0; }
.rio-blog-lightbox { position: fixed; inset: 0; z-index: 20000; background: rgba(11, 11, 11, .97); display: flex; flex-direction: column; color: #fff; }
.rio-blog-lightbox[hidden] { display: none; }
.rio-blog-lightbox-toolbar { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; padding: 12px 15px; background: #171717; }
.rio-blog-lightbox button, .rio-blog-lightbox a { color: #fff; border: 1px solid #6f6f6f; background: #252525; padding: 8px 12px; font: inherit; cursor: pointer; text-decoration: none; }
.rio-blog-lightbox-close { margin-left: auto; }
.rio-blog-lightbox-stage { overflow: auto; flex: 1; min-height: 0; position: relative; display: grid; align-items: center; justify-items: center; padding: 15px; cursor: grab; touch-action: none; }
.rio-blog-lightbox-stage.is-dragging { cursor: grabbing; }
.rio-blog-lightbox-image { display: block; flex: none; max-width: none; max-height: none; user-select: none; -webkit-user-drag: none; object-fit: contain; }
.rio-blog-lightbox-caption { font-size: 14px; padding: 12px 15px; line-height: 1.5; text-align: center; }
@media (max-width: 600px) {
  .rio-blog-welcome { grid-template-columns: 1fr; gap: 20px; }
  .rio-blog-welcome > img { width: min(100%, 350px); }
  .rio-blog-content .wp-block-gallery > .wp-block-image { width: calc(50% - 15px); flex-basis: 120px; }
  .rio-blog-content .wp-block-columns { display: block; }
  .rio-blog-lightbox-toolbar { gap: 5px; padding: 8px; }
  .rio-blog-lightbox button, .rio-blog-lightbox a { padding: 7px 9px; font-size: 13px; }
}

/* Explicit original WordPress article palette and font presets. */
.rio-blog-content{--wp--preset--color--black:#000000;--wp--preset--color--cyan-bluish-gray:#abb8c3;--wp--preset--color--white:#ffffff;--wp--preset--color--pale-pink:#f78da7;--wp--preset--color--vivid-red:#cf2e2e;--wp--preset--color--luminous-vivid-orange:#ff6900;--wp--preset--color--luminous-vivid-amber:#fcb900;--wp--preset--color--light-green-cyan:#7bdcb5;--wp--preset--color--vivid-green-cyan:#00d084;--wp--preset--color--pale-cyan-blue:#8ed1fc;--wp--preset--color--vivid-cyan-blue:#0693e3;--wp--preset--color--vivid-purple:#9b51e0;--wp--preset--color--primary:#000000;--wp--preset--color--secondary:#1a7a89;--wp--preset--color--foreground:#000000;--wp--preset--color--background:#ffffff;--wp--preset--color--tertiary:#edf1f4;--wp--preset--font-size--small:13px;--wp--preset--font-size--medium:20px;--wp--preset--font-size--large:36px;--wp--preset--font-size--x-large:42px;--wp--preset--font-size--small:0.9rem;--wp--preset--font-size--medium:1.0625rem;--wp--preset--font-size--large:1.85rem;--wp--preset--font-size--x-large:2.5rem;--wp--preset--font-size--xx-large:3.27rem;}
.rio-blog-content .has-black-color{color:#000000;}
.rio-blog-content .has-black-background-color{background-color:#000000;}
.rio-blog-content .has-black-border-color{border-color:#000000;}
.rio-blog-content .has-cyan-bluish-gray-color{color:#abb8c3;}
.rio-blog-content .has-cyan-bluish-gray-background-color{background-color:#abb8c3;}
.rio-blog-content .has-cyan-bluish-gray-border-color{border-color:#abb8c3;}
.rio-blog-content .has-white-color{color:#ffffff;}
.rio-blog-content .has-white-background-color{background-color:#ffffff;}
.rio-blog-content .has-white-border-color{border-color:#ffffff;}
.rio-blog-content .has-pale-pink-color{color:#f78da7;}
.rio-blog-content .has-pale-pink-background-color{background-color:#f78da7;}
.rio-blog-content .has-pale-pink-border-color{border-color:#f78da7;}
.rio-blog-content .has-vivid-red-color{color:#cf2e2e;}
.rio-blog-content .has-vivid-red-background-color{background-color:#cf2e2e;}
.rio-blog-content .has-vivid-red-border-color{border-color:#cf2e2e;}
.rio-blog-content .has-luminous-vivid-orange-color{color:#ff6900;}
.rio-blog-content .has-luminous-vivid-orange-background-color{background-color:#ff6900;}
.rio-blog-content .has-luminous-vivid-orange-border-color{border-color:#ff6900;}
.rio-blog-content .has-luminous-vivid-amber-color{color:#fcb900;}
.rio-blog-content .has-luminous-vivid-amber-background-color{background-color:#fcb900;}
.rio-blog-content .has-luminous-vivid-amber-border-color{border-color:#fcb900;}
.rio-blog-content .has-light-green-cyan-color{color:#7bdcb5;}
.rio-blog-content .has-light-green-cyan-background-color{background-color:#7bdcb5;}
.rio-blog-content .has-light-green-cyan-border-color{border-color:#7bdcb5;}
.rio-blog-content .has-vivid-green-cyan-color{color:#00d084;}
.rio-blog-content .has-vivid-green-cyan-background-color{background-color:#00d084;}
.rio-blog-content .has-vivid-green-cyan-border-color{border-color:#00d084;}
.rio-blog-content .has-pale-cyan-blue-color{color:#8ed1fc;}
.rio-blog-content .has-pale-cyan-blue-background-color{background-color:#8ed1fc;}
.rio-blog-content .has-pale-cyan-blue-border-color{border-color:#8ed1fc;}
.rio-blog-content .has-vivid-cyan-blue-color{color:#0693e3;}
.rio-blog-content .has-vivid-cyan-blue-background-color{background-color:#0693e3;}
.rio-blog-content .has-vivid-cyan-blue-border-color{border-color:#0693e3;}
.rio-blog-content .has-vivid-purple-color{color:#9b51e0;}
.rio-blog-content .has-vivid-purple-background-color{background-color:#9b51e0;}
.rio-blog-content .has-vivid-purple-border-color{border-color:#9b51e0;}
.rio-blog-content .has-primary-color{color:#000000;}
.rio-blog-content .has-primary-background-color{background-color:#000000;}
.rio-blog-content .has-primary-border-color{border-color:#000000;}
.rio-blog-content .has-secondary-color{color:#1a7a89;}
.rio-blog-content .has-secondary-background-color{background-color:#1a7a89;}
.rio-blog-content .has-secondary-border-color{border-color:#1a7a89;}
.rio-blog-content .has-foreground-color{color:#000000;}
.rio-blog-content .has-foreground-background-color{background-color:#000000;}
.rio-blog-content .has-foreground-border-color{border-color:#000000;}
.rio-blog-content .has-background-color{color:#ffffff;}
.rio-blog-content .has-background-background-color{background-color:#ffffff;}
.rio-blog-content .has-background-border-color{border-color:#ffffff;}
.rio-blog-content .has-tertiary-color{color:#edf1f4;}
.rio-blog-content .has-tertiary-background-color{background-color:#edf1f4;}
.rio-blog-content .has-tertiary-border-color{border-color:#edf1f4;}
.rio-blog-content .has-small-font-size{font-size:13px;}
.rio-blog-content .has-medium-font-size{font-size:20px;}
.rio-blog-content .has-large-font-size{font-size:36px;}
.rio-blog-content .has-x-large-font-size{font-size:42px;}
.rio-blog-content .has-small-font-size{font-size:0.9rem;}
.rio-blog-content .has-medium-font-size{font-size:1.0625rem;}
.rio-blog-content .has-large-font-size{font-size:1.85rem;}
.rio-blog-content .has-x-large-font-size{font-size:2.5rem;}
.rio-blog-content .has-xx-large-font-size{font-size:3.27rem;}
