/* BEAT34 / RITMO EDITORIAL & IDENTIDADE v414
   Public-facing compact spacing and typography. Keep cards/buttons readable.
   Official editorial families: Montserrat and Oswald; no recreated wordmark.
   These rules do not touch B34X CRM or product/checkout logic. */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&family=Oswald:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
html body{
 --b34-space-sm:clamp(16px,2.2vw,27px);
 --b34-space-md:clamp(22px,3vw,38px);
 --b34-space-lg:clamp(27px,3.6vw,44px);
 font-family:'Montserrat',sans-serif!important;
}
html body :is(main,header,footer) :is(p,li,summary,label,a,button,input,textarea,select,small){
 font-family:'Montserrat',sans-serif!important;
}
html body :is(main,header,footer) :is(h1,h2,h3,h4),
html body :is(main,header,footer) :is(h1,h2,h3,h4) :is(em,strong,span,a){
 font-family:'Oswald',sans-serif!important;
}
/* Purposeful counterpoint: Country editorial headings use the approved Playfair, with Montserrat for text. */
body:has(.bcHero) :is(.bcHero h1,.bcIntro h2,.bcCollectionHead h2,.bcJournalCopy h2,.bcSoonText h2),
body:has(.bcHero) :is(.bcHero h1,.bcIntro h2,.bcCollectionHead h2,.bcJournalCopy h2,.bcSoonText h2) :is(em,span){
 font-family:'Playfair Display',serif!important;
}
html body :is(.cmsEyebrow,.blogMeta,.flowEyebrow,.pdEyebrow,.starsEyebrow,.bcEyebrow,.nando-eyebrow,.miniEyebrow,.sectionNote,.styleEditorialOverline){
 font-family:'Montserrat',sans-serif!important;
}
/* Desktop storefront: shorten the distance between editorial sections. */
@media(min-width:751px){
 #novidades .newInner{
  padding-top:42px!important;padding-bottom:42px!important;
 }
 #categorias.styleEditorial{
  padding-top:23px!important;padding-bottom:25px!important;
 }
 #catalogo.catalogSection.section{
  padding-top:32px!important;padding-bottom:22px!important;
 }
 #catalogo .catalogHeading{margin-bottom:16px!important}
 #catalogo .catalogTools{padding-block:12px!important;gap:12px!important}
 #catalogo .catalogMeta{margin:10px 0 12px!important}
 #catalogo .moreRow{margin-top:17px!important;padding-bottom:0!important}
 #gente-real.b34PeopleSection{padding-top:23px!important;padding-bottom:28px!important}
 #gente-real .b34PeopleHeader{margin-bottom:15px!important}
 #como-comprar .howInner{padding-block:42px!important}
 #manifesto.manifesto{padding-block:36px!important}
 #papo.editorialPreview{padding-block:37px!important}
 #papo .editorialHeading{margin-bottom:16px!important}
 #duvidas.faqSection.section{padding-block:39px!important}
 #campanha.campaign{margin-top:14px!important;margin-bottom:15px!important}
 .aboutTeaserSection{padding-top:11px!important}
}
/* Mobile: preserve finger-sized controls but reduce tall blank transitions. */
@media(max-width:750px){
 #novidades .newInner{padding-top:22px!important;padding-bottom:23px!important}
 #categorias.styleEditorial{padding-top:17px!important;padding-bottom:18px!important}
 #catalogo.catalogSection.section{
  padding-top:22px!important;padding-bottom:16px!important;
 }
 #catalogo .catalogHeading{margin-bottom:9px!important}
 #catalogo .catalogTools{padding-block:9px!important;gap:7px!important}
 #catalogo .catalogMeta{margin:7px 0 9px!important}
 #catalogo .moreRow{margin-top:16px!important;padding-bottom:0!important}
 #gente-real.b34PeopleSection{padding-top:17px!important;padding-bottom:20px!important}
 #gente-real .b34PeopleHeader{margin-bottom:10px!important}
 #como-comprar .howInner{padding-block:22px!important}
 #manifesto.manifesto{padding-block:25px!important}
 #papo.editorialPreview{padding-top:26px!important;padding-bottom:26px!important}
 #papo .editorialHeading{margin-bottom:13px!important}
 #duvidas.faqSection.section{padding-block:26px!important}
 #campanha.campaign{margin-top:10px!important;margin-bottom:11px!important}
 .aboutTeaserSection{padding-top:8px!important}
}
/* Repeated catalog controls: intentionally compact without shrinking touch targets. */
#catalogo .loadMore{min-height:43px!important}
#catalogo .filters button{min-height:43px!important}
#catalogo .shopQuickAdd{min-height:45px!important}
/* Product pages and bag/checkouts: space rhythm rather than content removal. */
.pdContainer{padding-top:clamp(16px,2.5vw,30px)!important;padding-bottom:clamp(28px,3.5vw,44px)!important}
.pdBreadcrumb{margin-bottom:clamp(12px,2vw,20px)!important}
.pdGalleryCaption{margin-top:12px!important}
.pdBundle{margin-top:clamp(18px,2.5vw,25px)!important}
.pdHeading{margin-bottom:14px!important}
.pdSimilar,.pdRelated{margin-top:clamp(25px,3.5vw,42px)!important}
.storeFlowPage .flowWrap{padding-top:clamp(22px,3vw,38px)!important;padding-bottom:clamp(32px,4vw,56px)!important}
.storeFlowPage .flowIntro{margin-bottom:clamp(19px,2.5vw,29px)!important}
.cmsIntro{padding-top:clamp(29px,4.4vw,54px)!important;padding-bottom:clamp(30px,4vw,50px)!important}
.cmsArticle{padding-top:clamp(25px,3.5vw,37px)!important;padding-bottom:clamp(43px,5vw,65px)!important}
.blogGrid{padding-top:clamp(24px,3.4vw,37px)!important;padding-bottom:clamp(35px,4.5vw,54px)!important}
.cmsText h2{margin-top:26px!important;margin-bottom:12px!important}
.cmsText p{margin-bottom:17px!important}
.cmsEnding{margin-top:36px!important}
/* Institutional and collection chapters */
.main{padding-top:clamp(28px,3.5vw,46px)!important;padding-bottom:clamp(39px,5vw,62px)!important}
.nando-story{padding-top:clamp(30px,4.5vw,60px)!important;padding-bottom:clamp(30px,4.5vw,60px)!important}
.nando-songs,.nando-productSection{padding-top:clamp(32px,5vw,62px)!important;padding-bottom:clamp(32px,5vw,62px)!important}
.starsMain{padding-top:clamp(28px,4vw,51px)!important;padding-bottom:clamp(28px,4vw,51px)!important}
.bcIntro,.bcShopping,.bcJournal{padding-top:clamp(28px,4.5vw,52px)!important;padding-bottom:clamp(28px,4.5vw,52px)!important}
/* Checkout testing label had an old font explicitly forced by its own component. */
html body .storeFlowPage .flowWrap p.flowBuildTag,
html body .flowWrap p.flowBuildTag{font-family:'Montserrat',sans-serif!important}
/* Fixed navbar offset and accessibility remain unchanged. */
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
}