[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"site-global-data":3,"\n\nfragment ContentAreaFieldsFragment on ContentAreaFields {\n  __typename\n  content {\n    ... on ContentAreaFieldsContentTableLayout {\n      __typename\n      tableGroup {\n        headerColor\n        tableDescription\n        headers {\n          align\n          text\n        }\n        rows {\n          cells {\n            align\n            contentType\n            text\n            link {\n              target\n              title\n              url\n            }\n          }\n        }\n      }\n    }\n    \n    ...on ContentAreaFieldsContentNoticeLayout {\n      __typename\n      noticeGroup {\n        heading\n        text\n        enableCardIcon\n        button {\n          variant\n          link {\n            target\n            title\n            url\n          }\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentProAndConLayout {\n      __typename\n      proAndConGroup {\n        prosSectionTitle\n        consSectionTitle\n        itemsToDisplay\n        pros {\n          text\n        }\n        cons {\n          text\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentStepsLayout {\n      __typename\n      stepsGroup {\n        variant\n        steps {\n          title\n          description\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentQuoteLayout {\n      __typename\n      quoteGroup {\n        client\n        description\n      }\n    }\n\n    ... on ContentAreaFieldsContentDropdownLayout {\n      __typename\n      dropdownGroup {\n        items {\n          title\n          description\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentOfferImageInfoLayout {\n      __typename\n      offerImageInfoGroup {\n        heading\n        description1\n        description2\n        link {\n          target\n          title\n          url\n        }\n        image {\n          node {\n            altText\n            sourceUrl\n            mediaDetails {\n              width\n              height\n            }\n          }\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentFaqLayout {\n      __typename\n      faqGroup {\n        iconName\n        content\n        items {\n          title\n          answer\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentNumberedCardsLayout {\n      __typename\n      numberedCardsGroup {\n        variant\n        pillLabel\n        heading\n        items {\n          title\n          description\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentWysiwygLayout {\n      __typename\n      wysiwygGroup {\n        content\n      }\n    }\n\n    ... on ContentAreaFieldsContentTabsContentLayout {\n      __typename\n      tabsContentGroup {\n        tabs {\n          tabName\n          image {\n            node {\n              altText\n              sourceUrl\n              mediaDetails {\n                width\n                height\n              }\n            }\n          }\n          affLink {\n            target\n            title\n            url\n          }\n          pageLink {\n            target\n            title\n            url\n          }\n          content\n        }\n      }\n    }\n    \n    ... on ContentAreaFieldsContentSingleOfferLayout {\n      singleOfferGroup {\n        offer {\n          nodes {\n            ... on Offer {\n              ...ComsOfferCardFragment\n            }\n          }\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentTpsCalculatorLayout {\n      __typename\n      tpsCalculatorGroup {\n        content\n        ctaLink {\n          title\n          url\n          target\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentOfferListLayout {\n      __typename\n      offerListGroup {\n        theme\n        displayMode\n        count\n        queryMode\n        cardVariantFilter\n        bonusKindFilter\n        offerTagFilter\n        offerTypeFilter\n        casinoIds\n        titlePatternIds\n        sectionSubtitle\n        sectionTitle\n        asPageH1\n        titleAlign\n        viewAllLabel\n        viewAllUrl\n      }\n      # Resolved server-side (bfd v1.2.138) so the block renders without firing\n      # GetComsOfferListBlock after this query returns — that second request is a serial\n      # waterfall on the critical path, and ~1s of it is fixed per-request overhead.\n      #\n      # No arguments: every filter above is ACF the resolver reads itself, and the block\n      # paginates client-side over rows it already has. Unlike blogListData there is no\n      # route state to hand through.\n      offerListData {\n        items {\n          # patternTitle, not patternTitles(ids:), because the id set is PER BLOCK and a\n          # document variable can only carry one — the homepage renders six of these blocks\n          # with six different sets. PHP sees each block's own ACF, so PHP picks the title.\n          patternTitle\n          # The rank PHP sorted on. Selected so mapComsOffers' re-sort is a verifiable no-op\n          # rather than a silent reordering.\n          tps\n          offer {\n            ...ComsOfferCardFragment\n          }\n        }\n        pageInfo {\n          perPage\n          hasNextPage\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentHeroLayout {\n      __typename\n      heroGroup {\n        heroImage {\n          node {\n            altText\n            sourceUrl\n            mediaDetails {\n              width\n              height\n            }\n          }\n        }\n        headingImage {\n          node {\n            altText\n            sourceUrl\n            mediaDetails {\n              width\n              height\n            }\n          }\n        }\n        ctaLabel\n        ctaLink {\n          url\n          title\n          target\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentContactFormLayout {\n      __typename\n      contactFormGroup {\n        formId\n        submitLabel\n        successMessage\n      }\n    }\n\n    ... on ContentAreaFieldsContentShortcodeLayout {\n      __typename\n      shortcode\n      renderedHtml\n    }\n\n    ... on ContentAreaFieldsContentLegalDocumentLayout {\n      __typename\n      documentSlug\n      documentTitle\n      renderedHtml\n    }\n\n    ... on ContentAreaFieldsContentAnchorLayout {\n      __typename\n      anchorId\n    }\n\n    ... on ContentAreaFieldsContentSlotListLayout {\n      __typename\n      slotListGroup {\n        count\n        displayMode\n        sortBy\n        variant\n        gameProducerSlug\n        gameCategorySlug\n        casinoSlug\n        sectionSubtitle\n        sectionTitle\n        titleAlign\n        viewAllLabel\n        viewAllUrl\n      }\n      slotListData {\n        variant\n        items {\n          title\n          href\n          previewImageUrl\n          logoUrl\n          categoryLabel\n          producerName\n          producerHref\n          metaRows {\n            label\n            value\n          }\n          rtp\n          volatility\n          wagering\n          casinoName\n          tps\n          tpsMaxScore\n          offerTitle\n          spinCount\n          outlineCtaLabel\n          # outlineCtaHref deliberately NOT requested (2026-08-04): slot-list-fields.php on the\n          # live WP instance does not have this field yet, even though it is documented in\n          # docs\u002Fbackend\u002Fschema-reference.md as part of the plugin design. Requesting an unknown\n          # field is a GraphQL VALIDATION error, which nulls the ENTIRE response, not just this\n          # field, and this selection sits inside ContentAreaFields, which ~12 queries compose,\n          # so one missing field broke nearly every page on the site (verified: homepage, and any\n          # nodeByUri page with a slot-list block). The showOutlineCta guard in SlotCard.vue\n          # already requires outlineCtaHref to be truthy, so the CTA button degrades away cleanly\n          # without it. Re-add this line once the plugin ships the field, verified with a direct\n          # field query first (introspection is disabled), per the flexible-content-layout\n          # checklist in CLAUDE.md.\n          defaultTrackingLinks {\n            source\n            trackingCode\n            comsaffUrl\n          }\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentIconWysiwygLayout {\n      __typename\n      iconWysiwygGroup {\n        iconName\n        heading\n        content\n      }\n    }\n\n    ... on ContentAreaFieldsContentLatestPicksLayout {\n      __typename\n      latestPicksGroup {\n        sectionTitle\n        count\n        tabs {\n          label\n          queryMode\n          queryPreset\n          orderBy\n          offerTag\n          bonusKind\n        }\n      }\n      # Resolved server-side (bfd v1.2.139). This block saves more than the others: the tab\n      # query is a DYNAMIC document built from the ACF above, so it could not even be composed\n      # until contentAreaFields returned — a strictly serial second leg, on the homepage.\n      #\n      # NOTE: no backticks in these comments -- this whole document is a template literal, and\n      # one stray backtick truncates it silently (caught here by tsc, and by check:schema's\n      # brace-balance guard, which exists because it happened while wiring blogListData).\n      #\n      # The tabs list is positional and includes tabs that resolved to nothing; the component\n      # indexes by position, so a dropped empty tab would shift later tabs onto the wrong label.\n      latestPicksData {\n        tabs {\n          label\n          offers {\n            # The \"acum N zile\" badge reads this; the standalone query selected it too.\n            date\n            ...ComsOfferCardFragment\n          }\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentWysiwygCtaLayout {\n      __typename\n      wysiwygCtaGroup {\n        content\n        ctaLink {\n          title\n          url\n          target\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentWysiwygImageLayout {\n      __typename\n      wysiwygImageGroup {\n        heading\n        content\n        reverseColumns\n        image {\n          node {\n            altText\n            sourceUrl\n            mediaDetails {\n              width\n              height\n            }\n          }\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentPromoBannerLayout {\n      __typename\n      promoBannerData {\n        title\n        bgImageUrl\n        ctaLabel\n        ctaHref\n      }\n    }\n\n    ... on ContentAreaFieldsContentBlogListLayout {\n      __typename\n      blogListGroup {\n        sectionTitle\n        source\n        count\n        orderby\n        order\n        enableSort\n        enablePagination\n      }\n      # Resolved rows for the block, so it renders from THIS response instead of firing its own\n      # query behind it — a block cannot query until contentAreaFields returns, so its fetch is a\n      # serial waterfall on the critical path (~2.5s page query, then ~1.4s listing).\n      #\n      # NO ARGUMENTS, deliberately. NOTE: no backticks in these comments -- the whole document is\n      # a JS template literal and one stray backtick truncates it silently.\n      #\n      # This selection is spliced into 14 documents, and a selection set cannot declare variables,\n      # so every argument here forced all 14 to declare it too. Eight of nine never did, and an\n      # undeclared variable nulls the ENTIRE response: casino reviews, slots, providers, blog\n      # posts, the producers hub and all three homepage strategies returned nothing against the\n      # live schema. Removing the arguments removes that bug class outright.\n      #\n      # Nothing is lost. The resolver falls back to the block's own ACF (count\u002Forderby\u002Forder), and\n      # pagination + sort are interaction state, fetched by useBlogListBlockData's light query --\n      # the page query must never re-run for a page-param change, since re-paying contentAreaFields\n      # (~1.7s of its ~2.5s) is the cost consolidation exists to remove.\n      #\n      # If a paginated hub ever needs server-side page 1, add it as a FIELD ARGUMENT WITH A\n      # DEFAULT on the PHP side, never as a document variable.\n      blogListData {\n        items {\n          title\n          href\n          # RAW ISO — the card formats ro-RO short month itself. 'dateFormatted' is WP's long\n          # month and would silently change every rendered date.\n          date\n          excerpt\n          categoryLabel\n          heroImageUrl\n          heroImageAlt\n        }\n        pageInfo {\n          total\n          perPage\n          currentPage\n          totalPages\n          hasNextPage\n          hasPreviousPage\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentAuthorListLayout {\n      __typename\n      authorListGroup {\n        sectionTitle\n        queryMode\n        count\n        roles\n      }\n      authorListData {\n        items {\n          \n  displayName\n  roleLabel\n  avatarUrl\n  bio\n  linkedInUrl\n  profileHref\n\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentExcerptCardsLayout {\n      __typename\n      excerptCardsGroup {\n        sectionTitle\n        excerptLength\n        items {\n          title\n          content\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentProducerListLayout {\n      __typename\n      producerListGroup {\n        displayMode\n        orderBy\n        count\n        producerSlug\n      }\n    }\n\n    ... on ContentAreaFieldsContentCasinoPreviewListLayout {\n      __typename\n      casinoPreviewListGroup {\n        displayMode\n        count\n      }\n      casinoPreviewListData {\n        items {\n          casinoLogoUrl\n          casinoName\n          reviewHref\n          offerTitle\n          ctaLabel\n          ctaHref\n        }\n      }\n    }\n\n  }\n}\n\n\nfragment ComsOfferCardFragment on Offer {\n  id\n  slug\n  title\n  tps\n  totalSpins\n  # Analytics data-type-offer label — resolved server-side (bfd's offer-type-map.php): the\n  # offer's bonus-kind term override when set, else its own offer_type mapped through the\n  # coms-sync-rg reference table. Passed straight through by comsOfferToCard() — no client-side\n  # mapping (there used to be one; it duplicated and drifted from bfd's own vocabulary).\n  trackingOfferType\n  linkedSlot {\n    name\n    rtp\n  }\n  # Every slot the spins apply to, RTP-descending, capped at 4 server-side. Named inside the\n  # Slot row's existing accordion dropdown when there's more than one.\n  linkedSlots {\n    name\n    rtp\n  }\n  effectiveValuePerSpin\n  # The shape-agnostic accessor: what TPS actually scored this offer on, whichever shape it stores\n  # its data in (no-deposit rows \u002F deposit-package tiers \u002F RG overlay). Without it a package offer\n  # renders a score with six blank rows, because its spins live in deposit_items.\n  tpsInputs {\n    source\n    spins\n    valuePerSpin\n    rtp\n    wagering\n    daysToExpire\n    maxWithdrawal\n    slotName\n  }\n  # Draft-safe parent-casino display: the offerFields.casino relation below drops draft casinos\n  # (unauthenticated GraphQL excludes them), and most casinos are drafts — so linkedCasino is the\n  # reliable source for the card's logo\u002Fname\u002Frating. The relation stays as a fallback.\n  linkedCasino {\n    databaseId\n    slug\n    title\n    trackingName\n    rating\n    logoUrl\n    logoAlt\n  }\n  # Default-facet tracking links, one per source the offer has a code for. The CTA link is built\n  # client-side from this array (pick by detected LIA source, fall back to \"dt\") — see\n  # app\u002Futils\u002FofferLinks.ts and docs\u002Fexplanation\u002Foffers.md §6a. Cacheable: identical for every\n  # visitor, the per-visitor pick happens after this reaches the browser.\n  defaultTrackingLinks {\n    source\n    trackingCode\n    comsaffUrl\n  }\n  offerTags(first: 8) {\n    nodes {\n      id\n      name\n      slug\n    }\n  }\n  offerFields {\n    offerType\n    offerTypeTags\n    startDate\n    endDate\n    noDepositItems {\n      spinsNo\n      spinValue\n      wagering\n      maxCashout\n      timeFrame\n      bonusCode\n    }\n    casino {\n      nodes {\n        ... on Casino {\n          id\n          slug\n          uri\n          title\n          trackingName\n          featuredImage { node { sourceUrl altText } }\n          comsThumbnailUrl\n          comsThumbnailAlt\n          casinoFields { rating }\n          rgCasinoExtra { localSlug }\n        }\n      }\n    }\n  }\n  rgOfferExtra {\n    offerTitle\n    shortDescription\n    rgSpinsNo\n    rgSpinValue\n    rgWagering\n    rgMaxCashout\n    rgTimeFrame\n    rgAvailableSlot {\n      nodes {\n        ... on Slot {\n          id\n          title\n          slotFields {\n            rtp\n          }\n        }\n      }\n    }\n    exceptionsValue\n    exceptionsText\n    bulletPoints {\n      text\n    }\n    customRows {\n      label\n      value\n      dropdownText\n      iconName\n    }\n  }\n}\n\n  \n  fragment SeoFields on PostTypeSEO {\n    title\n    metaDesc\n    canonical\n    opengraphTitle\n    opengraphDescription\n    opengraphType\n    opengraphUrl\n    opengraphImage {\n      sourceUrl\n      altText\n      mediaDetails { width height }\n    }\n    metaRobotsNoindex\n    metaRobotsNofollow\n    breadcrumbs { text url }\n  }\n\n  \n  fragment TaxSeoFields on TaxonomySEO {\n    title\n    metaDesc\n    canonical\n  }\n\n  query GetPageData(\n    $uri: String!\n  ) {\n    nodeByUri(uri: $uri) {\n      __typename\n      id\n      uri\n\n      ... on Page {\n        title\n        content\n        seo { ...SeoFields }\n        template {\n          templateName\n        }\n        pageSettings {\n          pageLayout\n          sidebarTitle\n        }\n        \n        casinosHubSettings {\n          heroTitle\n          heroDescription\n          offerButtonText\n          rankBy\n          casinoOrderId\n          offerTypeFilter\n          casinoCategory { nodes { id slug name } }\n          sidebarTitle\n          titlePatternIds\n        }\n        sidebarBannersData {\n          title\n          bgImageUrl\n          ctaLabel\n          ctaHref\n        }\n        heroPromoBannerData {\n          title\n          bgImageUrl\n          ctaLabel\n          ctaHref\n        }\n        blogIndexSettings {\n          heroTitle\n          heroDescription\n          heroKicker\n          sidebarTitle\n          blogShowGrid\n        }\n        blogFeaturedPostIds\n        blogOffersSettings {\n          showSection\n          kicker\n          title\n          mode\n          autoTag\n          autoCount\n          autoOrderby\n        }\n        blogManualOfferIds\n        heroBannerData {\n          title\n          bgImageUrl\n          ctaLabel\n          ctaHref\n        }\n        offersHubSettings {\n          heroTitle\n          heroDescription\n          heroCtaText\n          heroCtaUrl\n          bonusKind {\n            nodes {\n              id\n              databaseId\n              slug\n              name\n            }\n          }\n          primaryOfferTag {\n            nodes {\n              id\n              slug\n              name\n            }\n          }\n          allowedOfferTags {\n            nodes {\n              id\n              slug\n              name\n            }\n          }\n          titlePatternIds\n          offerTypeFilter\n          queryPreset\n          offerLimit\n        }\n        producersHubSettings {\n          heroTitle\n          heroDescription\n        }\n        slotsHubSettings {\n          heroTitle\n          heroDescription\n          topBannerOffer {\n            nodes {\n              ... on Offer {\n                ...ComsOfferCardFragment\n              }\n            }\n          }\n          showSearch\n          postsPerPage\n          offersSectionTitle\n          pageOffers {\n            nodes {\n              ... on Offer {\n                ...ComsOfferCardFragment\n              }\n            }\n          }\n          pageOffersDarkMode\n          pageOffersLimit\n          pageOffersSeeMore\n          pageOffersSeeMoreText\n          pageOffersSeeMoreUrl\n          defaultGameCategory\n          featuredOfferSource\n          sidebarTitle\n        }\n        contentAreaFields { ...ContentAreaFieldsFragment }\n\n        # Add homepage-specific fields here\n        homepageFields {\n          heroGroup {\n            heroLeftStack {\n              ctaText\n              linkDestination {\n                url\n                target\n                title\n              }\n              imageDesktop {\n                node {\n                  sourceUrl(size: LARGE)\n                  altText\n                  mediaDetails {\n                    width\n                    height\n                  }\n                }\n              }\n              imageMobile {\n                node {\n                  sourceUrl(size: LARGE)\n                  altText\n                  mediaDetails {\n                    width\n                    height\n                  }\n                }\n              }\n            }\n            heroFeaturedTall {\n              ctaText\n              linkDestination {\n                url\n                target\n                title\n              }\n              imageDesktop {\n                node {\n                  sourceUrl(size: LARGE)\n                  altText\n                  mediaDetails {\n                    width\n                    height\n                  }\n                }\n              }\n              imageMobile {\n                node {\n                  sourceUrl(size: LARGE)\n                  altText\n                  mediaDetails {\n                    width\n                    height\n                  }\n                }\n              }\n            }\n            heroRightGrid {\n              topLeftCard {\n                linkDestination {\n                  url\n                  target\n                  title\n                }\n                imageDesktop {\n                  node {\n                    sourceUrl(size: LARGE)\n                    altText\n                    mediaDetails {\n                      width\n                      height\n                    }\n                  }\n                }\n              }\n              topRightStack {\n                linkDestination {\n                  url\n                  target\n                  title\n                }\n                imageDesktop {\n                  node {\n                    sourceUrl(size: LARGE)\n                    altText\n                    mediaDetails {\n                      width\n                      height\n                    }\n                  }\n                }\n              }\n              bottomWide {\n                linkDestination {\n                  url\n                  target\n                  title\n                }\n                imageDesktop {\n                  node {\n                    sourceUrl(size: LARGE)\n                    altText\n                    mediaDetails {\n                      width\n                      height\n                    }\n                  }\n                }\n              }\n            }\n          }\n        }\n        \n      }\n\n      ... on Post {\n        id\n        # REQUIRED by [...uri].vue: a Post reaching the catch-all means a bare\n        # \u002F{slug}\u002F URL was requested, and it 301s to the canonical \u002Fblog\u002F{slug}\u002F route.\n        # That redirect is guarded on slug being non-empty — without this field the\n        # guard silently fails and the bare URL renders a duplicate of the article\n        # instead of redirecting.\n        slug\n        title\n        date\n        excerpt\n        seo { ...SeoFields }\n        userRating {\n          average\n          count\n          id\n        }\n        author {\n          node {\n            id\n            name\n            uri\n          }\n        }\n        featuredImage {\n          node {\n            altText\n            mediaDetails {\n              width\n              height\n            }\n            sourceUrl\n          }\n        }\n        template {\n          templateName\n        }\n        contentAreaFields { ...ContentAreaFieldsFragment }\n      }\n\n      ... on Category {\n        name\n        description\n        seo { ...TaxSeoFields }\n        categoryFields {\n          categorygroup {\n            heroImage {\n              node {\n                sourceUrl\n                altText\n                mediaDetails {\n                  width\n                  height\n                }\n              } \n            } \n            heroImageLink {\n              target\n              title\n              url\n            }\n          }\n        }\n      }\n      \n      ... on OfferTag {\n        id\n        name\n        description\n        seo { ...TaxSeoFields }\n        contentAreaFields { ...ContentAreaFieldsFragment }\n      }\n\n      ... on BonusKind {\n        uri\n        slug\n        name\n        description\n        seo { ...TaxSeoFields }\n      }\n\n      ... on User {\n        databaseId\n        name\n        description\n        url\n        avatar {\n          url\n        }\n        userProfile {\n          jobTitle\n        }\n        contentAreaFields { ...ContentAreaFieldsFragment }\n      }\n\n      ... on Slot {\n        title\n        seo { ...SeoFields }\n        slotThemes(first: 24) {\n          nodes {\n            id\n            name\n            slug\n            uri\n          }\n        }\n        gameProviders(first: 4) {\n          nodes {\n            id\n            name\n            slug\n            uri\n          }\n        }\n        slotFields {\n          coverImage\n          rtp\n          volatility\n        }\n        rgSlotExtra {\n          localSlug\n          metadataSectionTitle\n          metadata {\n            rowType\n            label\n            value\n            tooltipText\n          }\n        }\n        contentAreaFields { ...ContentAreaFieldsFragment }\n      }\n\n      ... on SlotTheme {\n        name\n        description\n        uri\n        seo { ...TaxSeoFields }\n        parent {\n          node {\n            id\n            name\n            slug\n          }\n        }\n        children {\n          nodes {\n            id\n            name\n            slug\n          }\n        }\n        contentAreaFields { ...ContentAreaFieldsFragment }\n      }\n\n      ... on GameProvider {\n        name\n        slug\n        uri\n        description\n        count\n        seo { ...TaxSeoFields }\n        slots(first: 24) {\n          nodes {\n            id\n            title\n            slug\n            featuredImage {\n              node {\n                sourceUrl\n                altText\n              }\n            }\n          }\n        }\n      }\n\n    }\n  }\n:{\"uri\":\"\u002Fblog\u002Ffavbet-bonus-fara-depunere\u002F\"}":889,"\n\nfragment ContentAreaFieldsFragment on ContentAreaFields {\n  __typename\n  content {\n    ... on ContentAreaFieldsContentTableLayout {\n      __typename\n      tableGroup {\n        headerColor\n        tableDescription\n        headers {\n          align\n          text\n        }\n        rows {\n          cells {\n            align\n            contentType\n            text\n            link {\n              target\n              title\n              url\n            }\n          }\n        }\n      }\n    }\n    \n    ...on ContentAreaFieldsContentNoticeLayout {\n      __typename\n      noticeGroup {\n        heading\n        text\n        enableCardIcon\n        button {\n          variant\n          link {\n            target\n            title\n            url\n          }\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentProAndConLayout {\n      __typename\n      proAndConGroup {\n        prosSectionTitle\n        consSectionTitle\n        itemsToDisplay\n        pros {\n          text\n        }\n        cons {\n          text\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentStepsLayout {\n      __typename\n      stepsGroup {\n        variant\n        steps {\n          title\n          description\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentQuoteLayout {\n      __typename\n      quoteGroup {\n        client\n        description\n      }\n    }\n\n    ... on ContentAreaFieldsContentDropdownLayout {\n      __typename\n      dropdownGroup {\n        items {\n          title\n          description\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentOfferImageInfoLayout {\n      __typename\n      offerImageInfoGroup {\n        heading\n        description1\n        description2\n        link {\n          target\n          title\n          url\n        }\n        image {\n          node {\n            altText\n            sourceUrl\n            mediaDetails {\n              width\n              height\n            }\n          }\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentFaqLayout {\n      __typename\n      faqGroup {\n        iconName\n        content\n        items {\n          title\n          answer\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentNumberedCardsLayout {\n      __typename\n      numberedCardsGroup {\n        variant\n        pillLabel\n        heading\n        items {\n          title\n          description\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentWysiwygLayout {\n      __typename\n      wysiwygGroup {\n        content\n      }\n    }\n\n    ... on ContentAreaFieldsContentTabsContentLayout {\n      __typename\n      tabsContentGroup {\n        tabs {\n          tabName\n          image {\n            node {\n              altText\n              sourceUrl\n              mediaDetails {\n                width\n                height\n              }\n            }\n          }\n          affLink {\n            target\n            title\n            url\n          }\n          pageLink {\n            target\n            title\n            url\n          }\n          content\n        }\n      }\n    }\n    \n    ... on ContentAreaFieldsContentSingleOfferLayout {\n      singleOfferGroup {\n        offer {\n          nodes {\n            ... on Offer {\n              ...ComsOfferCardFragment\n            }\n          }\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentTpsCalculatorLayout {\n      __typename\n      tpsCalculatorGroup {\n        content\n        ctaLink {\n          title\n          url\n          target\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentOfferListLayout {\n      __typename\n      offerListGroup {\n        theme\n        displayMode\n        count\n        queryMode\n        cardVariantFilter\n        bonusKindFilter\n        offerTagFilter\n        offerTypeFilter\n        casinoIds\n        titlePatternIds\n        sectionSubtitle\n        sectionTitle\n        asPageH1\n        titleAlign\n        viewAllLabel\n        viewAllUrl\n      }\n      # Resolved server-side (bfd v1.2.138) so the block renders without firing\n      # GetComsOfferListBlock after this query returns — that second request is a serial\n      # waterfall on the critical path, and ~1s of it is fixed per-request overhead.\n      #\n      # No arguments: every filter above is ACF the resolver reads itself, and the block\n      # paginates client-side over rows it already has. Unlike blogListData there is no\n      # route state to hand through.\n      offerListData {\n        items {\n          # patternTitle, not patternTitles(ids:), because the id set is PER BLOCK and a\n          # document variable can only carry one — the homepage renders six of these blocks\n          # with six different sets. PHP sees each block's own ACF, so PHP picks the title.\n          patternTitle\n          # The rank PHP sorted on. Selected so mapComsOffers' re-sort is a verifiable no-op\n          # rather than a silent reordering.\n          tps\n          offer {\n            ...ComsOfferCardFragment\n          }\n        }\n        pageInfo {\n          perPage\n          hasNextPage\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentHeroLayout {\n      __typename\n      heroGroup {\n        heroImage {\n          node {\n            altText\n            sourceUrl\n            mediaDetails {\n              width\n              height\n            }\n          }\n        }\n        headingImage {\n          node {\n            altText\n            sourceUrl\n            mediaDetails {\n              width\n              height\n            }\n          }\n        }\n        ctaLabel\n        ctaLink {\n          url\n          title\n          target\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentContactFormLayout {\n      __typename\n      contactFormGroup {\n        formId\n        submitLabel\n        successMessage\n      }\n    }\n\n    ... on ContentAreaFieldsContentShortcodeLayout {\n      __typename\n      shortcode\n      renderedHtml\n    }\n\n    ... on ContentAreaFieldsContentLegalDocumentLayout {\n      __typename\n      documentSlug\n      documentTitle\n      renderedHtml\n    }\n\n    ... on ContentAreaFieldsContentAnchorLayout {\n      __typename\n      anchorId\n    }\n\n    ... on ContentAreaFieldsContentSlotListLayout {\n      __typename\n      slotListGroup {\n        count\n        displayMode\n        sortBy\n        variant\n        gameProducerSlug\n        gameCategorySlug\n        casinoSlug\n        sectionSubtitle\n        sectionTitle\n        titleAlign\n        viewAllLabel\n        viewAllUrl\n      }\n      slotListData {\n        variant\n        items {\n          title\n          href\n          previewImageUrl\n          logoUrl\n          categoryLabel\n          producerName\n          producerHref\n          metaRows {\n            label\n            value\n          }\n          rtp\n          volatility\n          wagering\n          casinoName\n          tps\n          tpsMaxScore\n          offerTitle\n          spinCount\n          outlineCtaLabel\n          # outlineCtaHref deliberately NOT requested (2026-08-04): slot-list-fields.php on the\n          # live WP instance does not have this field yet, even though it is documented in\n          # docs\u002Fbackend\u002Fschema-reference.md as part of the plugin design. Requesting an unknown\n          # field is a GraphQL VALIDATION error, which nulls the ENTIRE response, not just this\n          # field, and this selection sits inside ContentAreaFields, which ~12 queries compose,\n          # so one missing field broke nearly every page on the site (verified: homepage, and any\n          # nodeByUri page with a slot-list block). The showOutlineCta guard in SlotCard.vue\n          # already requires outlineCtaHref to be truthy, so the CTA button degrades away cleanly\n          # without it. Re-add this line once the plugin ships the field, verified with a direct\n          # field query first (introspection is disabled), per the flexible-content-layout\n          # checklist in CLAUDE.md.\n          defaultTrackingLinks {\n            source\n            trackingCode\n            comsaffUrl\n          }\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentIconWysiwygLayout {\n      __typename\n      iconWysiwygGroup {\n        iconName\n        heading\n        content\n      }\n    }\n\n    ... on ContentAreaFieldsContentLatestPicksLayout {\n      __typename\n      latestPicksGroup {\n        sectionTitle\n        count\n        tabs {\n          label\n          queryMode\n          queryPreset\n          orderBy\n          offerTag\n          bonusKind\n        }\n      }\n      # Resolved server-side (bfd v1.2.139). This block saves more than the others: the tab\n      # query is a DYNAMIC document built from the ACF above, so it could not even be composed\n      # until contentAreaFields returned — a strictly serial second leg, on the homepage.\n      #\n      # NOTE: no backticks in these comments -- this whole document is a template literal, and\n      # one stray backtick truncates it silently (caught here by tsc, and by check:schema's\n      # brace-balance guard, which exists because it happened while wiring blogListData).\n      #\n      # The tabs list is positional and includes tabs that resolved to nothing; the component\n      # indexes by position, so a dropped empty tab would shift later tabs onto the wrong label.\n      latestPicksData {\n        tabs {\n          label\n          offers {\n            # The \"acum N zile\" badge reads this; the standalone query selected it too.\n            date\n            ...ComsOfferCardFragment\n          }\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentWysiwygCtaLayout {\n      __typename\n      wysiwygCtaGroup {\n        content\n        ctaLink {\n          title\n          url\n          target\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentWysiwygImageLayout {\n      __typename\n      wysiwygImageGroup {\n        heading\n        content\n        reverseColumns\n        image {\n          node {\n            altText\n            sourceUrl\n            mediaDetails {\n              width\n              height\n            }\n          }\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentPromoBannerLayout {\n      __typename\n      promoBannerData {\n        title\n        bgImageUrl\n        ctaLabel\n        ctaHref\n      }\n    }\n\n    ... on ContentAreaFieldsContentBlogListLayout {\n      __typename\n      blogListGroup {\n        sectionTitle\n        source\n        count\n        orderby\n        order\n        enableSort\n        enablePagination\n      }\n      # Resolved rows for the block, so it renders from THIS response instead of firing its own\n      # query behind it — a block cannot query until contentAreaFields returns, so its fetch is a\n      # serial waterfall on the critical path (~2.5s page query, then ~1.4s listing).\n      #\n      # NO ARGUMENTS, deliberately. NOTE: no backticks in these comments -- the whole document is\n      # a JS template literal and one stray backtick truncates it silently.\n      #\n      # This selection is spliced into 14 documents, and a selection set cannot declare variables,\n      # so every argument here forced all 14 to declare it too. Eight of nine never did, and an\n      # undeclared variable nulls the ENTIRE response: casino reviews, slots, providers, blog\n      # posts, the producers hub and all three homepage strategies returned nothing against the\n      # live schema. Removing the arguments removes that bug class outright.\n      #\n      # Nothing is lost. The resolver falls back to the block's own ACF (count\u002Forderby\u002Forder), and\n      # pagination + sort are interaction state, fetched by useBlogListBlockData's light query --\n      # the page query must never re-run for a page-param change, since re-paying contentAreaFields\n      # (~1.7s of its ~2.5s) is the cost consolidation exists to remove.\n      #\n      # If a paginated hub ever needs server-side page 1, add it as a FIELD ARGUMENT WITH A\n      # DEFAULT on the PHP side, never as a document variable.\n      blogListData {\n        items {\n          title\n          href\n          # RAW ISO — the card formats ro-RO short month itself. 'dateFormatted' is WP's long\n          # month and would silently change every rendered date.\n          date\n          excerpt\n          categoryLabel\n          heroImageUrl\n          heroImageAlt\n        }\n        pageInfo {\n          total\n          perPage\n          currentPage\n          totalPages\n          hasNextPage\n          hasPreviousPage\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentAuthorListLayout {\n      __typename\n      authorListGroup {\n        sectionTitle\n        queryMode\n        count\n        roles\n      }\n      authorListData {\n        items {\n          \n  displayName\n  roleLabel\n  avatarUrl\n  bio\n  linkedInUrl\n  profileHref\n\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentExcerptCardsLayout {\n      __typename\n      excerptCardsGroup {\n        sectionTitle\n        excerptLength\n        items {\n          title\n          content\n        }\n      }\n    }\n\n    ... on ContentAreaFieldsContentProducerListLayout {\n      __typename\n      producerListGroup {\n        displayMode\n        orderBy\n        count\n        producerSlug\n      }\n    }\n\n    ... on ContentAreaFieldsContentCasinoPreviewListLayout {\n      __typename\n      casinoPreviewListGroup {\n        displayMode\n        count\n      }\n      casinoPreviewListData {\n        items {\n          casinoLogoUrl\n          casinoName\n          reviewHref\n          offerTitle\n          ctaLabel\n          ctaHref\n        }\n      }\n    }\n\n  }\n}\n\n\nfragment ComsOfferCardFragment on Offer {\n  id\n  slug\n  title\n  tps\n  totalSpins\n  # Analytics data-type-offer label — resolved server-side (bfd's offer-type-map.php): the\n  # offer's bonus-kind term override when set, else its own offer_type mapped through the\n  # coms-sync-rg reference table. Passed straight through by comsOfferToCard() — no client-side\n  # mapping (there used to be one; it duplicated and drifted from bfd's own vocabulary).\n  trackingOfferType\n  linkedSlot {\n    name\n    rtp\n  }\n  # Every slot the spins apply to, RTP-descending, capped at 4 server-side. Named inside the\n  # Slot row's existing accordion dropdown when there's more than one.\n  linkedSlots {\n    name\n    rtp\n  }\n  effectiveValuePerSpin\n  # The shape-agnostic accessor: what TPS actually scored this offer on, whichever shape it stores\n  # its data in (no-deposit rows \u002F deposit-package tiers \u002F RG overlay). Without it a package offer\n  # renders a score with six blank rows, because its spins live in deposit_items.\n  tpsInputs {\n    source\n    spins\n    valuePerSpin\n    rtp\n    wagering\n    daysToExpire\n    maxWithdrawal\n    slotName\n  }\n  # Draft-safe parent-casino display: the offerFields.casino relation below drops draft casinos\n  # (unauthenticated GraphQL excludes them), and most casinos are drafts — so linkedCasino is the\n  # reliable source for the card's logo\u002Fname\u002Frating. The relation stays as a fallback.\n  linkedCasino {\n    databaseId\n    slug\n    title\n    trackingName\n    rating\n    logoUrl\n    logoAlt\n  }\n  # Default-facet tracking links, one per source the offer has a code for. The CTA link is built\n  # client-side from this array (pick by detected LIA source, fall back to \"dt\") — see\n  # app\u002Futils\u002FofferLinks.ts and docs\u002Fexplanation\u002Foffers.md §6a. Cacheable: identical for every\n  # visitor, the per-visitor pick happens after this reaches the browser.\n  defaultTrackingLinks {\n    source\n    trackingCode\n    comsaffUrl\n  }\n  offerTags(first: 8) {\n    nodes {\n      id\n      name\n      slug\n    }\n  }\n  offerFields {\n    offerType\n    offerTypeTags\n    startDate\n    endDate\n    noDepositItems {\n      spinsNo\n      spinValue\n      wagering\n      maxCashout\n      timeFrame\n      bonusCode\n    }\n    casino {\n      nodes {\n        ... on Casino {\n          id\n          slug\n          uri\n          title\n          trackingName\n          featuredImage { node { sourceUrl altText } }\n          comsThumbnailUrl\n          comsThumbnailAlt\n          casinoFields { rating }\n          rgCasinoExtra { localSlug }\n        }\n      }\n    }\n  }\n  rgOfferExtra {\n    offerTitle\n    shortDescription\n    rgSpinsNo\n    rgSpinValue\n    rgWagering\n    rgMaxCashout\n    rgTimeFrame\n    rgAvailableSlot {\n      nodes {\n        ... on Slot {\n          id\n          title\n          slotFields {\n            rtp\n          }\n        }\n      }\n    }\n    exceptionsValue\n    exceptionsText\n    bulletPoints {\n      text\n    }\n    customRows {\n      label\n      value\n      dropdownText\n      iconName\n    }\n  }\n}\n\n  \n  fragment SeoFields on PostTypeSEO {\n    title\n    metaDesc\n    canonical\n    opengraphTitle\n    opengraphDescription\n    opengraphType\n    opengraphUrl\n    opengraphImage {\n      sourceUrl\n      altText\n      mediaDetails { width height }\n    }\n    metaRobotsNoindex\n    metaRobotsNofollow\n    breadcrumbs { text url }\n  }\n\nquery GetPostBySlug($slug: ID!\n) {\n  post(id: $slug, idType: SLUG) {\n    __typename\n    id\n    uri\n    title\n    date\n    modified\n    excerpt\n    seo { ...SeoFields }\n    userRating {\n      average\n      count\n      id\n    }\n    author {\n      node {\n        id\n        name\n        uri\n      }\n    }\n    featuredImage {\n      node {\n        altText\n        mediaDetails {\n          width\n          height\n        }\n        sourceUrl\n      }\n    }\n    template {\n      templateName\n    }\n    contentAreaFields { ...ContentAreaFieldsFragment }\n    sidebarBannersData {\n      title\n      bgImageUrl\n      ctaLabel\n      ctaHref\n    }\n    postSingleSettings {\n      heroDescription\n      sidebarTitle\n    }\n  }\n}\n:{\"slug\":\"favbet-bonus-fara-depunere\"}":890},{"menus":4,"menusError":11,"settings":675,"settingsError":11},{"headerMenu":5,"footerMenu":671,"footerLegal":673},{"nodes":6},[7,29,35,41,109,115,121,127,133,139,145,151,157,163,169,427,434,441,448,455,462,469,476,483,490,497,504,511,518,525,532,539,546,553,560,567,574,581,588,595,602,609,616,623,630,637,644,653,662],{"id":8,"label":9,"url":10,"parentId":11,"cssClasses":12,"connectedNode":13,"childItems":16},"cG9zdDoyMzMw","Cazinouri Online","https:\u002F\u002Frotirigratuite.ro\u002Fcasino-online\u002F",null,[],{"node":14},{"__typename":15},"Page",{"nodes":17},[18,23],{"id":19,"label":20,"url":10,"connectedNode":21},"cG9zdDoyMzUy","Top Cazinouri",{"node":22},{"__typename":15},{"id":24,"label":25,"url":26,"connectedNode":27},"cG9zdDoyMzI5","Cazinouri Noi","https:\u002F\u002Frotirigratuite.ro\u002Fcazinouri-noi-fara-depunere\u002F",{"node":28},{"__typename":15},{"id":19,"label":20,"url":10,"parentId":8,"cssClasses":30,"connectedNode":31,"childItems":33},[],{"node":32},{"__typename":15},{"nodes":34},[],{"id":24,"label":25,"url":26,"parentId":8,"cssClasses":36,"connectedNode":37,"childItems":39},[],{"node":38},{"__typename":15},{"nodes":40},[],{"id":42,"label":43,"url":44,"parentId":11,"cssClasses":45,"connectedNode":46,"childItems":48},"cG9zdDoyMzMz","Bonusuri","https:\u002F\u002Frotirigratuite.ro\u002Fbonus-de-bun-venit\u002F",[],{"node":47},{"__typename":15},{"nodes":49},[50,55,61,67,73,79,85,91,97,103],{"id":51,"label":52,"url":44,"connectedNode":53},"cG9zdDoyMzYz","Bonus de bun venit",{"node":54},{"__typename":15},{"id":56,"label":57,"url":58,"connectedNode":59},"cG9zdDoyMzY0","Rotiri Gratuite Fără Depunere","https:\u002F\u002Frotirigratuite.ro\u002Fbonus-fara-depunere\u002F",{"node":60},{"__typename":15},{"id":62,"label":63,"url":64,"connectedNode":65},"cG9zdDo2NTE0","50 de Rotiri Gratuite","https:\u002F\u002Frotirigratuite.ro\u002Fbonus-fara-depunere\u002F50-rotiri-gratuite\u002F",{"node":66},{"__typename":15},{"id":68,"label":69,"url":70,"connectedNode":71},"cG9zdDo2NTEx","100 Rotiri Gratuite","https:\u002F\u002Frotirigratuite.ro\u002Fbonus-fara-depunere\u002F100-rotiri-gratuite\u002F",{"node":72},{"__typename":15},{"id":74,"label":75,"url":76,"connectedNode":77},"cG9zdDo2NTEy","200 Rotiri Gratuite","https:\u002F\u002Frotirigratuite.ro\u002Fbonus-fara-depunere\u002F200-rotiri-gratuite\u002F",{"node":78},{"__typename":15},{"id":80,"label":81,"url":82,"connectedNode":83},"cG9zdDo2NTE2","300 Rotiri Gratuite","https:\u002F\u002Frotirigratuite.ro\u002Fbonus-fara-depunere\u002F300-rotiri-gratuite\u002F",{"node":84},{"__typename":15},{"id":86,"label":87,"url":88,"connectedNode":89},"cG9zdDo2NTEz","400 Rotiri Gratuite","https:\u002F\u002Frotirigratuite.ro\u002Fbonus-fara-depunere\u002F400-rotiri-gratuite\u002F",{"node":90},{"__typename":15},{"id":92,"label":93,"url":94,"connectedNode":95},"cG9zdDo2NTE1","500 Rotiri Gratuite","https:\u002F\u002Frotirigratuite.ro\u002Fbonus-fara-depunere\u002F500-rotiri-gratuite\u002F",{"node":96},{"__typename":15},{"id":98,"label":99,"url":100,"connectedNode":101},"cG9zdDoyMzQy","Păcănele Fără Depunere","https:\u002F\u002Frotirigratuite.ro\u002Fpacanele-fara-depunere\u002F",{"node":102},{"__typename":15},{"id":104,"label":105,"url":106,"connectedNode":107},"cG9zdDoyMzM0","Cod Bonus","https:\u002F\u002Frotirigratuite.ro\u002Fcod-bonus-casino\u002F",{"node":108},{"__typename":15},{"id":51,"label":52,"url":44,"parentId":42,"cssClasses":110,"connectedNode":111,"childItems":113},[],{"node":112},{"__typename":15},{"nodes":114},[],{"id":56,"label":57,"url":58,"parentId":42,"cssClasses":116,"connectedNode":117,"childItems":119},[],{"node":118},{"__typename":15},{"nodes":120},[],{"id":62,"label":63,"url":64,"parentId":42,"cssClasses":122,"connectedNode":123,"childItems":125},[],{"node":124},{"__typename":15},{"nodes":126},[],{"id":68,"label":69,"url":70,"parentId":42,"cssClasses":128,"connectedNode":129,"childItems":131},[],{"node":130},{"__typename":15},{"nodes":132},[],{"id":74,"label":75,"url":76,"parentId":42,"cssClasses":134,"connectedNode":135,"childItems":137},[],{"node":136},{"__typename":15},{"nodes":138},[],{"id":80,"label":81,"url":82,"parentId":42,"cssClasses":140,"connectedNode":141,"childItems":143},[],{"node":142},{"__typename":15},{"nodes":144},[],{"id":86,"label":87,"url":88,"parentId":42,"cssClasses":146,"connectedNode":147,"childItems":149},[],{"node":148},{"__typename":15},{"nodes":150},[],{"id":92,"label":93,"url":94,"parentId":42,"cssClasses":152,"connectedNode":153,"childItems":155},[],{"node":154},{"__typename":15},{"nodes":156},[],{"id":98,"label":99,"url":100,"parentId":42,"cssClasses":158,"connectedNode":159,"childItems":161},[],{"node":160},{"__typename":15},{"nodes":162},[],{"id":104,"label":105,"url":106,"parentId":42,"cssClasses":164,"connectedNode":165,"childItems":167},[],{"node":166},{"__typename":15},{"nodes":168},[],{"id":170,"label":171,"url":172,"parentId":11,"cssClasses":173,"connectedNode":174,"childItems":176},"cG9zdDoyMzQ0","Recenzii","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002F",[],{"node":175},{"__typename":15},{"nodes":177},[178,187,195,203,211,219,227,235,243,251,259,267,275,283,291,299,307,315,323,331,339,347,355,363,371,379,387,395,403,411,419],{"id":179,"label":180,"url":181,"connectedNode":182},"cG9zdDo2Mzc3","Bilion","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fbil\u002F",{"node":183},{"__typename":184,"rgCasinoExtra":185},"Casino",{"localSlug":186},"bilion-casino",{"id":188,"label":189,"url":190,"connectedNode":191},"cG9zdDo2Mzgw","Superbet","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fsup\u002F",{"node":192},{"__typename":184,"rgCasinoExtra":193},{"localSlug":194},"superbet-casino",{"id":196,"label":197,"url":198,"connectedNode":199},"cG9zdDo2Mzgx","Unibet","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Funi\u002F",{"node":200},{"__typename":184,"rgCasinoExtra":201},{"localSlug":202},"unibet-casino",{"id":204,"label":205,"url":206,"connectedNode":207},"cG9zdDo2MzY0","Zinx","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fznx\u002F",{"node":208},{"__typename":184,"rgCasinoExtra":209},{"localSlug":210},"zinx-casino",{"id":212,"label":213,"url":214,"connectedNode":215},"cG9zdDo2MzY4","Winboss","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fwbs\u002F",{"node":216},{"__typename":184,"rgCasinoExtra":217},{"localSlug":218},"winboss-casino",{"id":220,"label":221,"url":222,"connectedNode":223},"cG9zdDo2Mzc4","Casa Pariurilor","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fcpr\u002F",{"node":224},{"__typename":184,"rgCasinoExtra":225},{"localSlug":226},"casa-pariurilor-casino",{"id":228,"label":229,"url":230,"connectedNode":231},"cG9zdDo2Mzgy","Fortuna","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Ffor\u002F",{"node":232},{"__typename":184,"rgCasinoExtra":233},{"localSlug":234},"fortuna-casino",{"id":236,"label":237,"url":238,"connectedNode":239},"cG9zdDo2Mzcx","Toto Gaming","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Ftot\u002F",{"node":240},{"__typename":184,"rgCasinoExtra":241},{"localSlug":242},"toto-gaming-casino",{"id":244,"label":245,"url":246,"connectedNode":247},"cG9zdDo2Mzc5","Conti","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fcnt\u002F",{"node":248},{"__typename":184,"rgCasinoExtra":249},{"localSlug":250},"conti-cazino",{"id":252,"label":253,"url":254,"connectedNode":255},"cG9zdDo2Mzgz","VladCazino","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fvld\u002F",{"node":256},{"__typename":184,"rgCasinoExtra":257},{"localSlug":258},"vlad-cazino",{"id":260,"label":261,"url":262,"connectedNode":263},"cG9zdDo2Mzg0","Prima","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fprm\u002F",{"node":264},{"__typename":184,"rgCasinoExtra":265},{"localSlug":266},"prima-casino",{"id":268,"label":269,"url":270,"connectedNode":271},"cG9zdDo2Mzg1","Betano","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fbtn\u002F",{"node":272},{"__typename":184,"rgCasinoExtra":273},{"localSlug":274},"betano-casino",{"id":276,"label":277,"url":278,"connectedNode":279},"cG9zdDo2Mzg2","GetsBet","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fget\u002F",{"node":280},{"__typename":184,"rgCasinoExtra":281},{"localSlug":282},"getsbet-casino",{"id":284,"label":285,"url":286,"connectedNode":287},"cG9zdDo2Mzg3","MrBit","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fmrb\u002F",{"node":288},{"__typename":184,"rgCasinoExtra":289},{"localSlug":290},"mr-bit-casino",{"id":292,"label":293,"url":294,"connectedNode":295},"cG9zdDo2Mzg4","Netbet","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fnet\u002F",{"node":296},{"__typename":184,"rgCasinoExtra":297},{"localSlug":298},"netbet-casino",{"id":300,"label":301,"url":302,"connectedNode":303},"cG9zdDo2Mzg5","Pacanele.ro","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fpac\u002F",{"node":304},{"__typename":184,"rgCasinoExtra":305},{"localSlug":306},"pacanele-ro-casino",{"id":308,"label":309,"url":310,"connectedNode":311},"cG9zdDo2Mzkw","Pokerstars","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fpks\u002F",{"node":312},{"__typename":184,"rgCasinoExtra":313},{"localSlug":314},"pokerstars-casino",{"id":316,"label":317,"url":318,"connectedNode":319},"cG9zdDo2Mzkx","12xBet","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002F12x\u002F",{"node":320},{"__typename":184,"rgCasinoExtra":321},{"localSlug":322},"12xbet-casino",{"id":324,"label":325,"url":326,"connectedNode":327},"cG9zdDo2Mzky","32Rosu","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002F32r\u002F",{"node":328},{"__typename":184,"rgCasinoExtra":329},{"localSlug":330},"32rosu-casino",{"id":332,"label":333,"url":334,"connectedNode":335},"cG9zdDo2Mzkz","888","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002F888\u002F",{"node":336},{"__typename":184,"rgCasinoExtra":337},{"localSlug":338},"888-casino",{"id":340,"label":341,"url":342,"connectedNode":343},"cG9zdDo2Mzk0","Don.Ro","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fdon\u002F",{"node":344},{"__typename":184,"rgCasinoExtra":345},{"localSlug":346},"don-casino",{"id":348,"label":349,"url":350,"connectedNode":351},"cG9zdDo2Mzk1","Hot Spins","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fhot\u002F",{"node":352},{"__typename":184,"rgCasinoExtra":353},{"localSlug":354},"hot-spins-casino",{"id":356,"label":357,"url":358,"connectedNode":359},"cG9zdDo2Mzk2","King Casino","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fkng\u002F",{"node":360},{"__typename":184,"rgCasinoExtra":361},{"localSlug":362},"king-casino",{"id":364,"label":365,"url":366,"connectedNode":367},"cG9zdDo2Mzk3","Manhattan","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fman\u002F",{"node":368},{"__typename":184,"rgCasinoExtra":369},{"localSlug":370},"manhattan-casino",{"id":372,"label":373,"url":374,"connectedNode":375},"cG9zdDo2Mzk4","MaxBet","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fmax\u002F",{"node":376},{"__typename":184,"rgCasinoExtra":377},{"localSlug":378},"maxbet-casino",{"id":380,"label":381,"url":382,"connectedNode":383},"cG9zdDo2Mzk5","Million","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fmil\u002F",{"node":384},{"__typename":184,"rgCasinoExtra":385},{"localSlug":386},"million-casino",{"id":388,"label":389,"url":390,"connectedNode":391},"cG9zdDo2NDAw","Napoleon","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fnap\u002F",{"node":392},{"__typename":184,"rgCasinoExtra":393},{"localSlug":394},"napoleon-casino",{"id":396,"label":397,"url":398,"connectedNode":399},"cG9zdDo2NDAx","PariuriPlus","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fppl\u002F",{"node":400},{"__typename":184,"rgCasinoExtra":401},{"localSlug":402},"pariuri-plus-casino",{"id":404,"label":405,"url":406,"connectedNode":407},"cG9zdDo2NDAy","Player","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fply\u002F",{"node":408},{"__typename":184,"rgCasinoExtra":409},{"localSlug":410},"player-casino",{"id":412,"label":413,"url":414,"connectedNode":415},"cG9zdDo2NDAz","Princess","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fpnc\u002F",{"node":416},{"__typename":184,"rgCasinoExtra":417},{"localSlug":418},"princess-casino",{"id":420,"label":421,"url":422,"connectedNode":423},"cG9zdDo2NDA0","TopBet","https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Ftop\u002F",{"node":424},{"__typename":184,"rgCasinoExtra":425},{"localSlug":426},"topbet-casino",{"id":179,"label":180,"url":181,"parentId":170,"cssClasses":428,"connectedNode":429,"childItems":432},[],{"node":430},{"__typename":184,"rgCasinoExtra":431},{"localSlug":186},{"nodes":433},[],{"id":188,"label":189,"url":190,"parentId":170,"cssClasses":435,"connectedNode":436,"childItems":439},[],{"node":437},{"__typename":184,"rgCasinoExtra":438},{"localSlug":194},{"nodes":440},[],{"id":196,"label":197,"url":198,"parentId":170,"cssClasses":442,"connectedNode":443,"childItems":446},[],{"node":444},{"__typename":184,"rgCasinoExtra":445},{"localSlug":202},{"nodes":447},[],{"id":204,"label":205,"url":206,"parentId":170,"cssClasses":449,"connectedNode":450,"childItems":453},[],{"node":451},{"__typename":184,"rgCasinoExtra":452},{"localSlug":210},{"nodes":454},[],{"id":212,"label":213,"url":214,"parentId":170,"cssClasses":456,"connectedNode":457,"childItems":460},[],{"node":458},{"__typename":184,"rgCasinoExtra":459},{"localSlug":218},{"nodes":461},[],{"id":220,"label":221,"url":222,"parentId":170,"cssClasses":463,"connectedNode":464,"childItems":467},[],{"node":465},{"__typename":184,"rgCasinoExtra":466},{"localSlug":226},{"nodes":468},[],{"id":228,"label":229,"url":230,"parentId":170,"cssClasses":470,"connectedNode":471,"childItems":474},[],{"node":472},{"__typename":184,"rgCasinoExtra":473},{"localSlug":234},{"nodes":475},[],{"id":236,"label":237,"url":238,"parentId":170,"cssClasses":477,"connectedNode":478,"childItems":481},[],{"node":479},{"__typename":184,"rgCasinoExtra":480},{"localSlug":242},{"nodes":482},[],{"id":244,"label":245,"url":246,"parentId":170,"cssClasses":484,"connectedNode":485,"childItems":488},[],{"node":486},{"__typename":184,"rgCasinoExtra":487},{"localSlug":250},{"nodes":489},[],{"id":252,"label":253,"url":254,"parentId":170,"cssClasses":491,"connectedNode":492,"childItems":495},[],{"node":493},{"__typename":184,"rgCasinoExtra":494},{"localSlug":258},{"nodes":496},[],{"id":260,"label":261,"url":262,"parentId":170,"cssClasses":498,"connectedNode":499,"childItems":502},[],{"node":500},{"__typename":184,"rgCasinoExtra":501},{"localSlug":266},{"nodes":503},[],{"id":268,"label":269,"url":270,"parentId":170,"cssClasses":505,"connectedNode":506,"childItems":509},[],{"node":507},{"__typename":184,"rgCasinoExtra":508},{"localSlug":274},{"nodes":510},[],{"id":276,"label":277,"url":278,"parentId":170,"cssClasses":512,"connectedNode":513,"childItems":516},[],{"node":514},{"__typename":184,"rgCasinoExtra":515},{"localSlug":282},{"nodes":517},[],{"id":284,"label":285,"url":286,"parentId":170,"cssClasses":519,"connectedNode":520,"childItems":523},[],{"node":521},{"__typename":184,"rgCasinoExtra":522},{"localSlug":290},{"nodes":524},[],{"id":292,"label":293,"url":294,"parentId":170,"cssClasses":526,"connectedNode":527,"childItems":530},[],{"node":528},{"__typename":184,"rgCasinoExtra":529},{"localSlug":298},{"nodes":531},[],{"id":300,"label":301,"url":302,"parentId":170,"cssClasses":533,"connectedNode":534,"childItems":537},[],{"node":535},{"__typename":184,"rgCasinoExtra":536},{"localSlug":306},{"nodes":538},[],{"id":308,"label":309,"url":310,"parentId":170,"cssClasses":540,"connectedNode":541,"childItems":544},[],{"node":542},{"__typename":184,"rgCasinoExtra":543},{"localSlug":314},{"nodes":545},[],{"id":316,"label":317,"url":318,"parentId":170,"cssClasses":547,"connectedNode":548,"childItems":551},[],{"node":549},{"__typename":184,"rgCasinoExtra":550},{"localSlug":322},{"nodes":552},[],{"id":324,"label":325,"url":326,"parentId":170,"cssClasses":554,"connectedNode":555,"childItems":558},[],{"node":556},{"__typename":184,"rgCasinoExtra":557},{"localSlug":330},{"nodes":559},[],{"id":332,"label":333,"url":334,"parentId":170,"cssClasses":561,"connectedNode":562,"childItems":565},[],{"node":563},{"__typename":184,"rgCasinoExtra":564},{"localSlug":338},{"nodes":566},[],{"id":340,"label":341,"url":342,"parentId":170,"cssClasses":568,"connectedNode":569,"childItems":572},[],{"node":570},{"__typename":184,"rgCasinoExtra":571},{"localSlug":346},{"nodes":573},[],{"id":348,"label":349,"url":350,"parentId":170,"cssClasses":575,"connectedNode":576,"childItems":579},[],{"node":577},{"__typename":184,"rgCasinoExtra":578},{"localSlug":354},{"nodes":580},[],{"id":356,"label":357,"url":358,"parentId":170,"cssClasses":582,"connectedNode":583,"childItems":586},[],{"node":584},{"__typename":184,"rgCasinoExtra":585},{"localSlug":362},{"nodes":587},[],{"id":364,"label":365,"url":366,"parentId":170,"cssClasses":589,"connectedNode":590,"childItems":593},[],{"node":591},{"__typename":184,"rgCasinoExtra":592},{"localSlug":370},{"nodes":594},[],{"id":372,"label":373,"url":374,"parentId":170,"cssClasses":596,"connectedNode":597,"childItems":600},[],{"node":598},{"__typename":184,"rgCasinoExtra":599},{"localSlug":378},{"nodes":601},[],{"id":380,"label":381,"url":382,"parentId":170,"cssClasses":603,"connectedNode":604,"childItems":607},[],{"node":605},{"__typename":184,"rgCasinoExtra":606},{"localSlug":386},{"nodes":608},[],{"id":388,"label":389,"url":390,"parentId":170,"cssClasses":610,"connectedNode":611,"childItems":614},[],{"node":612},{"__typename":184,"rgCasinoExtra":613},{"localSlug":394},{"nodes":615},[],{"id":396,"label":397,"url":398,"parentId":170,"cssClasses":617,"connectedNode":618,"childItems":621},[],{"node":619},{"__typename":184,"rgCasinoExtra":620},{"localSlug":402},{"nodes":622},[],{"id":404,"label":405,"url":406,"parentId":170,"cssClasses":624,"connectedNode":625,"childItems":628},[],{"node":626},{"__typename":184,"rgCasinoExtra":627},{"localSlug":410},{"nodes":629},[],{"id":412,"label":413,"url":414,"parentId":170,"cssClasses":631,"connectedNode":632,"childItems":635},[],{"node":633},{"__typename":184,"rgCasinoExtra":634},{"localSlug":418},{"nodes":636},[],{"id":420,"label":421,"url":422,"parentId":170,"cssClasses":638,"connectedNode":639,"childItems":642},[],{"node":640},{"__typename":184,"rgCasinoExtra":641},{"localSlug":426},{"nodes":643},[],{"id":645,"label":646,"url":647,"parentId":11,"cssClasses":648,"connectedNode":649,"childItems":651},"cG9zdDoyMzUx","Sloturi Gratis","https:\u002F\u002Frotirigratuite.ro\u002Fsloturi\u002F",[],{"node":650},{"__typename":15},{"nodes":652},[],{"id":654,"label":655,"url":656,"parentId":11,"cssClasses":657,"connectedNode":658,"childItems":660},"cG9zdDoyMzY1","Producători","https:\u002F\u002Frotirigratuite.ro\u002Fsloturi\u002Fproducatori\u002F",[],{"node":659},{"__typename":15},{"nodes":661},[],{"id":663,"label":664,"url":665,"parentId":11,"cssClasses":666,"connectedNode":667,"childItems":669},"cG9zdDoyMzQx","Ghiduri","https:\u002F\u002Frotirigratuite.ro\u002Fblog\u002F",[],{"node":668},{"__typename":15},{"nodes":670},[],{"nodes":672},[],{"nodes":674},[],{"themeSettings":676,"bfdSiteChrome":811,"slotThemes":849},{"stickyOfferSettings":677,"themeFields":683,"footerColumns":696,"placeholderImages":761,"ageGate":767,"casinoDictionary":769,"casinoReviewPopups":801,"slotPageMetadataDefaults":804},{"enabled":678,"title":679,"buttonText":680,"buttonUrl":681,"delaySeconds":682,"image":11},false,"🎁 Ofertă Exclusivă","Revendică","https:\u002F\u002Frotirigratuite.wpenginepowered.com\u002Fgo\u002Fbetano-cazino",5,{"topBarLink1":684,"topBarLink2":688,"headerPromo":691,"footerDescription1":692,"footerDescription2":693,"footerDisclaimer":694,"socialLinks":695},{"url":685,"title":686,"target":687},"\u002Flicenta-onjn\u002F","Licenta","",{"url":689,"title":690,"target":687},"\u002Fjoc-responsabil\u002F","Joc responsabil",{"image":11,"link":11},"\u003Cdiv class=\"qMYqUG_convSearchResultHighlightRoot\">\n\u003Cdiv class=\"\" data-turn-id-container=\"request-WEB:711b7619-47bf-4e40-abf1-0404383dcca8-11\" data-is-intersecting=\"true\">\n\u003Csection class=\"text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" data-turn-id=\"request-WEB:711b7619-47bf-4e40-abf1-0404383dcca8-11\" data-turn-id-container=\"request-WEB:711b7619-47bf-4e40-abf1-0404383dcca8-11\" data-testid=\"conversation-turn-24\" data-scroll-anchor=\"false\" data-turn=\"assistant\">\n\u003Cdiv class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm\u002Fmain:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg\u002Fmain:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)\">\n\u003Cdiv class=\"[--thread-content-max-width:40rem] @w-lg\u002Fmain:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\u002Fturn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" data-conversation-screenshot-content=\"\">\n\u003Cdiv class=\"flex max-w-full flex-col gap-4 grow\">\n\u003Cdiv class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&amp;]:mt-1\" dir=\"auto\" tabindex=\"0\" data-message-author-role=\"assistant\" data-message-id=\"519f7276-1154-4d50-be45-eaddd6524607\" data-message-model-slug=\"gpt-5-5-thinking\" data-turn-start-message=\"true\">\n\u003Cdiv class=\"flex w-full flex-col gap-1 empty:hidden\">\n\u003Cdiv class=\"markdown prose dark:prose-invert wrap-break-word w-full light markdown-new-styling\">\n\u003Cdiv class=\"qMYqUG_convSearchResultHighlightRoot\">\n\u003Cdiv class=\"\" data-turn-id-container=\"request-WEB:711b7619-47bf-4e40-abf1-0404383dcca8-12\" data-is-intersecting=\"true\">\n\u003Csection class=\"text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" data-turn-id=\"request-WEB:711b7619-47bf-4e40-abf1-0404383dcca8-12\" data-turn-id-container=\"request-WEB:711b7619-47bf-4e40-abf1-0404383dcca8-12\" data-testid=\"conversation-turn-26\" data-scroll-anchor=\"false\" data-turn=\"assistant\">\n\u003Cdiv class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm\u002Fmain:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg\u002Fmain:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)\">\n\u003Cdiv class=\"[--thread-content-max-width:40rem] @w-lg\u002Fmain:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\u002Fturn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" data-conversation-screenshot-content=\"\">\n\u003Cdiv class=\"flex max-w-full flex-col gap-4 grow\">\n\u003Cdiv class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&amp;]:mt-1\" dir=\"auto\" tabindex=\"0\" data-message-author-role=\"assistant\" data-message-id=\"df1316cf-2461-495e-a142-0f35713e4d25\" data-message-model-slug=\"gpt-5-5-thinking\" data-turn-start-message=\"true\">\n\u003Cdiv class=\"flex w-full flex-col gap-1 empty:hidden\">\n\u003Cdiv class=\"markdown prose dark:prose-invert wrap-break-word w-full light markdown-new-styling\">\n\u003Cp data-start=\"0\" data-end=\"266\" data-is-last-node=\"\" data-is-only-node=\"\">Pe \u003Cstrong data-start=\"3\" data-end=\"24\">RotiriGratuite.ro\u003C\u002Fstrong> găsești oferte de la cazinouri online licențiate în România. Listăm rotiri fără depunere, bonusuri la înregistrare și promoții pentru sloturi, alături de detalii importante despre rulaj, jocuri eligibile și limite de retragere.\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fsection>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003Cdiv class=\"z-0 flex min-h-[46px] justify-start\">\u003C\u002Fdiv>\n\u003Cdiv class=\"mt-3 w-full empty:hidden\">\n\u003Cdiv class=\"text-center\">\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fsection>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003Cdiv class=\"pointer-events-none -mt-px h-px translate-y-[calc(var(--scroll-root-safe-area-inset-bottom)-14*var(--spacing))]\" aria-hidden=\"true\">\u003C\u002Fdiv>\n\u003Cp>&nbsp;\u003C\u002Fp>\n","\u003Cp>\u003Ca href=\"https:\u002F\u002Frotirigratuite.ro\u002F\">Rotirigratuite.ro\u003C\u002Fa> este deținut și operat de OGOOGA SERVICES SRL, persoană juridică română, cu sediul social în București, Sector 1, Bulevardul ION MIHALACHE nr. 15-17, etaj 8, număr de înregistrare J2016011888403, cod unic de înregistrare 36506980 și are dreptul de a desfășura activitatea în calitate de afiliat în domeniul jocurilor de noroc, acordat prin licența valabilă până la data de 31.10.2026, conform Deciziei Oficiului Național al Jocurilor de Noroc, nr.1879\u002F20.10.2016.\u003C\u002Fp>\n\u003Cp>Accesul pe \u003Ca href=\"https:\u002F\u002Frotirigratuite.ro\u002F\">Rotirigratuite.ro\u003C\u002Fa> este strict interzis minorilor! Pe acest site nu se desfășoară activități de jocuri de noroc, însă pe site-urile partenerilor promovați se joacă cu bani reali, vă încurajăm să jucați responsabil și să pariați doar atât cât vă permiteți. De asemenea, vă rugăm să aveți în vedere faptul că activitatea de jocuri de noroc poate fi interzisă în jurisdicția în care sunteți localizat, fiind responsabilitatea dumneavoastră să respectați legislația în vigoare.\u003C\u002Fp>\n\u003Cp>Activitatea de jocuri de noroc poate cauza dependență și, totodată, poate avea un impact asupra situației dumneavoastră financiare. Vă rugăm să jucați responsabil! În cazul dependenței de jocuri de noroc sau pariuri, vă rugăm să contactați Jocresponsabil, la numărul gratuit +0800 800 099, sau să accesați \u003Ca href=\"https:\u002F\u002Fjocresponsabil.ro\u002F\" target=\"_blank\" rel=\"nofollow noopener\">jocresponsabil.ro\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>&nbsp;\u003C\u002Fp>\n","\u003Cp>Pe acest site depunem toate eforturile astfel încât să prezentăm exclusiv oferte, bonusuri și rotiri gratuite, respectiv fără depunere, si totodată ca informațiile publicate să fie corecte și actualizate. Dacă identificați o ofertă sau un bonus care nu este gratuit\u002Ffără depunere ori observați orice altă neconcordanță, vă rugăm să ne semnalați acest lucru pentru a putea remedia situația. Totodată, vă recomandăm să consultați cu atenție Termenii și Condițiile fiecărui cazinou pentru a verifica condițiile aplicabile fiecărei oferte.\u003C\u002Fp>\n",{"facebook":11,"youtube":11,"twitch":11,"tiktok":11,"instagram":11},[697,735,753],{"title":698,"links":699},"Informații Utile",[700,703,706,709,711,714,717,720,723,726,729,732],{"label":701,"url":702,"target":11},"Despre noi","https:\u002F\u002Frotirigratuite.ro\u002Fdespre-noi\u002F",{"label":704,"url":705,"target":11},"Echipa Rotiri Gratuite","https:\u002F\u002Frotirigratuite.ro\u002Fautori\u002F",{"label":707,"url":708,"target":11},"Cum evaluăm sloturile","https:\u002F\u002Frotirigratuite.ro\u002Fmetodologie-sloturi\u002F",{"label":710,"url":172,"target":11},"Cum evaluăm cazinourile",{"label":712,"url":713,"target":11},"True Bonus Index","https:\u002F\u002Frotirigratuite.ro\u002Ftrue-bonus-score\u002F",{"label":715,"url":716,"target":11},"Joc Responsabil","https:\u002F\u002Frotirigratuite.ro\u002Fjoc-responsabil\u002F",{"label":718,"url":719,"target":11},"Termeni și Condiții","https:\u002F\u002Frotirigratuite.ro\u002Ftermeni-si-conditii\u002F",{"label":721,"url":722,"target":11},"Politica de confidențialitate","https:\u002F\u002Frotirigratuite.ro\u002Fpolitica-de-confidentialitate\u002F",{"label":724,"url":725,"target":11},"Politica privind Cookie-urile (UE)","https:\u002F\u002Frotirigratuite.ro\u002Fcookie-policy-eu\u002F",{"label":727,"url":728,"target":11},"Licenta ONJN","https:\u002F\u002Frotirigratuite.ro\u002Flicenta-onjn\u002F",{"label":730,"url":731,"target":11},"Cookie de retea","https:\u002F\u002Frotirigratuite.ro\u002Fcookie-de-retea\u002F",{"label":733,"url":734,"target":11},"Contact","https:\u002F\u002Frotirigratuite.ro\u002Fcontact\u002F",{"title":43,"links":736},[737,738,739,741,743,745,747,749,751],{"label":52,"url":44,"target":11},{"label":57,"url":58,"target":11},{"label":740,"url":64,"target":11},"50 rotiri gratuite",{"label":742,"url":70,"target":11},"100 rotiri gratuite",{"label":744,"url":76,"target":11},"200 rotiri gratuite",{"label":746,"url":82,"target":11},"300 rotiri gratuite",{"label":748,"url":88,"target":11},"400 rotiri gratuite",{"label":750,"url":94,"target":11},"500 rotiri gratuite",{"label":752,"url":106,"target":11},"Coduri bonus pentru rotiri",{"title":754,"links":755},"Cazinouri",[756,758,760],{"label":757,"url":10,"target":11},"Top Cazinouri Online",{"label":759,"url":26,"target":11},"Cele Mai Noi Cazinouri",{"label":99,"url":100,"target":11},{"gameLogoUrl":762,"gameBannerUrl":763,"casinoLogoUrl":764,"producerLogoUrl":765,"blogHeroUrl":766},"https:\u002F\u002Frotirigratuite.wpenginepowered.com\u002Fwp-content\u002Fuploads\u002F2026\u002F05\u002Flogo-pacanele-sweet-bonanza-demo.jpg","https:\u002F\u002Frotirigratuite.wpenginepowered.com\u002Fwp-content\u002Fuploads\u002F2026\u002F05\u002Fecran-sweet-bonanza-gratis.jpg","https:\u002F\u002Frotirigratuite.wpenginepowered.com\u002Fwp-content\u002Fuploads\u002F2026\u002F04\u002Fd108fe5cd0ecc2b167a672a42fae861997b253c6-5000x3000-1-scaled.jpg","https:\u002F\u002Frotirigratuite.wpenginepowered.com\u002Fwp-content\u002Fuploads\u002F2026\u002F05\u002FNetent_62.jpg","https:\u002F\u002Frotirigratuite.wpenginepowered.com\u002Fwp-content\u002Fuploads\u002F2026\u002F05\u002Fmr-bit-casino-bonus-fara-depunere-1024x382.jpg",{"enabled":678,"redirectUrl":768},"https:\u002F\u002Fwww.google.com",{"tpsTooltipText":11,"tpsMaxScore":770,"rows":771},1250,[772,777,782,787,791,796],{"key":773,"label":774,"fieldSlug":775,"iconName":11,"dropdownText":776},"valoare_spin","Valoare\u002Fspin","valuePerSpin","Miza fixă pentru fiecare rotire gratuită primită. Cu cât valoarea este mai mare, cu atât câștigurile potențiale pot fi mai consistente.",{"key":778,"label":779,"fieldSlug":780,"iconName":11,"dropdownText":781},"rulaj","Rulaj","wagering","De câte ori trebuie să pariezi câștigurile din rotiri înainte de a le putea retrage. Un rulaj mai mic (ex: 1x, 5x) este mult mai avantajos.",{"key":783,"label":784,"fieldSlug":785,"iconName":11,"dropdownText":786},"slot","Slot","slotName","Jocul specific la care sunt disponibile rotirile. Verifică miza și funcțiile speciale ale acestui slot înainte de a începe.",{"key":788,"label":789,"fieldSlug":788,"iconName":11,"dropdownText":790},"rtp","RTP","Procentajul teoretic de returnare la jucător al slotului. Valorile de peste 96% înseamnă șanse statistice mai bune de câștig pe termen lung.",{"key":792,"label":793,"fieldSlug":792,"iconName":794,"dropdownText":795},"maxWithdrawal","Retragere Maximă","coins","Suma maximă de bani reali pe care o poți retrage în cont din acest bonus, chiar dacă ai câștigat mai mult în timpul jocului.",{"key":797,"label":798,"fieldSlug":799,"iconName":11,"dropdownText":800},"valabilitate","Valabilitate","expiry","Timpul disponibil pentru a activa rotirile și a îndeplini condițiile de rulaj. Ai grijă să le folosești înainte să expire!",{"aboutUsContent":802,"adDisclosureContent":803},"\u003Cp>RotiriGratuite.ro este o platformă de afiliere dedicată ofertelor cu rotiri disponibile la cazinourile licențiate din România. Analizăm și comparăm promoțiile active pentru a prezenta informații clare, actualizate și ușor de verificat. Fiecare ofertă este verificată în funcție de condițiile de acordare, cerințele de rulaj și termenii promoției, iar recomandările noastre se bazează pe evaluări obiective și pe testarea operatorilor de jocuri.\u003C\u002Fp>","\u003Cdiv class=\"author-meta d-md-flex mb-4 mt-4\">\n\u003Cdiv class=\"row w-100 justify-content-between\">\n\u003Cdiv class=\"col-12 col-lg-3\">\n\u003Cdiv class=\"justify-content-lg-end d-flex hover-elements\">\n\u003Cdiv class=\"d-flex align-items-center tooltip-hover tooltip-ad\">\n\u003Cdiv class=\"tooltip-content\">\n\u003Cdiv class=\"title\">\u003Cstrong>Politica de Publicitate și Afiliere\u003C\u002Fstrong>\u003C\u002Fdiv>\n\u003Cp>Platforma noastră este finanțată prin comisioanele primite de la partenerii afiliați atunci când utilizatorii se înregistrează sau efectuează depuneri prin linkurile disponibile pe site. Acest lucru nu implică niciun cost suplimentar pentru tine și nu influențează modul în care evaluăm sau recomandăm operatorii. Selectăm doar cazinouri licențiate și verificăm constant informațiile publicate, pentru a ne asigura că recomandările rămân corecte, actualizate și de încredere.\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003Cp>&nbsp;\u003C\u002Fp>",{"category":805,"producer":808,"rtp":810},{"enabled":806,"label":807,"tooltipContent":11},true,"Categorie",{"enabled":806,"label":809,"tooltipContent":11},"Producător",{"enabled":806,"label":789,"tooltipContent":11},{"stickyOfferSettings":812,"themeFields":813,"footerColumns":818},{"enabled":678,"title":679,"buttonText":680,"buttonUrl":681,"delaySeconds":682,"image":11},{"topBarLink1":814,"topBarLink2":815,"headerPromo":816,"footerDescription1":692,"footerDescription2":693,"footerDisclaimer":694,"socialLinks":817},{"url":685,"title":686,"target":687},{"url":689,"title":690,"target":687},{"image":11,"link":11},{"facebook":11,"youtube":11,"twitch":11,"tiktok":11,"instagram":11},[819,833,844],{"title":698,"links":820},[821,822,823,824,825,826,827,828,829,830,831,832],{"label":701,"url":702,"target":11},{"label":704,"url":705,"target":11},{"label":707,"url":708,"target":11},{"label":710,"url":172,"target":11},{"label":712,"url":713,"target":11},{"label":715,"url":716,"target":11},{"label":718,"url":719,"target":11},{"label":721,"url":722,"target":11},{"label":724,"url":725,"target":11},{"label":727,"url":728,"target":11},{"label":730,"url":731,"target":11},{"label":733,"url":734,"target":11},{"title":43,"links":834},[835,836,837,838,839,840,841,842,843],{"label":52,"url":44,"target":11},{"label":57,"url":58,"target":11},{"label":740,"url":64,"target":11},{"label":742,"url":70,"target":11},{"label":744,"url":76,"target":11},{"label":746,"url":82,"target":11},{"label":748,"url":88,"target":11},{"label":750,"url":94,"target":11},{"label":752,"url":106,"target":11},{"title":754,"links":845},[846,847,848],{"label":757,"url":10,"target":11},{"label":759,"url":26,"target":11},{"label":99,"url":100,"target":11},{"nodes":850},[851,855,860,865,869,873,877,881,885],{"id":852,"name":853,"slug":854,"count":11},"dGVybToyNzk=","Animale","animals",{"id":856,"name":857,"slug":858,"count":859},"dGVybToyNzg=","Aventură","adventure",2,{"id":861,"name":862,"slug":863,"count":864},"dGVybToyODQ=","Clasice","classic",1,{"id":866,"name":867,"slug":868,"count":864},"dGVybToyNzM=","Fantasy","fantasy",{"id":870,"name":871,"slug":872,"count":864},"dGVybToyODM=","Fructe","fruit",{"id":874,"name":875,"slug":876,"count":859},"dGVybToyODA=","Istorie","history",{"id":878,"name":879,"slug":880,"count":864},"dGVybToyODI=","Mitologie","mythology",{"id":882,"name":883,"slug":884,"count":864},"dGVybToyODE=","Movies","movies",{"id":886,"name":887,"slug":888,"count":11},"dGVybToyNzc=","TV Shows","tv-shows",{"nodeByUri":11},{"post":891},{"__typename":892,"id":893,"uri":894,"title":895,"date":896,"modified":897,"excerpt":687,"seo":898,"userRating":912,"author":915,"featuredImage":11,"template":920,"contentAreaFields":922,"sidebarBannersData":1253,"postSingleSettings":1254},"Post","cG9zdDo2OTgx","\u002Ffavbet-bonus-fara-depunere\u002F","Bonusul fără depunere Favbet în 2026 – Cum activezi cele 300 de rotiri gratuite?","2026-08-12T12:42:16","2026-08-12T14:27:26",{"title":899,"metaDesc":900,"canonical":901,"opengraphTitle":902,"opengraphDescription":900,"opengraphType":903,"opengraphUrl":901,"opengraphImage":11,"metaRobotsNoindex":904,"metaRobotsNofollow":905,"breadcrumbs":906},"Favbet Bonus Fără Depunere – 300 Rotiri Gratuite","Vezi cum funcționează Favbet bonus fără depunere în 2026: verificare KYC, 300 de rotiri gratuite, rulaj ×25 și termenele pentru activare.","https:\u002F\u002Frotirigratuite.ro\u002Ffavbet-bonus-fara-depunere\u002F","Bonusul fără depunere Favbet în 2026 - Cum activezi cele 300 de rotiri gratuite?","article","index","follow",[907,910],{"text":908,"url":909},"Home","https:\u002F\u002Frotirigratuite.ro\u002F",{"text":911,"url":901},"Bonusul fără depunere Favbet în 2026 &#8211; Cum activezi cele 300 de rotiri gratuite?",{"average":913,"count":913,"id":914},0,6981,{"node":916},{"id":917,"name":918,"uri":919},"dXNlcjo3","Ioana Siu","\u002Fautori\u002Fioana-siu\u002F",{"templateName":921},"Default",{"__typename":923,"content":924},"ContentAreaFields",[925,929,932,1076,1079,1082,1106,1109,1112,1136,1139,1223,1226,1229],{"__typename":926,"wysiwygGroup":927},"ContentAreaFieldsContentWysiwygLayout",{"content":928},"\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Ffav\u002F\" target=\"_blank\" rel=\"noopener\">Favbet\u003C\u002Fa> bonus fără depunere îți oferă 300 de rotiri gratuite după verificarea KYC, fără să alimentezi contul. În august 2026, recompensa este creditată în maximum 48 de ore pentru jocul alocat la acordare, disponibil la EGT Digital, iar câștigurile au rulaj ×25. Campania este valabilă până la 31.12.2026 și poate fi accesată pe desktop, mobil și în aplicația Favbet.\u003C\u002Fp>\n\u003Cp>Vezi pe scurt cum funcționează oferta:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Primești 300 de rotiri gratuite fără depunere după verificarea KYC, în maximum 48 de ore.\u003C\u002Fli>\n\u003Cli>Ai rulaj ×25 pe câștiguri, sub media uzuală de ×30–×40.\u003C\u002Fli>\n\u003Cli>Accepți bonusul din secțiunea „Bonusuri” și îl folosești în maximum 24 de ore.\u003C\u002Fli>\n\u003Cli>Rulajul trebuie finalizat în maximum 48 de ore de la activare.\u003C\u002Fli>\n\u003Cli>Campania este disponibilă până la 31.12.2026.\u003C\u002Fli>\n\u003C\u002Ful>",{"__typename":926,"wysiwygGroup":930},{"content":931},"\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Ch2>Favbet bonus fără depunere – Detalii complete, rulaj și condiții\u003C\u002Fh2>\n\u003Cp>În august 2026, am testat oferta Favbet pe mobil, după verificarea contului. Rotirile nu apar imediat după KYC: sunt acordate în maximum 48 de ore, apoi trebuie acceptate din secțiunea „Bonusuri” și activate cu „Start”.\u003C\u002Fp>",{"__typename":933,"tableGroup":934},"ContentAreaFieldsContentTableLayout",{"headerColor":935,"tableDescription":11,"headers":937,"rows":945},[936],"green",[938,942],{"align":939,"text":941},[940],"left","Element",{"align":943,"text":944},[940],"Detalii",[946,957,967,977,987,997,1006,1016,1026,1036,1046,1056,1066],{"cells":947},[948,953],{"align":949,"contentType":950,"text":952,"link":11},[940],[951],"text","Tip bonus",{"align":954,"contentType":955,"text":956,"link":11},[940],[951],"Rotiri gratuite fără depunere",{"cells":958},[959,963],{"align":960,"contentType":961,"text":962,"link":11},[940],[951],"Acordare",{"align":964,"contentType":965,"text":966,"link":11},[940],[951],"În max. 48h după verificarea KYC",{"cells":968},[969,973],{"align":970,"contentType":971,"text":972,"link":11},[940],[951],"Activare",{"align":974,"contentType":975,"text":976,"link":11},[940],[951],"Din „Bonusuri”; utilizare în max. 24h de la acordare",{"cells":978},[979,983],{"align":980,"contentType":981,"text":982,"link":11},[940],[951],"Valoare rotire",{"align":984,"contentType":985,"text":986,"link":11},[940],[951],"0,10–1,00 lei, stabilită la acordare",{"cells":988},[989,993],{"align":990,"contentType":991,"text":992,"link":11},[940],[951],"Joc eligibil",{"align":994,"contentType":995,"text":996,"link":11},[940],[951],"Doar jocul alocat bonusului",{"cells":998},[999,1002],{"align":1000,"contentType":1001,"text":779,"link":11},[940],[951],{"align":1003,"contentType":1004,"text":1005,"link":11},[940],[951],"×25 pe câștiguri, în max. 48h de la activare",{"cells":1007},[1008,1012],{"align":1009,"contentType":1010,"text":1011,"link":11},[940],[951],"Miză la rulaj",{"align":1013,"contentType":1014,"text":1015,"link":11},[940],[951],"0,10–5 lei",{"cells":1017},[1018,1022],{"align":1019,"contentType":1020,"text":1021,"link":11},[940],[951],"Câștig transferabil",{"align":1023,"contentType":1024,"text":1025,"link":11},[940],[951],"Max. ×1 valoarea câștigată din rotiri",{"cells":1027},[1028,1032],{"align":1029,"contentType":1030,"text":1031,"link":11},[940],[951],"Excluderi la rulaj",{"align":1033,"contentType":1034,"text":1035,"link":11},[940],[951],"Live Casino, Jocuri Rapide, Skywind și alte jocuri excluse",{"cells":1037},[1038,1042],{"align":1039,"contentType":1040,"text":1041,"link":11},[940],[951],"Retragere",{"align":1043,"contentType":1044,"text":1045,"link":11},[940],[951],"Disponibilă doar după finalizarea rulajului",{"cells":1047},[1048,1052],{"align":1049,"contentType":1050,"text":1051,"link":11},[940],[951],"Alte bonusuri",{"align":1053,"contentType":1054,"text":1055,"link":11},[940],[951],"Activarea unui bonus nou îl anulează pe cel curent",{"cells":1057},[1058,1062],{"align":1059,"contentType":1060,"text":1061,"link":11},[940],[951],"Limită",{"align":1063,"contentType":1064,"text":1065,"link":11},[940],[951],"O utilizare per cont\u002Fadresă\u002FIP",{"cells":1067},[1068,1072],{"align":1069,"contentType":1070,"text":1071,"link":11},[940],[951],"Perioadă campanie",{"align":1073,"contentType":1074,"text":1075,"link":11},[940],[951],"20.06.2025–31.12.2026",{"__typename":926,"wysiwygGroup":1077},{"content":1078},"\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Ch2>Cum funcționează Favbet bonus fără depunere?\u003C\u002Fh2>\n\u003Cp>La acest\u003Ca href=\"https:\u002F\u002Frotirigratuite.ro\u002Fbonus-fara-depunere\u002F\" target=\"_blank\" rel=\"noopener\"> bonus fără depunere\u003C\u002Fa> Favbet, îți faci contul și finalizezi verificarea KYC din profil. Cele 300 de rotiri nu vin instant după înregistrare, ci sunt acordate automat în maximum 48 de ore de la validarea identității. După creditare, accepți bonusul din secțiunea „Bonusuri”, apoi ai o fereastră scurtă pentru activare și utilizare.\u003C\u002Fp>\n\u003Cp>Pe scurt, acestea sunt condițiile care contează:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Tip de bonus:\u003C\u002Fstrong> 300 de rotiri gratuite, acordate automat după verificarea KYC și activate manual din „Bonusuri”.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Joc eligibil:\u003C\u002Fstrong> rotirile sunt valabile doar în jocul atribuit la acordare, de la EGT Digital sau alți provideri disponibili.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Verdict rulaj:\u003C\u002Fstrong> câștigurile trec în balanța reală după rulaj ×25, finalizat în maximum 48 de ore de la activare.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Restricție de timp:\u003C\u002Fstrong> rotirile trebuie activate și folosite în maximum 24 de ore de la acordare.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Contribuție și excluderi:\u003C\u002Fstrong> Live Casino, Jocuri Rapide, jocurile Skywind și anumite titluri Casino nu contribuie la rulaj.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Vezi și toate specificațiile \u003Ca href=\"https:\u002F\u002Frotirigratuite.ro\u002Ffavbet-bonus-de-bun-venit\u002F\" target=\"_blank\" rel=\"noopener\">bonusului de bun venit Favbet\u003C\u002Fa>!\u003C\u002Fp>",{"__typename":926,"wysiwygGroup":1080},{"content":1081},"\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Ch2>Cum activezi bonusul fără depunere de la Favbet? – Ghid pas cu pas\u003C\u002Fh2>\n\u003Cp>Am parcurs procesul de înregistrare și verificare pentru a vedea exact cum se activează Favbet bonus gratuit. Nu ai nevoie de cod promoțional sau de o depunere: după crearea contului și aprobarea KYC, cele 300 de rotiri apar în secțiunea „Bonusuri”, de unde le poți activa.\u003C\u002Fp>\n\u003Cp>Iată pașii pe care trebuie să-i urmezi:\u003C\u002Fp>",{"__typename":1083,"stepsGroup":1084},"ContentAreaFieldsContentStepsLayout",{"variant":1085,"steps":1087},[1086],"v2",[1088,1091,1094,1097,1100,1103],{"title":1089,"description":1090},"Accesează platforma:","Apasă pe butonul „Revendică Bonus” din această pagină pentru a ajunge pe Favbet și a crea un cont nou.",{"title":1092,"description":1093},"Completează formularul de înregistrare:","Introdu emailul, parola, CNP-ul și celelalte date solicitate. Selectează RON ca monedă a contului.",{"title":1095,"description":1096},"Confirmă emailul:","Deschide mesajul primit de la Favbet și accesează linkul de confirmare. Dacă nu apare în inbox, verifică și folderul Spam.",{"title":1098,"description":1099},"Finalizează verificarea identității (KYC):","Intră în „Profil”, selectează „Verifică contul” și urmează pașii pentru validarea identității și a numărului de telefon.",{"title":1101,"description":1102},"Verifică bonusul:","După aprobarea contului, cele 300 de rotiri sunt acordate automat în maximum 48 de ore. Nu ai nevoie de cod bonus; oferta apare în secțiunea „Bonusuri”.",{"title":1104,"description":1105},"Pornește jocul:","Acceptă bonusulul fără depunere Favbet, apasă pe „Start” și folosește rotirile în jocul eligibil afișat în cont. Rotirile trebuie activate și utilizate în maximum 24 de ore de la acordare.",{"__typename":926,"wysiwygGroup":1107},{"content":1108},"\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Ch2>Termeni și condiții Favbet bonus fără depunere &#8211; Ce trebuie să știi înainte să revendici\u003C\u002Fh2>\n\u003Cp>Favbet bonus fără depunere vine cu reguli care pot influența direct dacă și cât poți retrage din câștigurile obținute. Am verificat regulamentul ofertei și am extras principalele restricții legate de rulaj, retragere, jocuri eligibile și expirarea bonusului.\u003C\u002Fp>\n\u003Ch3>Cum funcționează rulajul\u003C\u002Fh3>\n\u003Cp>Pentru ca eventualele câștiguri obținute din rotirile gratuite să fie transferate din balanța bonus în balanța reală, trebuie finalizat un rulaj ×25 în maximum 48 de ore de la activare. Dacă nu îndeplinești cerința în acest interval, câștigurile generate din bonus sunt anulate.\u003C\u002Fp>\n\u003Cp>Rulajul a fost modificat de la ×40 la ×25 pentru conturile nou înregistrate începând cu 27.04.2026, ora 13:00. În timpul rulajului, Favbet folosește mai întâi fondurile din balanța reală și apoi pe cele din balanța bonus. Miza eligibilă este cuprinsă între 0,10 lei și 5 lei.\u003C\u002Fp>\n\u003Ch3>Retrageri și limita câștigurilor\u003C\u002Fh3>\n\u003Cp>Fondurile obținute prin bonusul fără depunere Favbet nu pot fi retrase înainte de finalizarea rulajului. Dacă soliciți o retragere mai devreme, fondurile provenite din bonus sunt anulate.\u003C\u002Fp>\n\u003Cp>După finalizarea rulajului, suma maximă care poate fi transferată din balanța bonus în balanța reală este de ×1 valoarea câștigată din utilizarea rotirilor gratuite. Câștigurile care depășesc această limită sunt anulate la finalizarea rulajului.\u003C\u002Fp>\n\u003Ch3>Ce jocuri sunt excluse?\u003C\u002Fh3>\n\u003Cp>Cele 300 de rotiri gratuite sunt valabile exclusiv în jocul pentru care au fost acordate. Valoarea unei rotiri este stabilită la acordare, nu poate fi modificată ulterior și variază între 0,10 lei și 1,00 leu.\u003C\u002Fp>\n\u003Cp>La rulaj există și câteva excluderi clare. Pariurile din Live Casino, Jocuri Rapide, toate jocurile furnizorului Skywind, anumite jocuri din secțiunea Casino și rundele nefinalizate până la finalizarea rulajului nu contribuie la bara de progres.\u003C\u002Fp>",{"__typename":926,"wysiwygGroup":1110},{"content":1111},"\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Ch2>Ce avantaje și dezavantaje are bonusul gratuit Favbet?\u003C\u002Fh2>",{"__typename":1113,"proAndConGroup":1114},"ContentAreaFieldsContentProAndConLayout",{"prosSectionTitle":1115,"consSectionTitle":1116,"itemsToDisplay":1117,"pros":1118,"cons":1129},"PRO","CON",8,[1119,1121,1123,1125,1127],{"text":1120},"300 de rotiri gratuite fără depunere după KYC",{"text":1122},"Acordare automată în maximum 48 de ore",{"text":1124},"Rulaj de ×25 pe câștiguri",{"text":1126},"Disponibil pe desktop, mobil și în aplicație",{"text":1128},"Campanie valabilă până la 31.12.2026",[1130,1132,1134],{"text":1131},"Rotirile expiră în 24 de ore de la acordare",{"text":1133},"Rulajul trebuie finalizat în maximum 48 de ore",{"text":1135},"Rotirile merg doar în jocul alocat, iar transferul este limitat la ×1 câștigul din rotiri",{"__typename":926,"wysiwygGroup":1137},{"content":1138},"\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Ch2>Ce oferă Favbet față de alte cazinouri\u003C\u002Fh2>\n\u003Cp>Ca să vedem mai clar unde se poziționează oferta Favbet, am comparat-o cu \u003Ca href=\"https:\u002F\u002Frotirigratuite.ro\u002Fcasa-pariurilor-bonus-fara-depunere\u002F\" target=\"_blank\" rel=\"noopener\">bonusul fără depunere Casa Pariurilor\u003C\u002Fa> și cel de la \u003Ca href=\"https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fult\u002F\" target=\"_blank\" rel=\"noopener\">UltraBet Casino\u003C\u002Fa>. Dintre aceste \u003Ca href=\"https:\u002F\u002Frotirigratuite.ro\u002Fcasino-online\u002F\" target=\"_blank\" rel=\"noopener\">cazinouri online\u003C\u002Fa>, Favbet și\u003Ca href=\"https:\u002F\u002Frotirigratuite.ro\u002Frecenzii\u002Fcpr\u002F\" target=\"_blank\" rel=\"noopener\"> Casa Pariurilor\u003C\u002Fa> oferă rotiri doar pentru verificarea contului, în timp ce la bonusul fără depunere Ultrabet este necesară și o depunere de minimum 100 lei.\u003C\u002Fp>",{"__typename":933,"tableGroup":1140},{"headerColor":1141,"tableDescription":11,"headers":1142,"rows":1158},[936],[1143,1146,1149,1152,1155],{"align":1144,"text":1145},[940],"Cazino",{"align":1147,"text":1148},[940],"Bonus fără Depunere",{"align":1150,"text":1151},[940],"Condiție de Rulaj",{"align":1153,"text":1154},[940],"Depunere Necesară",{"align":1156,"text":1157},[940],"Avantaj diferențiator",[1159,1181,1201],{"cells":1160},[1161,1165,1169,1173,1177],{"align":1162,"contentType":1163,"text":1164,"link":11},[940],[951],"Favbet",{"align":1166,"contentType":1167,"text":1168,"link":11},[940],[951],"300 rotiri gratuite fără depunere",{"align":1170,"contentType":1171,"text":1172,"link":11},[940],[951],"×25 pe câștiguri",{"align":1174,"contentType":1175,"text":1176,"link":11},[940],[951],"Nu",{"align":1178,"contentType":1179,"text":1180,"link":11},[940],[951],"300 rotiri fără depunere, acordate după verificarea contului",{"cells":1182},[1183,1186,1190,1194,1197],{"align":1184,"contentType":1185,"text":221,"link":11},[940],[951],{"align":1187,"contentType":1188,"text":1189,"link":11},[940],[951],"500 rotiri gratuite la Shining Crown",{"align":1191,"contentType":1192,"text":1193,"link":11},[940],[951],"×10 pe câștiguri",{"align":1195,"contentType":1196,"text":1176,"link":11},[940],[951],{"align":1198,"contentType":1199,"text":1200,"link":11},[940],[951],"500 rotiri fără depunere, câte 100\u002Fzi timp de 5 zile",{"cells":1202},[1203,1207,1211,1215,1219],{"align":1204,"contentType":1205,"text":1206,"link":11},[940],[951],"UltraBet Casino",{"align":1208,"contentType":1209,"text":1210,"link":11},[940],[951],"200 rotiri × 0,20 lei la Sweet Bonanza sau 100 rotiri × 1 leu la Shining Crown",{"align":1212,"contentType":1213,"text":1214,"link":11},[940],[951],"×50 pe câștiguri",{"align":1216,"contentType":1217,"text":1218,"link":11},[940],[951],"Da, min. 100 lei",{"align":1220,"contentType":1221,"text":1222,"link":11},[940],[951],"Alegi între două pachete, dar bonusul de verificare se creditează doar după o depunere de minimum 100 lei",{"__typename":926,"wysiwygGroup":1224},{"content":1225},"\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Cp>Ai revendicat deja această promoție? Treci la pasul următor și descoperă restul cazinourilor licențiate adunate pe pagina noastră dedicată celor\u003Ca href=\"https:\u002F\u002Frotirigratuite.ro\u002Fbonus-fara-depunere\u002F300-rotiri-gratuite\u002F\" target=\"_blank\" rel=\"noopener\">300 rotiri gratuite fără depunere\u003C\u002Fa>.\u003C\u002Fp>",{"__typename":926,"wysiwygGroup":1227},{"content":1228},"\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Ch2>Joc Responsabil &amp; Siguranță Legală\u003C\u002Fh2>\n\u003Cp>Promovăm\u003Ca href=\"https:\u002F\u002Frotirigratuite.ro\u002Fjoc-responsabil\u002F\" target=\"_blank\" rel=\"noopener\"> jocul responsabil\u003C\u002Fa> și listăm doar operatori autorizați în România. Pentru Favbet bonus fără depunere, verificarea identității face parte din validarea contului și confirmă că utilizatorul îndeplinește condițiile necesare pentru a folosi platforma.\u003C\u002Fp>\n\u003Cp>Conținutul nostru este destinat exclusiv persoanelor de minimum 18 ani, iar Favbet operează prin FAVBET ONLINE S.R.L., în baza licenței ONJN seria L1200662W0011197. Totodată, operatorul poate prelucra date de identificare, informații despre cont și tranzacții pentru verificare, prevenirea fraudei și respectarea obligațiilor legale, cu aplicarea drepturilor prevăzute de GDPR.\u003C\u002Fp>\n\u003Cp>În același timp, bonusurile rămân promoționale, iar câștigurile nu sunt garantate. Jocurile de noroc nu trebuie tratate ca sursă de venit sau metodă de recuperare a pierderilor, de aceea recomandăm limite de buget, pauze de joc și autoexcludere atunci când este nevoie. Pentru sprijin suplimentar, poți consulta jocresponsabil.ro. Participarea este permisă doar persoanelor de 18+.\u003C\u002Fp>",{"__typename":1230,"faqGroup":1231},"ContentAreaFieldsContentFaqLayout",{"iconName":1232,"content":1233,"items":1234},"question","\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Ch2>Întrebări frecvente despre bonusuri fără depunere\u003C\u002Fh2>",[1235,1238,1241,1244,1247,1250],{"title":1236,"answer":1237},"Pot juca orice slot Favbet bonus fără depunere?","\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Cp>Nu. Rotirile sunt valabile exclusiv în jocul pentru care au fost acordate. Valoarea unei rotiri este stabilită la acordare, între 0,10 și 1 leu, și nu poate fi modificată ulterior.\u003C\u002Fp>",{"title":1239,"answer":1240},"Trebuie să trimit buletinul înainte să primesc bonusul?","\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Cp>Da. Bonusul fără depunere Favbet se acordă doar după finalizarea cu succes a verificării KYC. După validarea contului, cele 300 de rotiri gratuite sunt creditate în maximum 48 de ore și pot fi acceptate din secțiunea „Bonusuri”.\u003C\u002Fp>",{"title":1242,"answer":1243},"De ce nu am primit bonusul automat?","\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Cp>Bonusul poate fi acordat în termen de până la 48 de ore după verificarea cu succes a contului. Dacă acest interval a trecut și oferta nu apare în secțiunea „Bonusuri”, poți contacta serviciul de suport Favbet prin Live Chat sau la suport@favbet.ro.\u003C\u002Fp>",{"title":1245,"answer":1246},"Ce se întâmplă dacă nu termin rulajul la timp?","\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Cp>Rulajul este ×25 și trebuie finalizat în maximum 48 de ore de la activarea bonusului. Dacă termenul expiră înainte să îndeplinești condiția, câștigurile generate din rotirile gratuite sunt anulate.\u003C\u002Fp>",{"title":1248,"answer":1249},"Câștigurile din rotiri sunt limitate înainte de retragere?","\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Cp>După finalizarea rulajului, suma maximă transferată din balanța bonus în balanța reală este de ×1 valoarea câștigată inițial din rotirile gratuite. Câștigurile care depășesc această limită sunt anulate, iar fondurile bonus nu pot fi retrase înainte de finalizarea rulajului.\u003C\u002Fp>",{"title":1251,"answer":1252},"Pot activa Favbet bonus gratuit și de pe telefon?","\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>\n\u003Cp>Da. Campania este disponibilă pe desktop, mobil și în aplicația Favbet. După acordare, rotirile trebuie acceptate, activate și utilizate în maximum 24 de ore.\u003C\u002Fp>",[],{"heroDescription":1255,"sidebarTitle":11},"\u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \n\n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n            \n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n                \n\n\n    \u003C\u002Fdiv>"]