:root{--rbb-navy:#0A1A2F;--rbb-midnight:#12233F;--rbb-gold:#CF9F55;--rbb-warm:#C8A55A;--rbb-champ:#E6DCC1;--rbb-stone:#F5F2EC;--rbb-ink:#1a1a1a;--rbb-serif:'Cormorant Garamond',Georgia,serif;--rbb-sans:'Barlow',system-ui,sans-serif}
.rbb-wrap{width:min(1240px,calc(100% - 48px));margin:0 auto}.rbb-hero{min-height:56vh;display:flex;align-items:flex-end;padding:0 0 64px!important;background:linear-gradient(rgba(10,26,47,.38),rgba(10,26,47,.8)),url('https://dsbpremierconstruction-new.netlify.app/img/ai/hero-timber-dusk.jpg') center/cover;color:#fff}.rbb-hero-row{margin-top:auto!important}.rbb-eyebrow,.rbb-eyebrow p{font-family:var(--rbb-sans)!important;font-size:12px!important;letter-spacing:3.5px!important;text-transform:uppercase;color:var(--rbb-warm)!important;font-weight:500;margin:0 0 22px!important}.rbb-hero h1{font:600 clamp(44px,6.2vw,78px)/1.15 var(--rbb-serif)!important;color:#fff!important;margin:0!important}.rbb-hero-copy p{color:var(--rbb-champ)!important;font:300 19px/1.7 var(--rbb-sans)!important;max-width:600px;margin:18px 0 0!important}.rbb-dynamic-journal,.rbb-full-row,.rbb-shortcode-module{padding:0!important;margin:0!important;max-width:none!important;width:100%!important}.rbb-shortcode-module .et_pb_module_inner>p{margin:0}.rbb-featured,.rbb-listing{padding:100px 0}.rbb-featured{background:var(--rbb-stone)}.rbb-feat-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center}.rbb-imgwrap{overflow:hidden}.rbb-imgwrap img{width:100%;height:460px;object-fit:cover;display:block;transition:transform .8s}.rbb-imgwrap:hover img{transform:scale(1.05)}.rbb-win-cut{clip-path:polygon(0 0,100% 0,100% 86%,88% 100%,0 100%)}.rbb-feat-meta{display:flex;gap:16px;align-items:center;margin-bottom:20px}.rbb-chip{font:600 11px var(--rbb-sans);letter-spacing:1.5px;text-transform:uppercase;color:var(--rbb-navy);background:var(--rbb-gold);padding:6px 14px;border-radius:30px}.rbb-date{font:400 12px var(--rbb-sans);letter-spacing:1.5px;text-transform:uppercase;color:#8a8a8a}.rbb-feat-grid h2{font:600 clamp(30px,4vw,46px)/1.12 var(--rbb-serif);margin:0 0 18px}.rbb-feat-grid h2 a,.rbb-post h3{color:var(--rbb-navy);text-decoration:none}.rbb-feat-grid p{color:#555;font:300 17px/1.7 var(--rbb-sans);margin:0 0 30px}.rbb-readlink{font:600 12px var(--rbb-sans);letter-spacing:2px;text-transform:uppercase;color:var(--rbb-gold);text-decoration:none}.rbb-listing{background:#fff}.rbb-bg-iso{background-image:linear-gradient(30deg,rgba(207,159,85,.035) 12%,transparent 12.5%,transparent 87%,rgba(207,159,85,.035) 87.5%,rgba(207,159,85,.035)),linear-gradient(150deg,rgba(207,159,85,.035) 12%,transparent 12.5%,transparent 87%,rgba(207,159,85,.035) 87.5%,rgba(207,159,85,.035));background-size:80px 140px}.rbb-sec-head{max-width:640px;margin-bottom:56px}.rbb-sec-head h2{font:600 clamp(30px,4vw,44px)/1.15 var(--rbb-serif);color:var(--rbb-navy);margin:0}.rbb-sec-head p{font:300 17px/1.7 var(--rbb-sans);color:#555;margin:12px 0 0}.rbb-cats{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:50px}.rbb-cats button,.rbb-btn{font:500 12px var(--rbb-sans);letter-spacing:1.5px;text-transform:uppercase;color:var(--rbb-navy);background:none;border:1px solid rgba(10,26,47,.16);padding:9px 20px;border-radius:30px;cursor:pointer}.rbb-cats button.on,.rbb-cats button:hover{background:var(--rbb-navy);color:#fff;border-color:var(--rbb-navy)}.rbb-cat-status{font:400 12px var(--rbb-sans);letter-spacing:1.5px;text-transform:uppercase;color:#7b7b7b;margin:-34px 0 34px;min-height:18px}.rbb-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.rbb-post{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(10,26,47,.08);overflow:hidden;text-decoration:none;transition:.4s}.rbb-post:hover{transform:translateY(-8px);box-shadow:0 22px 60px rgba(10,26,47,.13);border-color:transparent}.rbb-ph{height:220px;overflow:hidden}.rbb-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s}.rbb-post:hover .rbb-ph img{transform:scale(1.06)}.rbb-pb{padding:28px 28px 32px;display:flex;flex-direction:column;flex:1}.rbb-pm{display:flex;gap:12px;align-items:center;margin-bottom:14px}.rbb-c{font:600 10.5px var(--rbb-sans);letter-spacing:1.5px;text-transform:uppercase;color:var(--rbb-warm)}.rbb-d{font:400 11px var(--rbb-sans);letter-spacing:1px;text-transform:uppercase;color:#a0a0a0}.rbb-post h3{font:600 23px/1.2 var(--rbb-serif);margin:0 0 12px}.rbb-post p{font:300 15px/1.7 var(--rbb-sans);color:#666;margin:0 0 20px;flex:1}.rbb-post .rbb-readlink{font-size:11.5px}.rbb-more-wrap{display:none;text-align:center;margin-top:34px}.rbb-count{display:block;margin-top:12px;font:400 11px var(--rbb-sans);letter-spacing:2px;text-transform:uppercase;color:#8b8b8b}.rbb-news,.rbb-cta{padding:100px 0!important;text-align:center;color:#fff;background-color:var(--rbb-navy)}.rbb-bg-diag{background-image:repeating-linear-gradient(28deg,transparent 0,transparent 28px,rgba(207,159,85,.08) 29px,transparent 30px)}.rbb-news h2,.rbb-cta h2{font:600 clamp(28px,3.6vw,42px)/1.15 var(--rbb-serif)!important;color:#fff!important;margin:0 0 16px!important}.rbb-news-content>div>p,.rbb-news-content p,.rbb-cta-copy p{font:300 17px/1.7 var(--rbb-sans)!important;color:var(--rbb-champ)!important;max-width:560px;margin:0 auto 34px!important}.rbb-news-form{display:flex;gap:12px;max-width:520px;margin:0 auto;justify-content:center}.rbb-news-form input{flex:1;min-width:240px;background:rgba(255,255,255,.06);border:1px solid rgba(207,159,85,.3);color:#fff;padding:16px 20px;font:400 14px var(--rbb-sans)}.rbb-btn-solid{display:inline-block;background:var(--rbb-gold);color:var(--rbb-navy)!important;border:1px solid var(--rbb-gold);border-radius:0;padding:17px 38px;text-decoration:none}.rbb-proof{padding:64px 0!important;background:var(--rbb-stone);text-align:center}.rbb-stars p{color:var(--rbb-gold)!important;font-size:20px!important;letter-spacing:3px;margin:0 0 16px!important}.rbb-proof-copy p{font:300 14px var(--rbb-sans)!important;color:#666!important}.rbb-proof-copy a{color:var(--rbb-navy)}.rbb-proof-badges{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:24px}.rbb-proof-badges img{height:46px;width:auto;object-fit:contain;background:#fff;padding:6px 10px;border-radius:4px;box-shadow:0 4px 16px rgba(10,26,47,.08)}.rbb-cta{background:linear-gradient(rgba(10,26,47,.7),rgba(10,26,47,.84)),url('https://dsbpremierconstruction-new.netlify.app/img/ai/cta-dusk-pool.jpg') center/cover}.rbb-cta h2{font-size:clamp(32px,4.5vw,50px)!important;max-width:720px;margin:0 auto 26px!important}.rbb-cta-copy p{font-size:18px!important;margin-bottom:40px!important}
@media(max-width:900px){.rbb-feat-grid,.rbb-post-grid{grid-template-columns:1fr;gap:34px}.rbb-featured,.rbb-listing,.rbb-news,.rbb-cta{padding:64px 0!important}.rbb-feat-grid img{height:300px}.rbb-post-grid.is-clamped .rbb-post:nth-child(n+7){display:none}.rbb-post-grid.is-clamped+.rbb-more-wrap{display:block}}
@media(max-width:600px){.rbb-wrap{width:calc(100% - 48px)}.rbb-hero{min-height:auto;padding:132px 0 52px!important;align-items:flex-start}.rbb-hero-copy p{font-size:16px!important}.rbb-post-grid{gap:20px}.rbb-ph{height:168px}.rbb-pb{padding:20px 22px 24px}.rbb-post h3{font-size:19.5px}.rbb-cats{gap:9px;margin-bottom:32px}.rbb-cats button{font-size:11px;padding:7px 15px}.rbb-feat-grid img{height:250px}.rbb-proof{padding:44px 0!important}.rbb-proof-badges{gap:10px}.rbb-proof-badges img{height:42px;padding:6px 10px}.rbb-news-form{flex-direction:column}.rbb-news-form input{min-width:0}}

/* 0.2.2 — direct Blog landing template. */
.rbb-blog-page{background:#fff;color:var(--rbb-ink);font-family:var(--rbb-sans);font-weight:300;overflow-x:clip}
.rbb-blog-page .rbb-hero{min-height:56vh;padding:0 0 64px!important;display:flex;align-items:flex-end}
.rbb-blog-page .rbb-hero-inner{padding:0!important}
.rbb-blog-page .rbb-hero h1{font:600 clamp(44px,6.2vw,78px)/1.15 var(--rbb-serif)!important;color:#fff!important;margin:0!important;letter-spacing:.3px}
.rbb-blog-page .rbb-hero> .rbb-wrap>p{color:var(--rbb-champ);font:300 19px/1.7 var(--rbb-sans);max-width:600px;margin:18px 0 0}
.rbb-blog-page .rbb-news .rbb-eyebrow{margin-bottom:14px!important}
.rbb-blog-page .rbb-proof-pattern{background-color:var(--rbb-stone);background-image:linear-gradient(30deg,rgba(207,159,85,.035) 12%,transparent 12.5%,transparent 87%,rgba(207,159,85,.035) 87.5%),linear-gradient(150deg,rgba(207,159,85,.035) 12%,transparent 12.5%,transparent 87%,rgba(207,159,85,.035) 87.5%);background-size:80px 140px}
.rbb-blog-page .rbb-stars{color:var(--rbb-gold);font-size:20px;letter-spacing:3px;margin:0 0 16px}
.rbb-blog-page .rbb-proof-text{font:300 14px/1.6 var(--rbb-sans);color:#666;margin:0}
.rbb-blog-page .rbb-proof-text a{color:var(--rbb-navy);text-decoration:underline;text-underline-offset:3px}
.rbb-blog-page .rbb-news> .rbb-wrap>p,.rbb-blog-page .rbb-cta> .rbb-wrap>p{font:300 17px/1.7 var(--rbb-sans);color:var(--rbb-champ);max-width:560px;margin:0 auto 34px}
.rbb-blog-page .rbb-cta> .rbb-wrap>p{font-size:18px;margin-bottom:40px}

@media(max-width:600px){
 .rbb-blog-page .rbb-hero{min-height:auto;padding:132px 0 52px!important;align-items:flex-start}
 .rbb-blog-page .rbb-hero> .rbb-wrap>p{font-size:16px}
}
\n\n/* 0.2.3 — Divi 5 landing page alignment. */
body.rbb-journal-page .rbb-wrap,
body.rbb-journal-page .rbb-featured .rbb-wrap,
body.rbb-journal-page .rbb-listing .rbb-wrap,
body.rbb-journal-page .rbb-news .rbb-wrap,
body.rbb-journal-page .rbb-proof .rbb-wrap,
body.rbb-journal-page .rbb-cta .rbb-wrap{
 width:min(1240px,calc(100% - 48px))!important;
 max-width:1240px!important;
 margin-left:auto!important;
 margin-right:auto!important;
}
body.rbb-journal-page .rbb-hero-row{
 width:min(650px,calc(100% - 48px))!important;
 max-width:650px!important;
 margin-left:auto!important;
 margin-right:auto!important;
}
body.rbb-journal-page .rbb-dynamic-journal,
body.rbb-journal-page .rbb-full-row,
body.rbb-journal-page .rbb-shortcode-module,
body.rbb-journal-page .rbb-shortcode{
 width:100%!important;
 max-width:none!important;
 margin-left:0!important;
 margin-right:0!important;
 padding-left:0!important;
 padding-right:0!important;
}
body.rbb-journal-page .rbb-dynamic-journal>.et_pb_row,
body.rbb-journal-page .rbb-dynamic-journal .et_pb_column,
body.rbb-journal-page .rbb-dynamic-journal .et_pb_module{
 max-width:none!important;
}
@media(max-width:600px){
 body.rbb-journal-page .rbb-wrap,
 body.rbb-journal-page .rbb-hero-row{width:calc(100% - 48px)!important;max-width:none!important}
}

/* =========================================================
   0.3.0 — BLOG LANDING: 100% NATIVE DIVI 5 MODULE LAYOUT
   The Blog page itself contains no PHP template override and no
   [dsb_journal] shortcode. Every visible block is a Divi 5 module.
   ========================================================= */
body.rbb-journal-page{overflow-x:clip;background:#fff}
body.rbb-journal-page #main-content{background:#fff}
body.rbb-journal-page .rbb-native-wrap.et_pb_row,
body.rbb-journal-page .rbb-native-wrap{
  width:min(1240px,calc(100% - 48px))!important;
  max-width:1240px!important;
  margin-left:auto!important;margin-right:auto!important;
  padding-left:0!important;padding-right:0!important;
}
body.rbb-journal-page .rbb-native-eyebrow p{
  margin:0!important;font:500 12px/1.4 var(--rbb-sans)!important;
  letter-spacing:3.5px!important;text-transform:uppercase;color:var(--rbb-warm)!important;
}
body.rbb-journal-page .rbb-native-eyebrow p:before{
  content:"";display:inline-block;width:42px;height:1px;background:var(--rbb-gold);
  margin:0 18px 4px 0;vertical-align:middle;
}

/* Hero */
body.rbb-journal-page .rbb-native-hero{
  position:relative!important;isolation:isolate;overflow:hidden!important;
  min-height:56vh;display:flex!important;align-items:flex-end!important;
  padding:0 0 64px!important;background:var(--rbb-navy);color:#fff;
}
body.rbb-journal-page .rbb-native-hero:after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(rgba(10,26,47,.38),rgba(10,26,47,.80));
}
body.rbb-journal-page .rbb-native-bg-row,
body.rbb-journal-page .rbb-native-bg-row.et_pb_row{
  position:absolute!important;inset:0!important;width:100%!important;max-width:none!important;
  height:100%!important;margin:0!important;padding:0!important;z-index:0!important;
}
body.rbb-journal-page .rbb-native-bg-row>.et_pb_column,
body.rbb-journal-page .rbb-native-bg-row>.et_pb_column>.et_pb_module,
body.rbb-journal-page .rbb-native-bg-row .rbb-native-bg-image,
body.rbb-journal-page .rbb-native-bg-row .rbb-native-bg-image .et_pb_image_wrap{
  width:100%!important;height:100%!important;margin:0!important;max-width:none!important;
}
body.rbb-journal-page .rbb-native-bg-image img{
  width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;
}
body.rbb-journal-page .rbb-native-hero-content,
body.rbb-journal-page .rbb-native-hero-content.et_pb_row{
  position:relative!important;z-index:2!important;width:min(650px,calc(100% - 48px))!important;
  max-width:650px!important;margin:0 auto!important;padding:0!important;
}
body.rbb-journal-page .rbb-native-hero-eyebrow{margin-bottom:22px!important}
body.rbb-journal-page .rbb-native-hero-title h1{
  margin:0!important;color:#fff!important;font:600 clamp(44px,6.2vw,78px)/1.15 var(--rbb-serif)!important;
  letter-spacing:.3px!important;
}
body.rbb-journal-page .rbb-native-hero-copy p{
  max-width:600px;margin:18px 0 0!important;color:var(--rbb-champ)!important;
  font:300 19px/1.7 var(--rbb-sans)!important;
}

/* Featured article */
body.rbb-journal-page .rbb-native-featured{padding:100px 0!important;background:var(--rbb-stone)!important}
body.rbb-journal-page .rbb-native-featured-row,
body.rbb-journal-page .rbb-native-featured-row.et_pb_row{
  display:grid!important;grid-template-columns:1.15fr 1fr!important;gap:60px!important;align-items:center!important;
  width:min(1240px,calc(100% - 48px))!important;max-width:1240px!important;margin:0 auto!important;padding:0!important;
}
body.rbb-journal-page .rbb-native-featured-row>.et_pb_column{width:auto!important;margin:0!important;min-width:0!important}
body.rbb-journal-page .rbb-native-featured-image{margin:0!important;overflow:hidden!important;clip-path:polygon(0 0,100% 0,100% 86%,88% 100%,0 100%)}
body.rbb-journal-page .rbb-native-featured-image .et_pb_image_wrap{display:block!important;width:100%!important}
body.rbb-journal-page .rbb-native-featured-image img{
  display:block!important;width:100%!important;height:460px!important;object-fit:cover!important;transition:transform .8s ease!important;
}
body.rbb-journal-page .rbb-native-featured-image:hover img{transform:scale(1.05)}
body.rbb-journal-page .rbb-native-featured-meta p{display:flex!important;align-items:center!important;gap:16px!important;margin:0 0 20px!important}
body.rbb-journal-page .rbb-native-chip{
  display:inline-block;padding:6px 14px;border-radius:30px;background:var(--rbb-gold);color:var(--rbb-navy);
  font:600 11px/1.2 var(--rbb-sans);letter-spacing:1.5px;text-transform:uppercase;
}
body.rbb-journal-page .rbb-native-date{font:400 12px/1.2 var(--rbb-sans);letter-spacing:1.5px;text-transform:uppercase;color:#8a8a8a}
body.rbb-journal-page .rbb-native-featured-title h2{margin:0 0 18px!important;font:600 clamp(30px,4vw,46px)/1.12 var(--rbb-serif)!important;letter-spacing:.3px!important}
body.rbb-journal-page .rbb-native-featured-title a{color:var(--rbb-navy)!important;text-decoration:none!important}
body.rbb-journal-page .rbb-native-featured-excerpt p{margin:0 0 30px!important;color:#555!important;font:300 17px/1.7 var(--rbb-sans)!important}
body.rbb-journal-page .rbb-native-readlink p{margin:0!important}
body.rbb-journal-page .rbb-native-readlink a,
body.rbb-journal-page .rbb-native-card-link a{
  color:var(--rbb-gold)!important;text-decoration:none!important;font:600 11.5px/1.3 var(--rbb-sans)!important;
  letter-spacing:2px!important;text-transform:uppercase!important;
}

/* Listing + exact original isometric line field */
body.rbb-journal-page .rbb-native-listing{position:relative!important;isolation:isolate;padding:100px 0!important;background:#fff!important;overflow:hidden}
body.rbb-journal-page .rbb-native-listing:before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:repeating-linear-gradient(60deg,currentColor 0 1px,transparent 1px 74px),repeating-linear-gradient(-60deg,currentColor 0 1px,transparent 1px 74px),repeating-linear-gradient(0deg,currentColor 0 1px,transparent 1px 64px);
  color:var(--rbb-navy);opacity:.045;
  -webkit-mask-image:radial-gradient(ellipse 78% 66% at 50% 42%,#000 22%,transparent 76%);
  mask-image:radial-gradient(ellipse 78% 66% at 50% 42%,#000 22%,transparent 76%);
}
body.rbb-journal-page .rbb-native-listing-head{margin-bottom:56px!important}
body.rbb-journal-page .rbb-native-listing-head>.et_pb_column{max-width:640px!important}
body.rbb-journal-page .rbb-native-listing-head .rbb-native-eyebrow{margin-bottom:22px!important}
body.rbb-journal-page .rbb-native-listing-title h2{margin:0!important;color:var(--rbb-navy)!important;font:600 clamp(30px,4vw,44px)/1.15 var(--rbb-serif)!important}
body.rbb-journal-page .rbb-native-listing-copy p{margin:12px 0 0!important;color:#555!important;font:300 17px/1.7 var(--rbb-sans)!important}
body.rbb-journal-page .rbb-native-filter-row{margin-bottom:50px!important}
body.rbb-journal-page .rbb-native-filters,
body.rbb-journal-page .rbb-native-filters>.et_pb_module_inner{display:flex!important;flex-wrap:wrap!important;gap:12px!important;align-items:center!important}
body.rbb-journal-page .rbb-native-filter-btn{margin:0!important;width:auto!important}
body.rbb-journal-page .rbb-native-filter-btn .et_pb_button,
body.rbb-journal-page .rbb-native-filter-btn a.et_pb_button{
  display:inline-block!important;margin:0!important;padding:9px 20px!important;border:1px solid rgba(10,26,47,.16)!important;
  border-radius:30px!important;background:transparent!important;color:var(--rbb-navy)!important;box-shadow:none!important;
  font:500 12px/1.3 var(--rbb-sans)!important;letter-spacing:1.5px!important;text-transform:uppercase!important;
}
body.rbb-journal-page .rbb-native-filter-btn .et_pb_button:after{display:none!important}
body.rbb-journal-page .rbb-native-filter-btn:hover .et_pb_button,
body.rbb-journal-page .rbb-native-filter-btn.is-active .et_pb_button{background:var(--rbb-navy)!important;color:#fff!important;border-color:var(--rbb-navy)!important}
body.rbb-journal-page .rbb-native-filter-status p{min-height:18px;margin:-34px 0 34px!important;color:#7b7b7b!important;font:400 12px/1.4 var(--rbb-sans)!important;letter-spacing:1.5px;text-transform:uppercase}
body.rbb-journal-page .rbb-native-post-grid,
body.rbb-journal-page .rbb-native-post-grid>.et_pb_module_inner{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:30px!important;align-items:stretch!important}
body.rbb-journal-page .rbb-native-post-card{
  margin:0!important;background:#fff!important;border:1px solid rgba(10,26,47,.08)!important;overflow:hidden!important;
  min-width:0!important;transition:transform .4s ease,box-shadow .4s ease,border-color .4s ease!important;
}
body.rbb-journal-page .rbb-native-post-card>.et_pb_module_inner{height:100%!important;display:flex!important;flex-direction:column!important}
body.rbb-journal-page .rbb-native-post-card:hover{transform:translateY(-8px);box-shadow:0 22px 60px rgba(10,26,47,.13)!important;border-color:transparent!important}
body.rbb-journal-page .rbb-native-card-image{margin:0!important;overflow:hidden!important}
body.rbb-journal-page .rbb-native-card-image .et_pb_image_wrap{display:block!important;width:100%!important}
body.rbb-journal-page .rbb-native-card-image img{display:block!important;width:100%!important;height:220px!important;object-fit:cover!important;transition:transform .7s ease!important}
body.rbb-journal-page .rbb-native-post-card:hover .rbb-native-card-image img{transform:scale(1.06)}
body.rbb-journal-page .rbb-native-card-body{padding:28px 28px 32px!important;margin:0!important;flex:1!important}
body.rbb-journal-page .rbb-native-card-body>.et_pb_module_inner{display:flex!important;flex-direction:column!important;height:100%!important}
body.rbb-journal-page .rbb-native-card-meta p{display:flex!important;align-items:center!important;gap:12px!important;margin:0 0 14px!important;flex-wrap:wrap!important}
body.rbb-journal-page .rbb-native-card-cat{color:var(--rbb-warm);font:600 10.5px/1.3 var(--rbb-sans);letter-spacing:1.5px;text-transform:uppercase}
body.rbb-journal-page .rbb-native-card-date{color:#a0a0a0;font:400 11px/1.3 var(--rbb-sans);letter-spacing:1px;text-transform:uppercase}
body.rbb-journal-page .rbb-native-card-title h3{margin:0 0 12px!important;font:600 23px/1.2 var(--rbb-serif)!important;letter-spacing:.3px!important}
body.rbb-journal-page .rbb-native-card-title a{color:var(--rbb-navy)!important;text-decoration:none!important}
body.rbb-journal-page .rbb-native-card-excerpt{flex:1!important}
body.rbb-journal-page .rbb-native-card-excerpt p{margin:0 0 20px!important;color:#666!important;font:300 15px/1.7 var(--rbb-sans)!important}
body.rbb-journal-page .rbb-native-card-link p{margin:0!important}
body.rbb-journal-page .rbb-native-post-card.is-filtered{display:none!important}

/* Newsletter — exact diagonal treatment from the original shape system */
body.rbb-journal-page .rbb-native-news{position:relative!important;isolation:isolate;padding:100px 0!important;text-align:center!important;background:var(--rbb-navy)!important;color:#fff!important;overflow:hidden}
body.rbb-journal-page .rbb-native-news:before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:repeating-linear-gradient(24deg,currentColor 0 1px,transparent 1px 26px,currentColor 26px 27px,transparent 27px 96px);
  color:var(--rbb-champ);opacity:.07;
  -webkit-mask-image:linear-gradient(105deg,#000 0 34%,transparent 74%);mask-image:linear-gradient(105deg,#000 0 34%,transparent 74%);
}
body.rbb-journal-page .rbb-native-news-row>.et_pb_column{max-width:760px!important;margin:0 auto!important}
body.rbb-journal-page .rbb-native-news-eyebrow{text-align:left!important;margin-bottom:20px!important}
body.rbb-journal-page .rbb-native-news-title h2{margin:0 0 16px!important;color:#fff!important;font:600 clamp(28px,3.6vw,42px)/1.15 var(--rbb-serif)!important;text-align:center!important}
body.rbb-journal-page .rbb-native-news-copy p{max-width:560px;margin:0 auto 34px!important;color:var(--rbb-champ)!important;font:300 17px/1.7 var(--rbb-sans)!important;text-align:center!important}
body.rbb-journal-page .rbb-native-news-form,
body.rbb-journal-page .rbb-native-news-form>.et_pb_module_inner{display:flex!important;gap:12px!important;max-width:520px!important;margin:0 auto!important;align-items:stretch!important}
body.rbb-journal-page .rbb-native-email-field{flex:1!important;margin:0!important}
body.rbb-journal-page .rbb-native-email-field .et_pb_text_inner{height:100%!important}
body.rbb-journal-page .rbb-native-email-field input{width:100%!important;height:100%!important;min-height:52px!important;padding:16px 20px!important;background:rgba(255,255,255,.06)!important;border:1px solid rgba(207,159,85,.3)!important;color:#fff!important;font:400 14px var(--rbb-sans)!important;box-sizing:border-box!important}
body.rbb-journal-page .rbb-native-email-field input::placeholder{color:#9fb0c4}
body.rbb-journal-page .rbb-native-subscribe{margin:0!important;width:auto!important;flex:none!important}
body.rbb-journal-page .rbb-native-subscribe .et_pb_button{height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:17px 38px!important;border:1px solid var(--rbb-gold)!important;border-radius:0!important;background:var(--rbb-gold)!important;color:var(--rbb-navy)!important;font:500 12px/1.3 var(--rbb-sans)!important;letter-spacing:2px!important;text-transform:uppercase!important}
body.rbb-journal-page .rbb-native-subscribe .et_pb_button:after{display:none!important}

/* Reviews / accreditation strip */
body.rbb-journal-page .rbb-native-proof{position:relative!important;isolation:isolate;padding:64px 0!important;background:var(--rbb-stone)!important;text-align:center!important;overflow:hidden}
body.rbb-journal-page .rbb-native-proof:before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='97' viewBox='0 0 56 97'%3E%3Cpath d='M28 0 56 16v32L28 64 0 48V16z' fill='none' stroke='%230A1A2F' stroke-width='1'/%3E%3Cpath d='M28 64 56 80v32M28 64 0 80v32' fill='none' stroke='%230A1A2F' stroke-width='1'/%3E%3C/svg%3E");
  background-size:56px 97px;opacity:.05;
  -webkit-mask-image:radial-gradient(ellipse 60% 70% at 84% 50%,#000 6%,transparent 72%);mask-image:radial-gradient(ellipse 60% 70% at 84% 50%,#000 6%,transparent 72%);
}
body.rbb-journal-page .rbb-native-stars p{margin:0 0 16px!important;color:var(--rbb-gold)!important;font-size:20px!important;letter-spacing:3px!important}
body.rbb-journal-page .rbb-native-proof-copy p{margin:0 0 28px!important;color:#666!important;font:300 14px/1.6 var(--rbb-sans)!important}
body.rbb-journal-page .rbb-native-proof-copy a{color:var(--rbb-navy)!important;text-decoration:underline!important;text-decoration-color:var(--rbb-gold)!important;text-underline-offset:4px!important}
body.rbb-journal-page .rbb-native-proof-badges,
body.rbb-journal-page .rbb-native-proof-badges>.et_pb_module_inner{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:14px!important}
body.rbb-journal-page .rbb-native-proof-badge{margin:0!important;background:#fff!important;padding:8px 14px!important;border-radius:8px!important;box-shadow:0 4px 18px rgba(10,26,47,.08)!important}
body.rbb-journal-page .rbb-native-proof-badge img{display:block!important;height:46px!important;width:auto!important;max-width:120px!important;object-fit:contain!important}

/* CTA — native background Image module + exact node shape overlay */
body.rbb-journal-page .rbb-native-cta{position:relative!important;isolation:isolate;overflow:hidden!important;min-height:420px;display:flex!important;align-items:center!important;background:var(--rbb-navy)!important;color:#fff!important}
body.rbb-journal-page .rbb-native-cta:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(rgba(10,26,47,.70),rgba(10,26,47,.84))}
body.rbb-journal-page .rbb-native-cta:before{
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cg fill='none' stroke='%23CF9F55' stroke-width='1'%3E%3Cpath d='M18 34 96 12 178 62 132 148 44 126z'/%3E%3Cpath d='M96 12 132 148M18 34 132 148M96 12 44 126M178 62 208 176'/%3E%3C/g%3E%3Cg fill='%23CF9F55'%3E%3Ccircle cx='18' cy='34' r='3'/%3E%3Ccircle cx='96' cy='12' r='3'/%3E%3Ccircle cx='178' cy='62' r='3'/%3E%3Ccircle cx='132' cy='148' r='3'/%3E%3Ccircle cx='44' cy='126' r='3'/%3E%3Ccircle cx='208' cy='176' r='3'/%3E%3C/g%3E%3C/svg%3E");
  background-size:440px 440px;opacity:.16;
  -webkit-mask-image:linear-gradient(to left,#000 4%,transparent 62%);mask-image:linear-gradient(to left,#000 4%,transparent 62%);
}
body.rbb-journal-page .rbb-native-cta-content,
body.rbb-journal-page .rbb-native-cta-content.et_pb_row{position:relative!important;z-index:3!important;text-align:center!important;padding:100px 0!important}
body.rbb-journal-page .rbb-native-cta-title h2{max-width:720px;margin:0 auto 26px!important;color:#fff!important;font:600 clamp(32px,4.5vw,50px)/1.08 var(--rbb-serif)!important;text-align:center!important}
body.rbb-journal-page .rbb-native-cta-copy p{max-width:720px;margin:0 auto 40px!important;color:var(--rbb-champ)!important;font:300 18px/1.7 var(--rbb-sans)!important;text-align:center!important}
body.rbb-journal-page .rbb-native-cta-button .et_pb_button{display:inline-block!important;padding:17px 38px!important;border:1px solid var(--rbb-gold)!important;border-radius:0!important;background:var(--rbb-gold)!important;color:var(--rbb-navy)!important;font:500 12px/1.3 var(--rbb-sans)!important;letter-spacing:2px!important;text-transform:uppercase!important}
body.rbb-journal-page .rbb-native-cta-button .et_pb_button:after{display:none!important}

/* Tablet/mobile behaviour mirrors the original responsive CSS. */
@media(max-width:900px){
 body.rbb-journal-page .rbb-native-featured-row{grid-template-columns:1fr!important;gap:34px!important}
 body.rbb-journal-page .rbb-native-featured-image img{height:300px!important}
 body.rbb-journal-page .rbb-native-post-grid,body.rbb-journal-page .rbb-native-post-grid>.et_pb_module_inner{grid-template-columns:1fr!important;gap:34px!important}
 body.rbb-journal-page .rbb-native-featured,body.rbb-journal-page .rbb-native-listing,body.rbb-journal-page .rbb-native-news{padding:64px 0!important}
 body.rbb-journal-page .rbb-native-cta-content{padding:70px 0!important}
}
@media(max-width:600px){
 body.rbb-journal-page .rbb-native-wrap.et_pb_row,body.rbb-journal-page .rbb-native-wrap{width:calc(100% - 48px)!important;max-width:none!important}
 body.rbb-journal-page .rbb-native-hero{min-height:auto;padding:132px 0 52px!important;align-items:flex-start!important}
 body.rbb-journal-page .rbb-native-hero-content{width:calc(100% - 48px)!important;max-width:none!important}
 body.rbb-journal-page .rbb-native-hero-copy p{font-size:16px!important}
 body.rbb-journal-page .rbb-native-featured-image img{height:250px!important}
 body.rbb-journal-page .rbb-native-post-grid,body.rbb-journal-page .rbb-native-post-grid>.et_pb_module_inner{gap:20px!important}
 body.rbb-journal-page .rbb-native-card-image img{height:168px!important}
 body.rbb-journal-page .rbb-native-card-body{padding:20px 22px 24px!important}
 body.rbb-journal-page .rbb-native-card-title h3{font-size:19.5px!important}
 body.rbb-journal-page .rbb-native-filters,body.rbb-journal-page .rbb-native-filters>.et_pb_module_inner{gap:9px!important}
 body.rbb-journal-page .rbb-native-filter-row{margin-bottom:32px!important}
 body.rbb-journal-page .rbb-native-filter-btn .et_pb_button{font-size:11px!important;padding:7px 15px!important}
 body.rbb-journal-page .rbb-native-news-eyebrow{text-align:center!important}
 body.rbb-journal-page .rbb-native-news-form,body.rbb-journal-page .rbb-native-news-form>.et_pb_module_inner{flex-direction:column!important;max-width:100%!important}
 body.rbb-journal-page .rbb-native-subscribe{width:100%!important}
 body.rbb-journal-page .rbb-native-subscribe .et_pb_button{width:100%!important}
 body.rbb-journal-page .rbb-native-proof{padding:44px 0!important}
 body.rbb-journal-page .rbb-native-proof-badges,body.rbb-journal-page .rbb-native-proof-badges>.et_pb_module_inner{gap:10px!important}
 body.rbb-journal-page .rbb-native-proof-badge{padding:6px 10px!important}
 body.rbb-journal-page .rbb-native-proof-badge img{height:42px!important;max-width:110px!important}
 body.rbb-journal-page .rbb-native-cta{min-height:360px}
 body.rbb-journal-page .rbb-native-cta-title h2{font-size:34px!important}
}

/* 0.3.0 — harden single-post width so the custom article never creates a
   side canvas or horizontal scrollbar alongside the Divi Theme Builder. */
html:has(body.rbb-journal-article){overflow-x:hidden!important}
body.rbb-journal-article,
body.rbb-journal-article #page-container,
body.rbb-journal-article #et-boc,
body.rbb-journal-article .et-l,
body.rbb-journal-article #et-main-area,
body.rbb-journal-article #main-content,
body.rbb-journal-article main.rbb-article-page{
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;
  overflow-x:hidden!important;box-sizing:border-box!important;
}

/* 0.3.1 — category filtering for native Divi cards. Keep this stronger than
   Divi's module display rules and support buttons recreated manually in Divi. */
body.rbb-journal-page .rbb-native-post-card.is-filtered{
  display:none!important;
}
body.rbb-journal-page .rbb-native-filter-btn.is-active .et_pb_button,
body.rbb-journal-page .rbb-native-filter-btn .et_pb_button.is-active,
body.rbb-journal-page .rbb-native-filters .et_pb_button.is-active{
  background:#0A1A2F!important;
  border-color:#0A1A2F!important;
  color:#fff!important;
}


/* 0.3.2 — filter active state + newsletter layout hardening. */
body.rbb-journal-page .rbb-native-filters .et_pb_button.is-active,
body.rbb-journal-page .rbb-native-filters .et_pb_button_module_wrapper.is-active .et_pb_button,
body.rbb-journal-page .rbb-native-filter-btn.is-active .et_pb_button,
body.rbb-journal-page .rbb-native-filter-btn .et_pb_button.is-active,
body.rbb-journal-page .rbb-native-filter-btn.is-active .et_pb_button span,
body.rbb-journal-page .rbb-native-filter-btn .et_pb_button.is-active span{
  background:var(--rbb-navy)!important;
  border-color:var(--rbb-navy)!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

/* Keep the newsletter field and CTA side-by-side on desktop even when Divi
   inserts an extra Group module-inner wrapper. */
@media(min-width:601px){
  body.rbb-journal-page .rbb-native-news-form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:12px!important;
    max-width:520px!important;
    width:100%!important;
    margin:0 auto!important;
    align-items:stretch!important;
  }
  body.rbb-journal-page .rbb-native-news-form>.et_pb_module_inner{
    display:contents!important;
  }
  body.rbb-journal-page .rbb-native-news-form .rbb-native-email-field{
    grid-column:1!important;
    min-width:0!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
  }
  body.rbb-journal-page .rbb-native-news-form .rbb-native-subscribe{
    grid-column:2!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    align-self:stretch!important;
  }
  body.rbb-journal-page .rbb-native-news-form .rbb-native-subscribe .et_pb_button_module_wrapper,
  body.rbb-journal-page .rbb-native-news-form .rbb-native-subscribe .et_pb_button{
    height:100%!important;
    margin:0!important;
  }
}
@media(max-width:600px){
  body.rbb-journal-page .rbb-native-news-form{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    width:100%!important;
    max-width:520px!important;
    margin:0 auto!important;
  }
  body.rbb-journal-page .rbb-native-news-form>.et_pb_module_inner{display:contents!important}
  body.rbb-journal-page .rbb-native-news-form .rbb-native-email-field,
  body.rbb-journal-page .rbb-native-news-form .rbb-native-subscribe{grid-column:1!important;width:100%!important}
  body.rbb-journal-page .rbb-native-news-form .rbb-native-subscribe .et_pb_button{width:100%!important}
}

/* 0.3.4 — progressive article listing: 9 cards at a time. */
body.rbb-journal-page .rbb-native-post-card.is-load-hidden{
  display:none!important;
}
body.rbb-journal-page .rbb-native-load-more-row{
  margin-top:46px!important;
  margin-bottom:0!important;
  text-align:center!important;
}
body.rbb-journal-page .rbb-native-load-more-wrap,
body.rbb-journal-page .rbb-native-load-more-wrap>.et_pb_module_inner{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:100%!important;
}
body.rbb-journal-page .rbb-native-load-more-wrap[hidden],
body.rbb-journal-page .rbb-native-load-more-wrap[style*="display: none"]{
  display:none!important;
}
body.rbb-journal-page .rbb-native-load-more-button .et_pb_button,
body.rbb-journal-page button.rbb-native-load-more-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:220px!important;
  min-height:54px!important;
  padding:15px 28px!important;
  border:1px solid var(--rbb-gold)!important;
  border-radius:0!important;
  background:var(--rbb-navy)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font:500 11px/1.2 var(--rbb-sans)!important;
  letter-spacing:1.8px!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  transition:background .25s ease,color .25s ease,border-color .25s ease!important;
}
body.rbb-journal-page .rbb-native-load-more-button .et_pb_button:hover,
body.rbb-journal-page button.rbb-native-load-more-button:hover{
  background:var(--rbb-gold)!important;
  color:var(--rbb-navy)!important;
  -webkit-text-fill-color:var(--rbb-navy)!important;
}
body.rbb-journal-page .rbb-load-more-fallback{
  margin:46px auto 0!important;
  width:min(1240px,calc(100% - 48px))!important;
  text-align:center!important;
}
@media(max-width:600px){
  body.rbb-journal-page .rbb-native-load-more-row,
  body.rbb-journal-page .rbb-load-more-fallback{margin-top:32px!important}
  body.rbb-journal-page .rbb-native-load-more-button .et_pb_button,
  body.rbb-journal-page button.rbb-native-load-more-button{width:100%!important;max-width:320px!important}
}

/* 0.3.6 — Blog landing page mobile refinement to match the original Netlify layout.
   This only affects the native Divi 5 Blog page at phone widths. */
@media(max-width:600px){
  body.rbb-journal-page .rbb-native-featured{
    padding:42px 0 48px!important;
  }
  body.rbb-journal-page .rbb-native-featured-row,
  body.rbb-journal-page .rbb-native-featured-row.et_pb_row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:24px!important;
    width:calc(100% - 48px)!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:0!important;
    align-items:start!important;
  }
  body.rbb-journal-page .rbb-native-featured-row>.et_pb_column,
  body.rbb-journal-page .rbb-native-featured-image-col,
  body.rbb-journal-page .rbb-native-featured-copy-col{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    min-width:0!important;
  }
  body.rbb-journal-page .rbb-native-featured-image{
    width:100%!important;
    margin:0!important;
  }
  body.rbb-journal-page .rbb-native-featured-image img{
    width:100%!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    object-fit:cover!important;
  }
  body.rbb-journal-page .rbb-native-featured-meta p{
    gap:12px!important;
    margin:0 0 15px!important;
    flex-wrap:wrap!important;
  }
  body.rbb-journal-page .rbb-native-chip{
    padding:6px 12px!important;
    font-size:9.5px!important;
    letter-spacing:1.25px!important;
  }
  body.rbb-journal-page .rbb-native-date{
    font-size:10px!important;
    letter-spacing:1.15px!important;
  }
  body.rbb-journal-page .rbb-native-featured-title h2{
    margin:0 0 15px!important;
    font-size:27px!important;
    line-height:1.06!important;
    letter-spacing:.15px!important;
  }
  body.rbb-journal-page .rbb-native-featured-excerpt p{
    margin:0 0 24px!important;
    font-size:14.5px!important;
    line-height:1.65!important;
  }
  body.rbb-journal-page .rbb-native-readlink a{
    font-size:10px!important;
    letter-spacing:1.65px!important;
  }

  body.rbb-journal-page .rbb-native-listing{
    padding:48px 0 60px!important;
  }
  body.rbb-journal-page .rbb-native-listing-head,
  body.rbb-journal-page .rbb-native-filter-row,
  body.rbb-journal-page .rbb-native-cards-row{
    width:calc(100% - 48px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.rbb-journal-page .rbb-native-listing-head{
    margin-bottom:38px!important;
  }
  body.rbb-journal-page .rbb-native-listing-head>.et_pb_column{
    width:100%!important;
    max-width:none!important;
  }
  body.rbb-journal-page .rbb-native-listing-head .rbb-native-eyebrow{
    margin-bottom:17px!important;
  }
  body.rbb-journal-page .rbb-native-listing-head .rbb-native-eyebrow p{
    font-size:10px!important;
    letter-spacing:2.6px!important;
  }
  body.rbb-journal-page .rbb-native-listing-title h2{
    font-size:28px!important;
    line-height:1.08!important;
    letter-spacing:.15px!important;
  }
  body.rbb-journal-page .rbb-native-listing-copy p{
    margin-top:14px!important;
    font-size:14.5px!important;
    line-height:1.65!important;
  }
  body.rbb-journal-page .rbb-native-filter-row{
    margin-bottom:28px!important;
  }
  body.rbb-journal-page .rbb-native-filters,
  body.rbb-journal-page .rbb-native-filters>.et_pb_module_inner{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
  }
  body.rbb-journal-page .rbb-native-filter-btn{
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    flex:0 0 auto!important;
  }
  body.rbb-journal-page .rbb-native-filter-btn .et_pb_button,
  body.rbb-journal-page .rbb-native-filter-btn a.et_pb_button{
    width:auto!important;
    min-width:0!important;
    padding:6px 12px!important;
    border-radius:30px!important;
    font-size:9.25px!important;
    line-height:1.2!important;
    letter-spacing:1.05px!important;
    white-space:nowrap!important;
  }
  /* The original mobile Blog does not show an article-count/status line. */
  body.rbb-journal-page .rbb-native-filter-status{
    display:none!important;
  }

  body.rbb-journal-page .rbb-native-post-grid,
  body.rbb-journal-page .rbb-native-post-grid>.et_pb_module_inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:20px!important;
    width:100%!important;
  }
  body.rbb-journal-page .rbb-native-post-card{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    transform:none!important;
  }
  body.rbb-journal-page .rbb-native-card-image img{
    width:100%!important;
    height:168px!important;
    object-fit:cover!important;
  }
  body.rbb-journal-page .rbb-native-card-body{
    padding:20px 22px 24px!important;
  }
  body.rbb-journal-page .rbb-native-card-meta p{
    gap:10px!important;
    margin-bottom:12px!important;
  }
  body.rbb-journal-page .rbb-native-card-cat{
    font-size:9.5px!important;
    letter-spacing:1.25px!important;
  }
  body.rbb-journal-page .rbb-native-card-date{
    font-size:9.5px!important;
    letter-spacing:.9px!important;
  }
  body.rbb-journal-page .rbb-native-card-title h3{
    margin-bottom:11px!important;
    font-size:19.5px!important;
    line-height:1.16!important;
  }
  body.rbb-journal-page .rbb-native-card-excerpt p{
    margin-bottom:18px!important;
    font-size:14px!important;
    line-height:1.62!important;
  }
  body.rbb-journal-page .rbb-native-card-link a{
    font-size:10px!important;
    letter-spacing:1.55px!important;
  }
  body.rbb-journal-page .rbb-native-load-more-row,
  body.rbb-journal-page .rbb-load-more-fallback{
    margin-top:30px!important;
  }
  body.rbb-journal-page .rbb-native-load-more-button .et_pb_button,
  body.rbb-journal-page button.rbb-native-load-more-button{
    width:100%!important;
    max-width:280px!important;
    min-height:50px!important;
    padding:14px 22px!important;
    font-size:10px!important;
  }
}

/* =========================================================
   0.4.2 — COMPACT JOURNAL CARD SPACING
   Keeps the native Divi card editable, but stops Divi flex
   sizing from creating oversized vertical gaps.
   ========================================================= */

body.rbb-journal-page .rbb-native-card-body{
  padding:24px 28px 28px !important;
}

body.rbb-journal-page .rbb-native-card-body > .et_pb_module_inner{
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  height:auto !important;
  min-height:0 !important;
}

/* Remove Divi module-level spacing; control gaps explicitly below. */
body.rbb-journal-page .rbb-native-card-meta,
body.rbb-journal-page .rbb-native-card-title,
body.rbb-journal-page .rbb-native-card-excerpt,
body.rbb-journal-page .rbb-native-card-link{
  margin:0 !important;
  padding:0 !important;
}

body.rbb-journal-page .rbb-native-card-meta p{
  margin:0 0 16px !important;
}

body.rbb-journal-page .rbb-native-card-title h3{
  margin:0 0 18px !important;
}

body.rbb-journal-page .rbb-native-card-excerpt{
  flex:0 0 auto !important;
}

body.rbb-journal-page .rbb-native-card-excerpt p{
  margin:0 0 22px !important;
}

body.rbb-journal-page .rbb-native-card-link p{
  margin:0 !important;
}

/* Do not push READ ARTICLE to the bottom of equal-height cards. */
body.rbb-journal-page .rbb-native-card-link{
  margin-top:0 !important;
}

@media(max-width:600px){
  body.rbb-journal-page .rbb-native-card-body{
    padding:20px 22px 24px !important;
  }

  body.rbb-journal-page .rbb-native-card-meta p{
    margin-bottom:12px !important;
  }

  body.rbb-journal-page .rbb-native-card-title h3{
    margin-bottom:14px !important;
  }

  body.rbb-journal-page .rbb-native-card-excerpt p{
    margin-bottom:18px !important;
  }
}

/* =========================================================
   0.4.3 — DIVI FLEX GAP FIX FOR JOURNAL CARDS
   DevTools confirmed the remaining large gaps are coming from
   Divi 5 flex growth + --vertical-gap on the card body/group.
   ========================================================= */

body.rbb-journal-page .rbb-native-card-body{
  /* Override Divi's .et_flex_group defaults on THIS group itself. */
  --vertical-gap: 0px !important;
  --horizontal-gap: 0px !important;

  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;

  row-gap:0 !important;
  column-gap:0 !important;
  gap:0 !important;

  flex:0 0 auto !important;
  height:auto !important;
  min-height:0 !important;

  padding:22px 28px 26px !important;
  margin:0 !important;
}

/* Divi marks each Text module as a flex module too.
   Prevent those modules from growing to fill the available card height. */
body.rbb-journal-page .rbb-native-card-body > .et_pb_module,
body.rbb-journal-page .rbb-native-card-body > .et_flex_module,
body.rbb-journal-page .rbb-native-card-meta,
body.rbb-journal-page .rbb-native-card-title,
body.rbb-journal-page .rbb-native-card-excerpt,
body.rbb-journal-page .rbb-native-card-link{
  flex:0 0 auto !important;
  flex-grow:0 !important;
  flex-shrink:0 !important;
  align-self:stretch !important;

  height:auto !important;
  min-height:0 !important;

  margin:0 !important;
  padding:0 !important;
}

/* Tight, explicit rhythm matching the reference cards. */
body.rbb-journal-page .rbb-native-card-meta p{
  margin:0 0 14px !important;
}

body.rbb-journal-page .rbb-native-card-title h3{
  margin:0 0 16px !important;
}

body.rbb-journal-page .rbb-native-card-excerpt p{
  margin:0 0 18px !important;
}

body.rbb-journal-page .rbb-native-card-link,
body.rbb-journal-page .rbb-native-card-link p{
  margin:0 !important;
}

/* The card itself may still equalise with the CSS grid, but its content
   should no longer be distributed vertically by Divi. */
body.rbb-journal-page .rbb-native-post-card > .et_pb_module_inner{
  justify-content:flex-start !important;
}

@media(max-width:600px){
  body.rbb-journal-page .rbb-native-card-body{
    padding:20px 22px 23px !important;
  }

  body.rbb-journal-page .rbb-native-card-meta p{
    margin-bottom:11px !important;
  }

  body.rbb-journal-page .rbb-native-card-title h3{
    margin-bottom:13px !important;
  }

  body.rbb-journal-page .rbb-native-card-excerpt p{
    margin-bottom:16px !important;
  }
}
