/* NOTO Re:Bloom — compact rhythm + hierarchy pass / 2026-08-17 */

/* Global rhythm: less empty space, still enough separation to scan. */
body.rb-unified main>section[id]{scroll-margin-top:92px}
body.rb-unified :is(h1,h2,h3){text-wrap:balance}
body.rb-unified .section{padding-top:clamp(44px,5vw,64px)!important;padding-bottom:clamp(44px,5vw,64px)!important}
body.rb-unified .rb-tight-sparse{padding-top:clamp(34px,4vw,48px)!important;padding-bottom:clamp(34px,4vw,48px)!important}
body.rb-unified .section-heading{margin-bottom:18px!important}
body.rb-unified .section-heading h2,body.rb-unified .split-story h2{font-size:clamp(29px,3.45vw,44px)!important;line-height:1.2!important}
body.rb-unified .section-heading>p:last-child{margin-top:8px!important;line-height:1.7!important}
body.rb-unified .split-story{gap:clamp(24px,4vw,42px)!important;align-items:center!important}
body.rb-unified .split-story>div>p{max-width:54ch}
body.rb-unified .button-row{margin-top:16px!important;gap:9px!important}
body.rb-unified .btn{min-height:44px}

/* Hero: fixed header clearance remains, but the first screen is no longer oversized. */
body.rb-unified :is(.nr-home-hero,.page-hero):not(.page-hero--diagnosis){padding-top:clamp(116px,10vw,134px)!important;padding-bottom:46px!important}
body.rb-unified :is(.hero-grid,.page-hero-grid){gap:clamp(28px,4vw,52px)!important}
body.rb-unified :is(.nr-home-hero,.nr-new-event .page-hero,.page-learn .page-hero,.nr-new-partner .page-hero) .photo-frame img{height:clamp(320px,38vw,490px)!important}
body.rb-unified .hero-copy>p:not(.eyebrow),body.rb-unified .page-hero-grid>div>p:not(.eyebrow){line-height:1.72!important}
body.rb-unified .status-chips{margin-top:14px!important}
body.rb-unified .hero-sticker-note{margin-top:13px!important;padding:11px 14px!important}

/* Homepage navigation: two useful paths instead of a third repeated participation CTA. */
body.rb-unified .nr-choice-grid.rb-choice-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:min(920px,calc(100% - 40px))!important;margin:18px auto 44px!important;gap:12px!important}
body.rb-unified .nr-choice-grid.rb-choice-grid--two .nr-choice{padding:19px 20px!important}
body.rb-unified .nr-choice-grid.rb-choice-grid--two .nr-choice h2{font-size:clamp(21px,2.25vw,27px)!important}

/* Photo mosaics stay important but stop consuming almost a full extra screen. */
body.rb-unified .visual-mosaic-section{padding:34px 0 48px!important}
body.rb-unified .visual-mosaic-head{margin-bottom:14px!important;gap:22px!important}
body.rb-unified .visual-mosaic{grid-template-rows:205px 205px!important;gap:12px!important}
body.rb-unified .visual-tile{border-radius:21px!important}
body.rb-unified .visual-tile figcaption{left:15px!important;right:15px!important;bottom:13px!important}
body.rb-unified .join-facts{margin-top:12px!important;gap:8px!important}
body.rb-unified .join-fact{padding:12px 14px!important;border-radius:17px!important}
body.rb-unified .visual-join-action{margin-top:13px!important;padding:16px 19px!important;gap:18px!important}

/* Cards: smaller shells and stronger text hierarchy. */
body.rb-unified :is(.event-values,.definition-grid,.cause-grid,.game-grid,.check-list,.nr-value-grid,.industry-grid){gap:11px!important}
body.rb-unified :is(.event-values article,.definition-card,.cause-grid article,.game-grid article,.check-list>div,.nr-value-grid article,.industry-grid article){padding:18px 19px 17px!important;border-radius:18px!important}
body.rb-unified :is(.event-values article,.definition-card,.cause-grid article,.game-grid article,.check-list>div,.nr-value-grid article,.industry-grid article) h3{margin:7px 0 5px!important;font-size:clamp(20px,1.9vw,23px)!important}
body.rb-unified :is(.event-values article,.definition-card,.cause-grid article,.game-grid article,.check-list>div,.nr-value-grid article,.industry-grid article) p{font-size:14px!important;line-height:1.62!important}
body.rb-unified :is(.event-values article,.cause-grid article,.check-list>div)>span{width:40px!important;height:40px!important;margin-bottom:5px!important}

/* Event page: the important facts and schedule should be quick to read. */
body.rb-unified .event-summary{padding:14px 0!important}
body.rb-unified .summary-grid{gap:7px!important}
body.rb-unified .summary-grid>div{padding:11px 13px!important;border-radius:16px!important}
body.rb-unified .summary-grid>div b{font-size:clamp(18px,1.8vw,22px)!important}
body.rb-unified .event-flow-section{padding:42px 20px!important}
body.rb-unified .event-flow{margin-top:17px!important;gap:10px!important}
body.rb-unified .event-flow article{padding:15px 16px!important;border-radius:18px!important}
body.rb-unified .flow-time{width:60px!important;height:60px!important;margin-bottom:7px!important;font-size:16px!important}
body.rb-unified .event-flow article h3{font-size:20px!important;margin:5px 0 3px!important}
body.rb-unified.nr-new-event .game-grid article{padding:56px 19px 17px!important}
body.rb-unified.nr-new-event .game-grid article::before{left:15px!important;top:12px!important;width:62px!important;height:34px!important;background-size:44px auto!important}
body.rb-unified.nr-new-event .game-grid article>span{top:16px!important;right:17px!important}
body.rb-unified .faq-visual{padding:42px 0!important}
body.rb-unified .faq-grid{margin-top:17px!important;gap:9px!important}
body.rb-unified .faq-card{padding:16px 17px!important;border-radius:18px!important}
body.rb-unified .faq-card p{margin-top:7px!important}

/* Project history: preserve the story, reduce the poster-like height. */
body.rb-unified .story-timeline{margin-top:23px!important}
body.rb-unified .story-timeline::before{top:26px!important}
body.rb-unified .story-step{padding-inline:8px!important}
body.rb-unified .story-dot{width:52px!important;height:52px!important;margin-bottom:11px!important;font-size:12px!important}
body.rb-unified .story-step small{min-height:16px!important}
body.rb-unified .story-step h3{margin:4px 0 5px!important;font-size:17px!important}
body.rb-unified .story-step p{font-size:13px!important;line-height:1.58!important;margin-top:0!important}

/* People / images: shorter vertical footprint without shrinking the visual identity away. */
body.rb-unified .people-trust{padding:42px 0!important}
body.rb-unified .people-trust-grid{gap:24px!important}
body.rb-unified .people-trust-photo{min-height:275px!important;border-radius:23px!important}
body.rb-unified .people-trust-copy p{margin-top:10px!important;line-height:1.68!important}
body.rb-unified .people-trust-tags{margin-top:13px!important}

/* The overview now lives inside the existing project section, eliminating a duplicate section. */
body.rb-unified .rb-project-map-inline{margin:20px 0 0!important;min-height:0!important;border-radius:20px!important;box-shadow:0 8px 22px rgba(23,58,49,.065)!important}
body.rb-unified .rb-project-map-inline .rb-project-map{min-height:245px!important;padding:20px 18px!important}
body.rb-unified .rb-project-map-inline figcaption{padding:10px 14px!important}

/* Partner page: get to sponsorship information faster and tighten sponsor blocks. */
body.rb-unified .nr-value-prop{padding:44px max(20px,calc((100% - 1100px)/2))!important}
body.rb-unified .nr-sponsor-feature{padding:44px max(20px,calc((100% - 1100px)/2))!important}
body.rb-unified .nr-section-head{margin-bottom:18px!important}
body.rb-unified .nr-section-head h2{margin-bottom:7px!important}
body.rb-unified .nr-main-sponsor{padding:21px!important;border-radius:19px!important}
body.rb-unified .nr-sponsor-story p{line-height:1.66!important}
body.rb-unified .nr-supporting{gap:10px!important}

/* CTAs should punctuate the page, not create another large section. */
body.rb-unified .conversion-band{padding:18px 21px!important;margin-bottom:40px!important;gap:18px!important;border-radius:20px!important}
body.rb-unified .conversion-band h2{font-size:clamp(23px,2.65vw,32px)!important}
body.rb-unified .conversion-band p{margin-top:5px!important}

/* Footer: keep the useful route, reduce dead vertical space. */
body.rb-unified .rb-footer-cta{padding-top:28px!important;padding-bottom:28px!important}
body.rb-unified .rb-footer-grid{padding-top:28px!important;padding-bottom:24px!important;gap:24px!important}
body.rb-unified .rb-footer-bottom{padding-top:14px!important;padding-bottom:16px!important}

/* Diagnosis is a utility flow; long decorative gaps only slow it down. */
body.rb-unified.page-diagnosis .page-hero--diagnosis{padding-bottom:56px!important}
body.rb-unified.page-diagnosis .diagnosis-section{padding:52px 0 72px!important}
body.rb-unified.page-diagnosis .flower-group-showcase{margin-top:46px!important}
body.rb-unified.page-diagnosis .flower-atlas{margin-top:48px!important;padding:26px!important}
body.rb-unified.page-diagnosis .flower-group-grid{gap:11px!important}
body.rb-unified.page-diagnosis .flower-group-card{padding:16px!important}

@media(max-width:900px){
  body.rb-unified :is(.nr-home-hero,.page-hero):not(.page-hero--diagnosis){padding-top:108px!important;padding-bottom:40px!important}
  body.rb-unified .section{padding-top:40px!important;padding-bottom:40px!important}
  body.rb-unified .rb-tight-sparse{padding-top:32px!important;padding-bottom:32px!important}
  body.rb-unified .visual-mosaic-section{padding:30px 0 40px!important}
  body.rb-unified .visual-mosaic{grid-template-rows:280px 155px!important}
  body.rb-unified .people-trust-photo{min-height:250px!important}
  body.rb-unified .nr-choice-grid.rb-choice-grid--two{margin-bottom:38px!important}
}

@media(max-width:620px){
  body.rb-unified :is(.nr-home-hero,.page-hero):not(.page-hero--diagnosis){padding-top:98px!important;padding-bottom:32px!important}
  body.rb-unified :is(.nr-home-hero,.nr-new-event .page-hero,.page-learn .page-hero,.nr-new-partner .page-hero) .photo-frame img{height:255px!important}
  body.rb-unified .section{padding-top:34px!important;padding-bottom:34px!important}
  body.rb-unified .rb-tight-sparse{padding-top:27px!important;padding-bottom:27px!important}
  body.rb-unified .section-heading{margin-bottom:15px!important}
  body.rb-unified .split-story{gap:18px!important}
  body.rb-unified .nr-choice-grid.rb-choice-grid--two{grid-template-columns:1fr!important;width:calc(100% - 24px)!important;margin:14px auto 32px!important}
  body.rb-unified .visual-mosaic-section{padding:26px 0 34px!important}
  body.rb-unified .visual-mosaic{grid-template-rows:245px 135px 135px!important;gap:9px!important}
  body.rb-unified .join-facts{gap:7px!important}
  body.rb-unified .join-fact{padding:10px 11px!important}
  body.rb-unified .visual-join-action{padding:15px 16px!important}
  body.rb-unified .event-flow-section{padding:34px 12px!important}
  body.rb-unified .event-flow article{grid-template-columns:64px 1fr!important;column-gap:11px!important}
  body.rb-unified .flow-time{width:56px!important;height:56px!important}
  body.rb-unified .faq-visual{padding:34px 0!important}
  body.rb-unified .people-trust{padding:34px 0!important}
  body.rb-unified .people-trust-photo{min-height:220px!important}
  body.rb-unified .conversion-band{width:calc(100% - 24px)!important;padding:16px!important;margin-bottom:32px!important}
  body.rb-unified .rb-project-map-inline .rb-project-map{padding:16px 14px!important}
  body.rb-unified .nr-value-prop,body.rb-unified .nr-sponsor-feature{padding:34px 12px!important}
  body.rb-unified.page-diagnosis .diagnosis-section{padding:42px 0 58px!important}
  body.rb-unified.page-diagnosis .flower-group-showcase{margin-top:36px!important}
  body.rb-unified.page-diagnosis .flower-atlas{margin-top:38px!important;padding:18px!important}
}
