/* REME Builder — frontend rows & columns */
body.rmb-canvas:not(.rme-demo-page){margin:0;background:#F6FAF7}
body.rmb-canvas.rme-demo-page{margin:0}
.rmb-content{direction:ltr;width:100%;max-width:none!important;margin:0!important}
.is-layout-constrained>.rmb-content,.entry-content>.rmb-content{max-width:none!important}
.rmb-row{position:relative;width:100%;box-sizing:border-box}
.rmb-row-in{position:relative;z-index:2;display:flex;flex-wrap:wrap;align-items:stretch;gap:var(--rmb-gap,0px);box-sizing:border-box}
.rmb-row.is-multi:not(.rmb-row-fullwidth) .rmb-row-in{gap:var(--rmb-gap,30px);max-width:1240px;margin:0 auto;padding-inline:24px}
.rmb-row.is-multi.rmb-row-fullwidth>.rmb-row-in{gap:var(--rmb-gap,30px);width:100%;max-width:none;margin:0;padding-inline:0}
.rmb-row-boxed .rmb-row-in{max-width:1240px;margin:0 auto;padding-inline:24px}
.rmb-row-stretch .rm-w{background:transparent!important}
.rmb-col{position:relative;box-sizing:border-box;flex:1 1 calc(var(--rmb-w,100%) - var(--rmb-gap,30px));max-width:var(--rmb-w,100%);min-width:0;display:flex;flex-direction:column}
.rmb-col-in{position:relative;z-index:2;display:flex;flex-direction:column;flex:1 1 auto;min-width:0}
.rmb-col-in>*{min-width:0}
.rmb-row:not(.is-multi) .rmb-col{flex-basis:100%;max-width:100%}
.rmb-row.is-multi .rm-w .rm-container,.rmb-row-boxed .rm-w .rm-container{padding-inline:0;max-width:none}
.rmb-row.is-multi .rm-w{--rm-pad:24px}
.rmb-va-start .rmb-row-in{align-items:flex-start}.rmb-va-center .rmb-row-in{align-items:center}.rmb-va-end .rmb-row-in{align-items:flex-end}.rmb-va-stretch .rmb-row-in{align-items:stretch}
.rmb-has-minh{display:flex;flex-direction:column;justify-content:center}
.rmb-has-minh>.rmb-row-in{width:100%;box-sizing:border-box}
.rmb-cva-start>.rmb-col-in{justify-content:flex-start}.rmb-cva-center>.rmb-col-in{justify-content:center}.rmb-cva-end>.rmb-col-in{justify-content:flex-end}.rmb-cva-between>.rmb-col-in{justify-content:space-between}
.rmb-sticky>.rmb-col-in{position:sticky;top:90px;flex:0 0 auto}
.rmb-ov{position:absolute;inset:0;z-index:1;pointer-events:none;border-radius:inherit}
.rmb-has-shape{overflow:hidden}
.rmb-shape{position:absolute;right:0;left:0;z-index:1;line-height:0;pointer-events:none;direction:ltr}
.rmb-shape.is-front{z-index:3}
.rmb-shape svg{display:block;width:calc(100% + 2px);height:70px;margin-right:-1px}
.rmb-shape-t{top:-1px}
.rmb-shape-b{bottom:-1px;transform:rotate(-180deg)}
.rmb-shape-t.is-flip{transform:scaleX(-1)}
.rmb-shape-b.is-flip{transform:rotate(-180deg) scaleX(-1)}
@media (min-width:1025px){.rmb-hide-d{display:none!important}}
@media (min-width:768px) and (max-width:1024px){
  .rmb-hide-t{display:none!important}
  .rmb-rev-t .rmb-row-in{flex-direction:row-reverse}
  .rmb-row.is-multi .rmb-row-in{gap:var(--rmb-gap,24px)}
}
@media (max-width:767px){
  .rmb-row.is-multi .rmb-row-in{padding-inline:16px;gap:var(--rmb-gap,16px)}
  .rmb-row.is-multi.rmb-row-fullwidth>.rmb-row-in{padding-inline:0}
  .rmb-col{flex-basis:100%!important;max-width:100%!important}
  .rmb-rev-m .rmb-row-in{flex-direction:column-reverse}
  .rmb-hide-m{display:none!important}
  .rmb-shape svg{height:40px}
  .rmb-sticky>.rmb-col-in{position:static}
}
/* Narrow columns: stack element internals by the column width (container queries) */
.rmb-row.is-multi .rmb-col-in{container-type:inline-size;container-name:rmbcol}
@container rmbcol (max-width:760px){
  .rm-w .rm-split,.rm-w .rm-news,.rm-w .rm-logo-show,.rm-w .rm-donut-wrap,.rm-w .rm-rsum,.rm-w .rm-tabs-side,.rm-w .rm-prose.has-toc,.rm-w .rm-faq-cols-2,.rm-w .rm-footer-grid{grid-template-columns:minmax(0,1fr)!important;gap:22px}
  .rm-w .rm-split>*{order:initial!important}
  .rm-w .rm-cta{flex-direction:column;text-align:center}
  .rm-w .rm-grid:not([style*="--rm-cols:1;"]),.rm-w .rm-steps:not([style*="--rm-cols:1;"]),.rm-w .rm-trust:not([style*="--rm-cols:1;"]){grid-template-columns:repeat(2,minmax(0,1fr))}
  .rm-w .rm-plist{grid-template-columns:minmax(0,1fr)}
}
@container rmbcol (max-width:460px){
  .rm-w .rm-grid,.rm-w .rm-steps,.rm-w .rm-trust,.rm-w .rm-ilist-grid,.rm-w .rm-form{grid-template-columns:minmax(0,1fr)!important}
  .rm-w .rm-cd{gap:6px}
  .rm-w .rm-cd-cell{min-width:0;flex:1;padding:12px 4px}
}

/* Many columns: wrap nicely on tablets */
@media (min-width:768px) and (max-width:1024px){
  .rmb-row.rmb-cols-4 > .rmb-row-in > .rmb-col{flex:0 0 calc(50% - var(--rmb-gap,24px)/2);max-width:calc(50% - var(--rmb-gap,24px)/2)}
  .rmb-row.rmb-cols-5 > .rmb-row-in > .rmb-col,.rmb-row.rmb-cols-6 > .rmb-row-in > .rmb-col{flex:0 0 calc(33.333% - var(--rmb-gap,24px)*.667);max-width:calc(33.333% - var(--rmb-gap,24px)*.667)}
}
@media (max-width:767px){
  .rmb-row.rmb-cols-6 > .rmb-row-in > .rmb-col:not([style*="w_m"]){flex-basis:calc(50% - var(--rmb-gap,16px)/2)!important;max-width:calc(50% - var(--rmb-gap,16px)/2)!important}
}
.rmb-row-top{position:relative;z-index:990}.rmb-row-top>.rmb-row-in{z-index:990}
/* ---------- REME Header & Footer ---------- */
.rmt{position:relative;z-index:990;display:block}
.rmt-footer{z-index:1}
.rmt .rmb-content{overflow:visible}
.rmt-header .rmb-row{overflow:visible}
.rmt-header .rmb-col-in,.rmt-footer .rmb-row.rmb-inline-m .rmb-col-in{container-type:normal}
.rmt-sticky-sticky,.rmt-sticky-smart{position:sticky;top:var(--wp-admin--admin-bar--height,0px);transition:transform .35s cubic-bezier(.2,.7,.2,1),background .3s,box-shadow .3s}
.rmt-sticky-smart.is-hidden{transform:translateY(-100%)}
.rmt.has-shadow.is-scrolled{box-shadow:0 10px 30px -18px rgba(0,0,0,.35)}
.rmt-header.is-transparent{position:absolute;inset-inline:0;top:var(--wp-admin--admin-bar--height,0px)}
.rmt-header.is-transparent .rmb-row,.rmt-header.is-transparent .rm-w{background:transparent!important}
.rmt-header.is-transparent.rmt-sticky-sticky,.rmt-header.is-transparent.rmt-sticky-smart{position:fixed}
.rmt-header.is-transparent.is-scrolled{background:var(--rmt-sbg,#fff)}
.rmt-header.is-transparent:not(.is-scrolled) .rf{--rf-c:#fff;--rf-m:rgba(255,255,255,.8)}
.rmt-header.is-transparent:not(.is-scrolled) .rwc-mc-btn{color:#fff!important}
.rmt-sticky-sticky.is-scrolled:not(.is-transparent),.rmt-sticky-smart.is-scrolled:not(.is-transparent){background:var(--rmt-sbg,#fff)}
.rmt-skip{position:absolute;inset-inline-start:-9999px}
.rmt-skip:focus{inset-inline-start:12px;top:12px;z-index:100010;padding:10px 16px;background:#fff;color:#111;border-radius:8px}
.rmt-preview-fill{height:60vh;background:repeating-linear-gradient(135deg,#f2f3f5 0 12px,#eceef1 12px 24px)}
body.rmt-has-header{overflow-x:clip}
/* rows that keep their columns side by side on phones / tablets (headers) */
@media (max-width:767px){
  .rmb-inline-m .rmb-row-in{flex-wrap:nowrap!important;align-items:center}
  .rmb-row.rmb-inline-m .rmb-col{flex:0 1 auto!important;max-width:none!important;width:auto;min-width:0}
  .rmb-row.rmb-inline-m .rmb-col:first-child{flex:1 1 auto!important}
  .rmb-row.rmb-inline-m .rmb-col-in{container-type:normal}
}
@media (min-width:768px) and (max-width:1024px){
  .rmb-inline-t .rmb-row-in{flex-wrap:nowrap!important;align-items:center}
  .rmb-row.rmb-inline-t .rmb-col{flex:0 1 auto!important;max-width:none!important;width:auto;min-width:0}
  .rmb-row.rmb-inline-t .rmb-col:first-child{flex:1 1 auto!important}
  .rmb-row.rmb-inline-t .rmb-col-in{container-type:normal}
}
/* column with elements side by side */
.rmb-col-row>.rmb-col-in{flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--rmb-igap,10px)}
.rmb-col-row>.rmb-col-in>*{flex:0 0 auto;width:auto;min-width:0}
.rmb-col-row>.rmb-col-in>.rm-w .rm-container{padding-inline:0}
.rmb-cj-center>.rmb-col-in{justify-content:center}.rmb-cj-end>.rmb-col-in{justify-content:flex-end}.rmb-cj-between>.rmb-col-in{justify-content:space-between}
.rmt .rm-w.rm-anim .rm-container,.rmt .rm-w.rm-anim.rm-pre .rm-container{opacity:1!important;transform:none!important;transition:none!important}
/* headers on phones: logo | icons | menu button, never wrapping */
@media (max-width:767px){
  .rmb-row.rmb-inline-m .rmb-col-row>.rmb-col-in{flex-wrap:nowrap}
  .rmt-header .rmb-row.rmb-inline-m .rmb-col:has(.rmw-mega-menu,.rmw-nav-menu){order:9}
  .rmt-header .rmb-row.rmb-inline-m .rmb-col:has(.rmw-site-logo){flex:1 1 auto!important;min-width:0}
}
/* two columns per line on phones (footers): the first column stays full width */
@media (max-width:767px){
  .rmb-row.rmb-two-m .rmb-row-in{row-gap:28px}
  .rmb-row.rmb-two-m .rmb-col{flex:1 1 calc(50% - var(--rmb-gap,30px))!important;max-width:calc(50% - var(--rmb-gap,30px) / 2)!important}
  .rmb-row.rmb-two-m .rmb-col:first-child{flex-basis:100%!important;max-width:100%!important}
}
/* REME 3.0 globals + loop builder */
.rmb-hide-all{display:none!important}
.rmb-loop-grid{display:grid;grid-template-columns:repeat(var(--rmb-loop-cols,3),minmax(0,1fr));gap:var(--rmb-loop-gap,24px)}
.rmb-loop-grid.is-list{grid-template-columns:1fr}
.rmb-loop-card{background:var(--rm-card,#fff);border:1px solid rgba(1,52,37,.12);border-radius:18px;overflow:hidden;box-shadow:0 14px 35px -28px rgba(1,52,37,.5);height:100%}
.rmb-loop-card>a{display:block;color:inherit;text-decoration:none}
.rmb-loop-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.rmb-loop-card-body{padding:20px}.rmb-loop-card h3{margin:0 0 9px}.rmb-loop-card p{margin:0;opacity:.8}
.rmb-loop-pagination{display:flex;justify-content:center;gap:8px;margin-top:28px;flex-wrap:wrap}
@media(max-width:1024px){.rmb-loop-grid{grid-template-columns:repeat(min(var(--rmb-loop-cols,3),2),minmax(0,1fr))}}
@media(max-width:767px){.rmb-loop-grid{grid-template-columns:1fr}}
/* Theme Builder 2.0 dedicated mobile header */
.rmt-mobile-header{display:none!important}.rmt-desktop-header{display:block!important}@media(max-width:767px){.rmt-has-mobile-header .rmt-mobile-header{display:block!important}.rmt-has-mobile-header .rmt-desktop-header{display:none!important}}


/* REME 4.9 — true full-canvas compatibility for Twenty Twenty-Five and other block themes */
html:has(body.rmb-canvas){margin:0!important}
body.rmb-canvas{margin:0!important;padding:0!important;max-width:none!important;overflow-x:clip}
body.rmb-canvas:not(.rme-demo-page){background:var(--rmb-page-bg,#fff)}
body.rmb-canvas .rmb-canvas-main,
body.rmb-canvas .rmb-content,
body.rmb-canvas .entry-content,
body.rmb-canvas .wp-block-post-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body.rmb-canvas .rmb-canvas-main>*,
body.rmb-canvas .rmb-content>*{max-width:none}
body.rmb-canvas :where(.is-layout-constrained,.is-layout-flow,.wp-site-blocks){max-width:none!important;margin:0!important;padding-inline:0!important}
body.rmb-canvas :where(.alignwide,.alignfull){width:100%!important;max-width:none!important;margin-inline:0!important}
body.rmb-canvas .rmb-row{margin-inline:0!important}
body.rmb-canvas #wpadminbar{max-width:none}
body.rmb-canvas .rmt-header,body.rmb-canvas .rmt-footer{width:100%;max-width:none}

/* REME 4.9 — full-width template inside Twenty Twenty-Five / block themes. */
body.rmb-full-width.rmb-tt5-ready,
body.rmb-full-width.rmb-tt5-ready .wp-site-blocks,
body.rmb-full-width.rmb-tt5-ready main.rmb-full-main,
body.rmb-full-width.rmb-tt5-ready main.rmb-full-main > .entry-content,
body.rmb-full-width.rmb-tt5-ready main.rmb-full-main > .wp-block-post-content{
  width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;
}
body.rmb-full-width.rmb-tt5-ready .wp-site-blocks{padding-left:0!important;padding-right:0!important;overflow-x:clip}
body.rmb-full-width.rmb-tt5-ready main.rmb-full-main{padding:0!important}
body.rmb-full-width.rmb-tt5-ready main.rmb-full-main > *:not(.alignwide):not(.alignfull){max-width:none!important}
body.rmb-full-width.rmb-tt5-ready main.rmb-full-main .alignwide,
body.rmb-full-width.rmb-tt5-ready main.rmb-full-main .alignfull{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}

/* REME 4.9.1 — Twenty Twenty-Five shield: stop block-theme global styles leaking into REME sections. */
body.rmb-full-width .wp-site-blocks>*{margin-block-start:0!important;margin-block-end:0!important}
body.rmb-full-width main.rmb-full-main{display:block;min-height:40vh}
body.rmb-canvas main.rmb-canvas-main{display:block}
.rm-w.rm-w h5,.rm-w.rm-w h6{font-family:var(--rm-font-h);color:var(--rm-title);margin:0 0 .45em;line-height:1.3;font-weight:700;letter-spacing:0;text-transform:none}
:where(.rm-w) figure{margin:0}
:where(.rm-w) blockquote{margin:0;padding:0;border:0;quotes:none}
.rm-w :where(h1,h2,h3,h4,h5,h6){text-wrap:balance;overflow-wrap:break-word}
.rm-w :where(p,li){overflow-wrap:break-word}
.rm-w :where(img,video,iframe){max-width:100%}
body.rmb-canvas .rm-w,body.rmb-full-width .rm-w{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
@media (max-width:781px){body.rmb-canvas,body.rmb-full-width{overflow-x:clip}}

/* REME 5.0 — imported flagship demos always own the full canvas width. */
body.rme-demo-page .rmb-content>.rmb-row:not(.rmb-row-boxed)>.rmb-row-in{max-width:none;width:100%;padding-inline:0}
body.rme-demo-page .rmb-content>.rmb-row:not(.is-multi)>.rmb-row-in>.rmb-col{width:100%}


/* REME 5.3 — hard full-width shield for demos and REME full-width templates.
   The page canvas breaks out of any theme content container; boxed REME rows still keep their own inner max-width. */
html:has(body.rmb-canvas),html:has(body.rmb-full-width),html:has(body.rme-demo-page){width:100%!important;max-width:none!important;overflow-x:clip!important}
body.rmb-canvas,body.rmb-full-width,body.rme-demo-page{width:100%!important;max-width:none!important;overflow-x:clip!important}

/* Theme wrappers are allowed to exist, but they may not constrain the REME page canvas. */
body.rmb-full-width :where(#page,.site,.site-content,.content-area,#content,.block-content,.main-content,.page-content):has(.rmb-full-main),
body.rme-demo-page :where(#page,.site,.site-content,.content-area,#content,.block-content,.main-content,.page-content):has(.rmb-content){
  width:100%!important;max-width:none!important;margin-inline:0!important;padding-inline:0!important
}
body.rmb-full-width main.rmb-full-main,
body.rmb-canvas main.rmb-canvas-main{
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;overflow:visible!important
}

/* True viewport breakout even when a classic theme nests the content inside a 1200px/boxed wrapper. */
body.rmb-full-width main.rmb-full-main>.rmb-content,
body.rmb-canvas main.rmb-canvas-main>.rmb-content,
body.rme-demo-page main>.rmb-content,
body.rme-demo-page .entry-content>.rmb-content,
body.rme-demo-page .wp-block-post-content>.rmb-content{
  position:relative!important;left:50%!important;right:auto!important;
  width:100vw!important;max-width:100vw!important;
  margin-left:-50vw!important;margin-right:0!important;padding-left:0!important;padding-right:0!important
}

/* Full-width sections own the viewport; boxed rows retain their intended readable inner container. */
body.rmb-page .rmb-content>.rmb-row{width:100%!important;max-width:none!important;margin-inline:0!important}
body.rmb-page .rmb-content>.rmb-row:not(.rmb-row-boxed)>.rmb-row-in{width:100%!important;max-width:none!important;margin-inline:0!important}
body.rmb-page .rmb-content>.rmb-row.rmb-row-boxed>.rmb-row-in{width:min(100%,1240px)!important;max-width:1240px!important;margin-inline:auto!important}

/* Header/footer also escape theme content constraints when REME owns them. */
body.rmb-page .rmt-desktop-header,body.rmb-page .rmt-mobile-header,body.rmb-page .rmt-footer,
body.rmb-page .rmt-header,body.rmb-page footer.rmt{
  width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:0!important
}

/* Common classic-theme / TheGem content wrappers. Scoped so normal non-REME pages are untouched. */
body.rmb-full-width :where(.gem-page-content,.block-content,.site-main,.content-main,.page-main):has(.rmb-full-main),
body.rme-demo-page :where(.gem-page-content,.block-content,.site-main,.content-main,.page-main):has(.rmb-content){
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important
}

@supports(width:100dvw){
  body.rmb-full-width main.rmb-full-main>.rmb-content,
  body.rmb-canvas main.rmb-canvas-main>.rmb-content,
  body.rme-demo-page main>.rmb-content,
  body.rme-demo-page .entry-content>.rmb-content,
  body.rme-demo-page .wp-block-post-content>.rmb-content{width:100dvw!important;max-width:100dvw!important;margin-left:-50dvw!important}
  body.rmb-page .rmt-desktop-header,body.rmb-page .rmt-mobile-header,body.rmb-page .rmt-footer,body.rmb-page .rmt-header,body.rmb-page footer.rmt{width:100dvw!important;max-width:100dvw!important;margin-left:calc(50% - 50dvw)!important}
}


/* REME 5.4 — Twenty Twenty-Five reference-theme shield for ALL TA01–TF05 demos.
   Keep the WordPress block theme active, but never let its contentSize/wideSize
   or root padding squeeze a REME-designed page. */
body.rmb-twenty-twenty-five.rme-demo-page{
  --wp--style--global--content-size:100%!important;
  --wp--style--global--wide-size:100%!important;
  --rme-demo-viewport:100vw;
  width:100%!important;max-width:none!important;margin:0!important;overflow-x:clip!important
}
body.rmb-twenty-twenty-five.rme-demo-page :where(.wp-site-blocks,.wp-block-post-content,.entry-content,.site-main,main){
  max-width:none!important
}
body.rmb-twenty-twenty-five.rme-demo-page .wp-site-blocks{
  width:100%!important;max-width:none!important;padding-left:0!important;padding-right:0!important
}
body.rmb-twenty-twenty-five.rme-demo-page :where(.wp-block-post-content,.entry-content):has(>.rmb-content){
  width:100%!important;max-width:none!important;margin-inline:0!important;padding-inline:0!important
}
body.rmb-twenty-twenty-five.rme-demo-page :where(.wp-block-post-content,.entry-content)>.rmb-content,
body.rmb-twenty-twenty-five.rme-demo-page main>.rmb-content{
  position:relative!important;left:50%!important;width:100vw!important;max-width:100vw!important;
  margin-left:-50vw!important;margin-right:0!important;padding-inline:0!important
}
body.rmb-twenty-twenty-five.rme-demo-page .rmb-content>.rmb-row{
  width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important
}
body.rmb-twenty-twenty-five.rme-demo-page .rmb-content>.rmb-row:not(.rmb-row-boxed)>.rmb-row-in{
  width:100%!important;max-width:none!important;margin-inline:0!important
}
body.rmb-twenty-twenty-five.rme-demo-page .rmb-content>.rmb-row.rmb-row-boxed>.rmb-row-in{
  width:min(calc(100% - 32px),1240px)!important;max-width:1240px!important;margin-inline:auto!important
}
/* Neutralize TT5 constrained-layout max-width only inside REME demo content. */
body.rmb-twenty-twenty-five.rme-demo-page .rmb-content :where(.is-layout-constrained,.is-layout-flow){
  max-width:none!important
}
body.rmb-twenty-twenty-five.rme-demo-page .rmb-content :where(.alignfull,.alignwide){
  width:100%!important;max-width:none!important;margin-inline:0!important
}
@supports(width:100dvw){
  body.rmb-twenty-twenty-five.rme-demo-page{--rme-demo-viewport:100dvw}
  body.rmb-twenty-twenty-five.rme-demo-page :where(.wp-block-post-content,.entry-content)>.rmb-content,
  body.rmb-twenty-twenty-five.rme-demo-page main>.rmb-content{width:100dvw!important;max-width:100dvw!important;margin-left:-50dvw!important}
}
@media(max-width:767px){
  body.rmb-twenty-twenty-five.rme-demo-page .rmb-content>.rmb-row.rmb-row-boxed>.rmb-row-in{width:min(calc(100% - 24px),1240px)!important}
}


/* REME 5.5 — definitive flagship tour viewport mode.
   TA01–TF05 are rendered with templates/canvas.php at runtime, so Twenty Twenty-Five
   may remain the active WordPress theme but cannot constrain the demo canvas. */
html:has(body.rmb-force-viewport){margin:0!important;padding:0!important;width:100%!important;max-width:none!important;overflow-x:clip!important}
body.rmb-force-viewport{margin:0!important;padding:0!important;width:100%!important;max-width:none!important;min-width:0!important;overflow-x:clip!important;background:#fff}
body.rmb-force-viewport #rmb-canvas-main,
body.rmb-force-viewport main.rmb-canvas-main,
body.rmb-force-viewport main.rmb-canvas-main>.rmb-content,
body.rmb-force-viewport .rmb-content{
  display:block!important;position:relative!important;left:auto!important;right:auto!important;
  width:100%!important;max-width:none!important;min-width:0!important;
  margin:0!important;padding:0!important;transform:none!important
}
body.rmb-force-viewport .rmb-content>.rmb-row{
  position:relative!important;left:auto!important;right:auto!important;
  width:100%!important;max-width:none!important;margin:0!important
}
/* A real Full row must stay full even when it contains two or more columns.
   Previously the generic multi-column rule silently re-boxed it to 1240px. */
body.rmb-force-viewport .rmb-content>.rmb-row:not(.rmb-row-boxed).is-multi>.rmb-row-in{
  width:100%!important;max-width:none!important;margin:0!important;padding-inline:0!important
}
/* Boxed rows remain deliberately contained, but use a premium travel-site width. */
body.rme-tour-demo .rmb-content>.rmb-row.rmb-row-boxed>.rmb-row-in,
body.rme-tour-demo .rmt-desktop-header .rmb-row-boxed>.rmb-row-in,
body.rme-tour-demo .rmt-mobile-header .rmb-row-boxed>.rmb-row-in,
body.rme-tour-demo .rmt-footer .rmb-row-boxed>.rmb-row-in{
  width:min(calc(100% - 56px),1540px)!important;max-width:1540px!important;margin-inline:auto!important
}
body.rme-tour-demo .rmt-desktop-header,
body.rme-tour-demo .rmt-mobile-header,
body.rme-tour-demo .rmt-footer,
body.rme-tour-demo .rmt-header{width:100%!important;max-width:none!important;margin-inline:0!important}
body.rme-tour-demo .rmt-pro{width:100%!important;max-width:none!important;margin:0!important}
body.rme-tour-demo .rmt-pro .rmt-hero-cover{width:100%!important;max-width:none!important}
@media(max-width:1024px){
  body.rme-tour-demo .rmb-content>.rmb-row.rmb-row-boxed>.rmb-row-in,
  body.rme-tour-demo .rmt-desktop-header .rmb-row-boxed>.rmb-row-in,
  body.rme-tour-demo .rmt-footer .rmb-row-boxed>.rmb-row-in{width:min(calc(100% - 32px),1540px)!important}
  }
@media(max-width:767px){
    body.rme-tour-demo .rmb-content>.rmb-row.rmb-row-boxed>.rmb-row-in{width:calc(100% - 24px)!important;padding-inline:0!important}
}


/* REME 5.5.1 — H.H Tours demos: true edge-to-edge sections, content kept in a premium container. */
body.rme-demo-page .rmb-content,
body.rme-demo-page .rmb-row,
body.rme-demo-page .rmb-row:not(.is-multi)>.rmb-row-in,
body.rme-demo-page .rmb-row:not(.is-multi) .rmb-col,
body.rme-demo-page .rmb-row:not(.is-multi) .rmb-col-in{width:100%!important;max-width:none!important;margin-inline:0!important}
body.rme-demo-page .rmb-row-boxed:not(.is-multi)>.rmb-row-in,
body.rme-demo-page .rmb-row-stretch:not(.is-multi)>.rmb-row-in{padding-inline:0!important}
/* 8.0: outside the tour and medical design systems a boxed one-column row keeps a gutter as soon as the
   window is narrower than the box, so its text never touches the screen edge on tablets and phones. */
@media (max-width:1287px){body.rme-demo-page:not(.rme-tour-demo):not(.rme-med-demo) .rmb-row-boxed:not(.is-multi)>.rmb-row-in{padding-inline:24px!important}}
@media (max-width:600px){body.rme-demo-page:not(.rme-tour-demo):not(.rme-med-demo) .rmb-row-boxed:not(.is-multi)>.rmb-row-in{padding-inline:16px!important}}
/* multi-column rows (header / footer / split bands) stay boxed, but wider and centred */
/* 8.0: the "no side padding" part is for the tour and medical design systems only (their header, footer and
   split bands add their own). Every other imported demo keeps the builder's normal gutters — before 8.0 its
   header, footer and column rows sat flush against the screen edges. */
body.rme-tour-demo .rmb-row-boxed.is-multi>.rmb-row-in,
body.rme-med-demo .rmb-row-boxed.is-multi>.rmb-row-in{max-width:min(1540px,calc(100% - 2*var(--hh-edge,24px)))!important;padding-inline:0!important;margin-inline:auto!important}
body.rme-demo-page .rmb-row-fullwidth.is-multi>.rmb-row-in{width:100%!important;max-width:none!important;margin:0!important}
body.rme-tour-demo .rmb-row-fullwidth.is-multi>.rmb-row-in,
body.rme-med-demo .rmb-row-fullwidth.is-multi>.rmb-row-in{padding-inline:0!important}
/* sections carry their own background; never force it transparent over the body colour */
body.rme-demo-page .rmb-row-stretch .rm-w{background:var(--rm-bg)!important}
body.rme-demo-page .rm-w.rmt-pro{--rm-pad:0px;padding:0!important;overflow:visible;background:transparent!important}
/* 8.0: these two belong to the tour design system, whose widgets carry their own inner container.
   Until 7.3 they also hit every other imported demo (shops, agency, cafés…) and stretched the
   normal 1240px content box from edge to edge, with no side gutter. */
body.rme-tour-demo .rmb-row-boxed .rm-w .rm-container,
body.rme-med-demo .rmb-row-boxed .rm-w .rm-container,
body.rme-demo-page .rmb-row-boxed .rm-w.rmt-pro .rm-container{max-width:min(1480px,calc(100% - 2*var(--hh-edge,24px)));margin-inline:auto;padding-inline:0}
body.rme-tour-demo .rmb-row-fullwidth .rm-w .rm-container,
body.rme-med-demo .rmb-row-fullwidth .rm-w .rm-container,
body.rme-demo-page .rmb-row-fullwidth .rm-w.rmt-pro .rm-container{max-width:none;width:100%;margin-inline:0;padding-inline:0}
body.rme-demo-page .rmt-pro>.rmt-section,body.rme-demo-page .rmt-pro>.rmt-hero{width:100%;max-width:none}
/* no stray vertical gaps between stacked demo sections */
body.rme-demo-page .rmb-row{margin:0!important}
body.rme-demo-page .rmb-row:not(.rmt-header):not(.rmt-footer) .rmb-col{padding-block:0}

/* REME 5.6 — definitive Twenty Twenty-Five full-viewport canvas for ALL H.H Tours demos. */
html body.rme-tour-demo.rmb-force-viewport{margin:0!important;padding:0!important;width:100%!important;max-width:none!important;overflow-x:clip!important}
html body.rme-tour-demo.rmb-force-viewport>.wp-site-blocks,
html body.rme-tour-demo.rmb-force-viewport>.wp-site-blocks>main,
html body.rme-tour-demo.rmb-force-viewport main.rmb-canvas-main,
html body.rme-tour-demo.rmb-force-viewport main.rmb-canvas-main>.rmb-content{
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important
}
html body.rme-tour-demo.rmb-force-viewport .rmb-content{left:auto!important;right:auto!important;transform:none!important}
html body.rme-tour-demo.rmb-force-viewport .rmb-content>.rmb-row{width:100%!important;max-width:none!important;margin:0!important}
html body.rme-tour-demo.rmb-force-viewport .rmb-content>.rmb-row.rmb-row-stretch>.rmb-row-in{width:100%!important;max-width:none!important;margin:0!important;padding-inline:0!important}
html body.rme-tour-demo.rmb-force-viewport .rmb-content>.rmb-row.rmb-row-boxed>.rmb-row-in{width:min(calc(100% - 32px),1540px)!important;max-width:1540px!important;margin-inline:auto!important}
@media(max-width:767px){html body.rme-tour-demo.rmb-force-viewport .rmb-content>.rmb-row.rmb-row-boxed>.rmb-row-in{width:calc(100% - 24px)!important}}

/* REME 5.6 — block-theme leak shield for flagship tour demos. If a cached
 * Twenty Twenty-Five template is served around a REME demo, suppress only
 * its native template parts; REME's own header/footer are .rmt-* elements. */
body.rme-tour-demo.rmb-force-viewport .wp-site-blocks>header.wp-block-template-part,
body.rme-tour-demo.rmb-force-viewport .wp-site-blocks>footer.wp-block-template-part,
body.rme-tour-demo.rmb-force-viewport .wp-site-blocks>.wp-block-template-part[area="header"],
body.rme-tour-demo.rmb-force-viewport .wp-site-blocks>.wp-block-template-part[area="footer"]{display:none!important}
body.rme-tour-demo .rmt-desktop-header,body.rme-tour-demo .rmt-mobile-header,body.rme-tour-demo .rmt-footer{max-width:none!important;margin-inline:0!important}
/* Old imported tour footers occasionally carried a fashion eyebrow above
 * their real column title. Tour footers do not use decorative eyebrows. */
body.rme-tour-demo .rmt-footer :where(.rm-eyebrow,.rmt-eyebrow){display:none!important}


/* REME 5.7 — structural full-width authority.
   Every row that is configured Full or Stretch now receives rmb-row-fullwidth +
   rmb-row-in-full in the rendered HTML. These selectors intentionally beat the
   historical generic multi-column/boxed rules. */
.rmb-fullwidth-region,
.rmb-row-fullwidth,
.rmb-row-full,
.rmb-row-stretch{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important}
.rmb-row-fullwidth>.rmb-row-in,
.rmb-row-full>.rmb-row-in,
.rmb-row-stretch>.rmb-row-in,
.rmb-row-in-full{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important}
.rmb-row-full>.rmb-row-in{padding-left:0!important;padding-right:0!important}
.rmb-row-stretch>.rmb-row-in{padding-left:clamp(16px,2.2vw,40px)!important;padding-right:clamp(16px,2.2vw,40px)!important}
.rmb-row-boxed>.rmb-row-in,.rmb-row-in-boxed{margin-left:auto!important;margin-right:auto!important}
body.rme-tour-demo .rmt-desktop-header .rmb-row-fullwidth>.rmb-row-in,
body.rme-tour-demo .rmt-mobile-header .rmb-row-fullwidth>.rmb-row-in,
body.rme-tour-demo .rmt-footer .rmb-row-fullwidth>.rmb-row-in{width:100%!important;max-width:none!important;padding-left:clamp(18px,3vw,56px)!important;padding-right:clamp(18px,3vw,56px)!important}
body.rme-tour-demo main.rmb-canvas-main>.rmb-content>.rmb-row-fullwidth>.rmb-row-in{width:100%!important;max-width:none!important;margin:0!important}
@media(max-width:767px){
  .rmb-row-stretch>.rmb-row-in{padding-left:14px!important;padding-right:14px!important}
  body.rme-tour-demo .rmt-desktop-header .rmb-row-fullwidth>.rmb-row-in,
  body.rme-tour-demo .rmt-mobile-header .rmb-row-fullwidth>.rmb-row-in,
  body.rme-tour-demo .rmt-footer .rmb-row-fullwidth>.rmb-row-in{padding-left:14px!important;padding-right:14px!important}
}

/* ====================================================================
   REME 8.0 — header behaviours, header-builder items, footer builder
   ==================================================================== */
/* the top bar slides away once the page is scrolled (the header keeps its place in the layout) */
.rmt.is-topaway.is-scrolled:not(.is-hidden){transform:translateY(calc(var(--rmt-top-h,0px) * -1))}
/* the main row gives up a few pixels once scrolled; the margin keeps the page from jumping */
.rmt.is-shrink .rmt-hb-main,.rmt.is-shrink .rf-logo-a,.rmt.is-shrink .rf-logo-img{transition:padding .3s cubic-bezier(.2,.7,.2,1),transform .3s cubic-bezier(.2,.7,.2,1),max-height .3s}
.rmt.is-shrink.is-scrolled .rmt-hb-main{padding-top:calc(var(--rmt-pad,16px) - var(--rmt-shrink,0px))!important;padding-bottom:calc(var(--rmt-pad,16px) - var(--rmt-shrink,0px))!important}
.rmt.is-shrink.is-scrolled:not(.is-transparent):not(.is-float){margin-bottom:calc(var(--rmt-shrink,0px) * 2)}
.rmt.is-shrink.is-scrolled .rf-logo-a{transform:scale(.9);transform-origin:0 50%}
[dir=rtl] .rmt.is-shrink.is-scrolled .rf-logo-a{transform-origin:100% 50%}
/* frosted glass once scrolled */
.rmt.is-glass.is-scrolled{background:color-mix(in srgb,var(--rmt-sbg,#fff) 76%,transparent)!important;-webkit-backdrop-filter:saturate(1.5) blur(14px);backdrop-filter:saturate(1.5) blur(14px)}
.rmt.is-glass.is-scrolled .rmb-row,.rmt.is-glass.is-scrolled .rm-w{background:transparent!important}
@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.rmt.is-glass.is-scrolled{background:var(--rmt-sbg,#fff)!important}}
/* floating header: a rounded bar detached from the edges */
body .rmt-header.is-float,body.rmb-page .rmt-header.is-float,body .rmt-mobile_header.is-float,body.rmb-page .rmt-mobile_header.is-float{width:min(var(--rmt-float-w,1320px),calc(100% - 24px))!important;max-width:none!important;margin:12px auto 0!important;border-radius:18px;box-shadow:0 14px 40px -22px rgba(0,0,0,.4),0 0 0 1px rgba(0,0,0,.05)}
.rmt.is-float.rmt-sticky-sticky,.rmt.is-float.rmt-sticky-smart{top:calc(var(--wp-admin--admin-bar--height,0px) + 12px)}
.rmt.is-float.is-transparent{inset-inline:12px;width:auto!important;margin-inline:auto!important}
body .rmt.is-float.is-transparent.is-transparent{margin-top:0!important;top:calc(var(--wp-admin--admin-bar--height,0px) + 12px)}
.rmt.is-float>.rmb-content{border-radius:inherit;overflow:visible}
.rmt.is-float .rmb-row:first-of-type{border-start-start-radius:18px;border-start-end-radius:18px}
.rmt.is-float .rmb-row:last-of-type{border-end-start-radius:18px;border-end-end-radius:18px}
.rmt.is-float.is-topaway.is-scrolled:not(.is-hidden){transform:none}
@media (max-width:767px){body .rmt.is-float{margin-top:8px!important;border-radius:14px}.rmt.is-float .rmb-row:first-of-type{border-start-start-radius:14px;border-start-end-radius:14px}.rmt.is-float .rmb-row:last-of-type{border-end-start-radius:14px;border-end-end-radius:14px}}
/* reading progress */
.rmt-progress{position:absolute;inset-inline:0;bottom:0;height:3px;z-index:3;pointer-events:none;overflow:hidden;border-radius:inherit}
.rmt-progress>i{display:block;height:100%;background:var(--rm-accent,var(--rm-gold,#00949F));transform:scaleX(0);transform-origin:0 50%;will-change:transform}
[dir=rtl] .rmt-progress>i{transform-origin:100% 50%}
/* phones: a long text logo gives way (…) instead of running under the buttons beside it; header buttons get compact */
@media (max-width:767px){
  /* in the row of the logo, the logo's zone is the one that gives way; buttons and icons keep their size */
  .rmt .rmb-row.rmb-inline-m:has(.rmw-site-logo) .rmb-col:not(:has(.rmw-site-logo)){flex-shrink:0!important}
  .rmt .rmb-row.rmb-inline-m .rmb-col:has(.rmw-site-logo){flex:1 1 0!important;min-width:0}
  .rmt .rmb-row.rmb-inline-m .rmb-col-in>.rmw-site-logo{flex:0 1 auto;min-width:0;max-width:100%}
  .rmt .rmb-row.rmb-inline-m .rmw-site-logo .rm-container,.rmt .rmb-row.rmb-inline-m .rf-logo,.rmt .rmb-row.rmb-inline-m .rf-logo-txt{min-width:0;max-width:100%}
  .rmt .rmb-row.rmb-inline-m .rf-logo-a{display:flex;min-width:0;max-width:100%}
  .rmt .rmb-row.rmb-inline-m .rf-logo-name{overflow:hidden;text-overflow:ellipsis}
  .rmt .rmb-row.rmb-inline-m .rf-logo-mono,.rmt .rmb-row.rmb-inline-m .rf-logo-img{flex:none}
  .rmt .rmb-row.rmb-inline-m .rpa-ab .rpa-ab-ic{display:none}
  .rmt .rmb-row.rmb-inline-m .rpa-ab .rm-btn{padding-inline:14px;white-space:nowrap}
}
/* 8.0: a menu that runs out of room first gets two chances (rm-theme.js): "is-roomy" on its row — the logo
   and the icons take only the room they need and the menu gets the rest — then "is-snug" — the links move a
   little closer together. Only if it still does not fit does it become its ☰ button ("is-tight"). */
.rmt .rmb-row.is-roomy>.rmb-row-in{flex-wrap:nowrap!important;align-items:center}
.rmt .rmb-row.is-roomy>.rmb-row-in>.rmb-col{flex:0 0 auto!important;width:auto!important;max-width:none!important;min-width:0}
.rmt .rmb-row.is-roomy>.rmb-row-in>.rmb-col>.rmb-col-in{container-type:normal!important}
.rmt .rmb-row.is-roomy>.rmb-row-in>.rmb-col:has(.rf-nav-h){flex:1 1 0!important}
.rmt .rmb-row.is-roomy .rmb-col-row>.rmb-col-in{flex-wrap:nowrap}
.rmt .rf-nav.is-snug .rf-nav-list{gap:0!important}
.rmt .rm-w.rm-w.rm-w .rf-nav.is-snug .rf-nav-list>.rf-nav-li>.rf-nav-a{padding-inline:8px;font-size:calc(var(--rf-fs,15px) * .94);letter-spacing:0}
.rmt .rf-nav.is-tight .rf-nav-bar{display:none!important}
.rmt .rf-nav.is-tight .rf-burger{display:inline-flex!important}
/* …and the row is then laid out like the tablet header: the logo takes the free space, the ☰ button and the
   icons sit together at the end (it used to stay in the middle of the menu's wide column). */
.rmt .rmb-row:has(.rf-nav.is-tight)>.rmb-row-in{flex-wrap:nowrap!important;align-items:center}
.rmt .rmb-row:has(.rf-nav.is-tight)>.rmb-row-in>.rmb-col{flex:0 1 auto!important;width:auto!important;max-width:none!important;min-width:0}
.rmt .rmb-row:has(.rf-nav.is-tight)>.rmb-row-in>.rmb-col>.rmb-col-in{container-type:normal!important}
.rmt .rmb-row:has(.rf-nav.is-tight) .rmb-col-row>.rmb-col-in{flex-wrap:nowrap}
.rmt .rmb-row:has(.rf-nav.is-tight)>.rmb-row-in>.rmb-col:has(.rmw-site-logo){flex:1 1 0!important}
.rmt .rmb-row:has(.rf-nav.is-tight):not(:has(.rmw-site-logo))>.rmb-row-in>.rmb-col:first-child{flex:1 1 0!important}
/* header builder: divider item */
.rmt-hb-div{display:block;width:1px;height:22px;background:currentColor;opacity:.22;margin-inline:2px}
@media (prefers-reduced-motion:reduce){.rmt-sticky-sticky,.rmt-sticky-smart,.rmt.is-shrink .rmt-hb-main,.rmt.is-shrink .rf-logo-a{transition:none!important}}

/* ---------- footer builder ---------- */
.rmt-footer .rmt-fb-panel{display:flex;flex-direction:column;min-width:0}
.rmt-footer .rmt-fb-panel[hidden]{display:none!important}
.rmt-footer .rmt-fb-tg{all:unset;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;box-sizing:border-box;cursor:pointer;font:inherit;color:inherit;min-height:44px}
.rmt-footer .rmt-fb-tg::after{content:"";flex:none;width:9px;height:9px;border-inline-end:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .25s;opacity:.7;margin-inline-end:4px}
.rmt-footer .rmt-fb-acc.is-open .rmt-fb-tg::after{transform:rotate(-135deg)}
.rmt-footer .rmt-fb-tg:focus-visible{outline:2px solid currentColor;outline-offset:2px;border-radius:6px}
@media (max-width:767px){
  .rmt-footer .rmt-fb-acc.is-ready{border-bottom:1px solid color-mix(in srgb,currentColor 16%,transparent)}
  .rmt-footer .rmt-fb-acc.is-ready .rm-w{padding-block:0!important}
  .rmt-footer .rmt-fb-acc.is-ready .rpa-ah,.rmt-footer .rmt-fb-acc.is-ready .rpa-ah-in,.rmt-footer .rmt-fb-acc.is-ready .rpa-ah-t{width:100%;max-width:none}
  .rmt-footer .rmt-fb-acc.is-ready .rmt-fb-panel{padding-bottom:14px}
}
/* items of a band / bottom bar share the line and wrap instead of running into each other */
.rmt-footer .rmt-fb-z>.rmb-col-in{flex-wrap:wrap;row-gap:10px}
.rmt-footer .rmt-fb-z>.rmb-col-in>*{flex:0 1 auto;min-width:0;max-width:100%}
.rmt-footer .rmt-fb-z .rf-ci-b{text-align:start}
@media (max-width:767px){
  .rmt-footer .rmt-fb-z>.rmb-col-in{justify-content:center;text-align:center}
  .rmt-footer .rmt-fb-z .rf-copy,.rmt-footer .rmt-fb-z .rf-ci-list,.rmt-footer .rmt-fb-z .rf-copy-l{justify-content:center}
  .rmt-footer .rmt-fb-z .rf-ci-list{align-items:center}
  .rmt-footer .rmt-fb-z .rf-ci-a{justify-content:center;text-align:center}
  .rmt-footer .rmt-fb-z .rf-ci-b{align-items:center}
  .rmt-footer .rmt-fb-top .rmb-row-in,.rmt-footer .rmt-fb-bottom .rmb-row-in{row-gap:14px}
}
/* "back to top" link of the footer builder */
.rmt-fb-totop{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid color-mix(in srgb,currentColor 24%,transparent);color:inherit;font:600 13px/1 var(--rm-font-h,inherit);text-decoration:none;white-space:nowrap;transition:background .2s,transform .2s}
.rmt-fb-totop:hover{background:color-mix(in srgb,currentColor 10%,transparent);transform:translateY(-2px)}
.rmt-fb-totop:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.rmt-fb-totop svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rmt-fb-rule{display:block;width:100%;height:1px;border:0;background:currentColor;opacity:.16;margin:6px 0}
/* header builder: rotating messages sit inside a row, without their own bar */
.rmt .rmt-hb-ticker .rpr-tb{background:transparent!important;min-height:30px;padding:0}
.rmt .rmt-hb-ticker .rpr-tb-in{max-width:none}
.rmt .rmt-hb-ticker .rpr-tb-msg{padding:3px 0;white-space:nowrap}
@media (max-width:600px){.rmt .rmt-hb-ticker .rpr-tb-msg{white-space:normal}}
/* a phone header that carries a bottom bar leaves room for it */
@media (max-width:767px){body.rmt-has-mobile-header:has(.rmt-hb-tabbar){padding-bottom:calc(70px + env(safe-area-inset-bottom,0px))}}
.rmt .rmt-hb-tabbar{padding:0!important;min-height:0}
/* footer builder: the sign-up form has no card of its own; stacked inside a column, one line inside a band */
.rmt-footer .rmt-fb-news .rm-container{padding-inline:0;max-width:none}
.rmt-footer .rmt-fb-news .rmd-nl-body{padding:0;background:none;border:0;box-shadow:none;border-radius:0;gap:10px;align-items:stretch;text-align:start}
.rmt-footer .rmt-fb-news .rmd-nl-text:empty{display:none}
.rmt-footer .rmt-fb-news .rmd-nl-side{max-width:none}
.rmt-footer .rmt-fb-news .rmd-nl-note{justify-content:flex-start}
.rmt-footer .rmt-fb-news .rmd-nl-form{background:#fff;border-color:rgba(17,24,39,.16)}
.rmt-footer .rmt-fb-news .rmd-nl-field{color:#4B5563}
.rmt-footer .rmt-fb-news .rmd-nl-field input{color:#111827}
.rmt-footer .rmt-fb-news .rmd-nl-field input::placeholder{color:#6B7280;opacity:1}
.rmt-footer .rmt-fb-col .rmt-fb-news .rmd-nl-form{flex-direction:column;align-items:stretch;border-radius:14px;gap:6px}
.rmt-footer .rmt-fb-col .rmt-fb-news .rmd-nl-btn{width:100%;border-radius:10px}
.rmt-footer .rmt-fb-z .rmt-fb-news{flex:1 1 360px;max-width:480px;min-width:0}
@media (max-width:767px){.rmt-footer .rmt-fb-z .rmt-fb-news{flex-basis:100%;max-width:none}}

/* ====================================================================
   REME 8.0 — page width that respects the scrollbar
   100vw / 100dvw include the scrollbar, so the old "left:50%; margin-left:-50vw" breakout moved the
   whole page half a scrollbar to the left and cut both edges on desktop browsers with a classic
   scrollbar (Windows, most Linux). --rmb-sbw is the scrollbar width, set by rm-frontend.js.
   ==================================================================== */
:root{--rmb-sbw:0px}
/* canvas template: header, content and footer are direct children of <body> — nothing to break out of */
body.rmb-canvas main.rmb-canvas-main>.rmb-content,
body.rmb-canvas.rme-demo-page main.rmb-canvas-main>.rmb-content,
body.rmb-canvas.rmb-twenty-twenty-five.rme-demo-page main.rmb-canvas-main>.rmb-content{
  left:auto!important;right:auto!important;width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important
}
body.rmb-canvas.rmb-page>.rmt-desktop-header,body.rmb-canvas.rmb-page>.rmt-mobile-header,body.rmb-canvas.rmb-page>.rmt-footer,body.rmb-canvas.rmb-page>footer.rmt{
  width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important
}
/* inside a theme's own wrappers the breakout stays, minus the scrollbar */
body.rmb-full-width:not(.rmb-canvas) main.rmb-full-main>.rmb-content,
body.rme-demo-page:not(.rmb-canvas) main>.rmb-content,
body.rme-demo-page:not(.rmb-canvas) .entry-content>.rmb-content,
body.rme-demo-page:not(.rmb-canvas) .wp-block-post-content>.rmb-content,
body.rmb-twenty-twenty-five.rme-demo-page:not(.rmb-canvas) :where(.wp-block-post-content,.entry-content)>.rmb-content,
body.rmb-twenty-twenty-five.rme-demo-page:not(.rmb-canvas) main>.rmb-content{
  width:calc(100vw - var(--rmb-sbw,0px))!important;max-width:calc(100vw - var(--rmb-sbw,0px))!important;margin-left:calc(-50vw + var(--rmb-sbw,0px) / 2)!important
}
body.rmb-page:not(.rmb-canvas) .rmt-desktop-header,body.rmb-page:not(.rmb-canvas) .rmt-mobile-header,body.rmb-page:not(.rmb-canvas) .rmt-footer,body.rmb-page:not(.rmb-canvas) footer.rmt{
  width:calc(100vw - var(--rmb-sbw,0px))!important;max-width:calc(100vw - var(--rmb-sbw,0px))!important;margin-left:calc(50% - 50vw + var(--rmb-sbw,0px) / 2)!important
}
/* the header fills its wrapper — it must not break out a second time (a floating header keeps its own width) */
body.rmb-page .rmt-desktop-header>.rmt-header:not(.is-float),body.rmb-page .rmt-mobile-header>.rmt-mobile_header:not(.is-float){
  width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important
}

/* ====================================================================
   REME 8.0 — sticky headers really stick
   A sticky element can only stick inside its parent. The header sat alone in a wrapper exactly as tall
   as itself, so "always sticks to the top" and "hides on scroll down, shows on scroll up" scrolled away
   with the page. The wrapper of a sticky header now generates no box of its own.
   ==================================================================== */
.rmt-desktop-header:has(>.rmt-sticky-sticky,>.rmt-sticky-smart){display:contents!important}
@media (max-width:767px){
  .rmt-has-mobile-header .rmt-desktop-header:has(>.rmt-sticky-sticky,>.rmt-sticky-smart){display:none!important}
  .rmt-has-mobile-header .rmt-mobile-header:has(>.rmt-sticky-sticky,>.rmt-sticky-smart){display:contents!important}
}
/* without its wrapper's box the header does the theme breakout itself */
body.rmb-page:not(.rmb-canvas) .rmt-desktop-header:has(>.rmt-sticky-sticky,>.rmt-sticky-smart)>.rmt-header:not(.is-float),
body.rmb-page:not(.rmb-canvas) .rmt-mobile-header:has(>.rmt-sticky-sticky,>.rmt-sticky-smart)>.rmt-mobile_header:not(.is-float){
  width:calc(100vw - var(--rmb-sbw,0px))!important;max-width:calc(100vw - var(--rmb-sbw,0px))!important;margin-left:calc(50% - 50vw + var(--rmb-sbw,0px) / 2)!important
}
/* a transparent phone header behaves like the desktop one */
.rmt-mobile_header .rmb-row{overflow:visible}
.rmt-mobile_header .rmb-col-in{container-type:normal}
.rmt-mobile_header.is-transparent{position:absolute;inset-inline:0;top:var(--wp-admin--admin-bar--height,0px)}
.rmt-mobile_header.is-transparent .rmb-row,.rmt-mobile_header.is-transparent .rm-w{background:transparent!important}
.rmt-mobile_header.is-transparent.rmt-sticky-sticky,.rmt-mobile_header.is-transparent.rmt-sticky-smart{position:fixed}
.rmt-mobile_header.is-transparent.is-scrolled{background:var(--rmt-sbg,#fff)}
.rmt-mobile_header.is-transparent:not(.is-scrolled) .rf{--rf-c:#fff;--rf-m:rgba(255,255,255,.8)}
.rmt-mobile_header.is-transparent:not(.is-scrolled) .rwc-mc-btn{color:#fff!important}
