<div class="js-component relative z-0 component-spacer-padding gradient-dark">
    <div class="absolute w-full h-full top-0 left-0 bg-bravo-900 opacity-50 z-10"></div>
    <div class="container relative z-20">

        <div class="text-center mb-8 lg:mb-12">
            <h2 class="text-6xl lg:text-9xl block font-heading font-medium leading-tight text-white">Headline copy</h2>

            <div class="prose prose-p:leading-snug prose-ul:leading-normal prose-ol:leading-normal prose-lg lg:prose-xl mt-4 lg:mt-6  prose-bwhite prose-p:text-white max-w-screen-sm mx-auto">
                <p>Lorem ipsum dolor sit amet consectetur. Nunc nunc pulvinar adipiscing vitae. Lorem convallis lorem diam ornare. Sed ornare et diam risus arcu id.</p>
            </div>

        </div>

        <div class="block space-y-8 md:space-y-0 md:grid md:gap-8 md:grid-cols-2 lg:grid-cols-4">

            <div>

                <a href="#" class="px-4 pt-4 pb-6 flex md:flex-col gap-6 border border-transparent group overflow-hidden hover:border-grey-300 hover:shadow-card group rounded-xl bg-white">
                    <div class="w-20 md:w-full shrink-0">
                        <div class="w-full h-full">

                            <picture class="block overflow-hidden rounded-lg w-full">

                                <source media="(max-width: 767px)" width="1200" height="750" srcset="/front-end/images/test-imagery/example1@1-1@1200w.jpg 1200w">

                                <img class="lazyload transition ease-in-out duration-300 group-hover:scale-110 w-full" alt="" width="" height="" data-sizes="auto" data-srcset=",/front-end/images/test-imagery/example1@16-10@1200w.jpg 1200w" data-src="/front-end/images/test-imagery/example1@16-10@1200w.jpg">

                            </picture>
                        </div>
                    </div>
                    <div class="flex flex-col gap-6">
                        <div class="flex relative z-10 flex-col justify-center items-start md:items-center" data-vanilla-module="AnimateOnScroll" data-animation-type="scroll-fade">

                            <h2 class="relative text-xl md:text-2xl font-heading font-medium leading-tight text-bravo group-hover:underline group-hover:text-alpha-700">Our Products</h2>

                            <p class="mt-2 text-bravo text-tiny md:text-lg md:text-center">Lorem ipsum dolor sit amet, consectetur adipiscing elit</p>

                        </div>

                        <div class="gap-2 items-center justify-center hidden md:flex">
                            <div class="font-heading md:text-xl text-bravo">Find out more</div>
                            <div class="fill-current text-alpha w-4 h-4 relative z-10 group-hover:translate-x-1 transition ease-in-out duration-300">
                                <svg class="w-full h-full fill-current" aria-hidden="true">
                                    <use href="/front-end/sprite.svg#icon-arrow"></use>
                                </svg>
                            </div>
                        </div>

                    </div>
                </a>

            </div>

            <div>

                <a href="#" class="px-4 pt-4 pb-6 flex md:flex-col gap-6 border border-transparent group overflow-hidden hover:border-grey-300 hover:shadow-card group rounded-xl bg-white">
                    <div class="w-20 md:w-full shrink-0">
                        <div class="w-full h-full">

                            <picture class="block overflow-hidden rounded-lg w-full">

                                <source media="(max-width: 767px)" width="1200" height="750" srcset="/front-end/images/test-imagery/example5@1-1@1200w.jpg 1200w">

                                <img class="lazyload transition ease-in-out duration-300 group-hover:scale-110 w-full" alt="" width="" height="" data-sizes="auto" data-srcset=",/front-end/images/test-imagery/example5@16-10@1200w.jpg 1200w" data-src="/front-end/images/test-imagery/example5@16-10@1200w.jpg">

                            </picture>
                        </div>
                    </div>
                    <div class="flex flex-col gap-6">
                        <div class="flex relative z-10 flex-col justify-center items-start md:items-center" data-vanilla-module="AnimateOnScroll" data-animation-type="scroll-fade">

                            <h2 class="relative text-xl md:text-2xl font-heading font-medium leading-tight text-bravo group-hover:underline group-hover:text-alpha-700">Our Services</h2>

                            <p class="mt-2 text-bravo text-tiny md:text-lg md:text-center">Lorem ipsum dolor sit amet, consectetur adipiscing elit</p>

                        </div>

                        <div class="gap-2 items-center justify-center hidden md:flex">
                            <div class="font-heading md:text-xl text-bravo">Find out more</div>
                            <div class="fill-current text-alpha w-4 h-4 relative z-10 group-hover:translate-x-1 transition ease-in-out duration-300">
                                <svg class="w-full h-full fill-current" aria-hidden="true">
                                    <use href="/front-end/sprite.svg#icon-arrow"></use>
                                </svg>
                            </div>
                        </div>

                    </div>
                </a>

            </div>

            <div>

                <a href="#" class="px-4 pt-4 pb-6 flex md:flex-col gap-6 border border-transparent group overflow-hidden hover:border-grey-300 hover:shadow-card group rounded-xl bg-white">
                    <div class="w-20 md:w-full shrink-0">
                        <div class="w-full h-full">

                            <picture class="block overflow-hidden rounded-lg w-full">

                                <source media="(max-width: 767px)" width="1200" height="750" srcset="/front-end/images/test-imagery/example3@1-1@1200w.jpg 1200w">

                                <img class="lazyload transition ease-in-out duration-300 group-hover:scale-110 w-full" alt="" width="" height="" data-sizes="auto" data-srcset=",/front-end/images/test-imagery/example3@16-10@1200w.jpg 1200w" data-src="/front-end/images/test-imagery/example3@16-10@1200w.jpg">

                            </picture>
                        </div>
                    </div>
                    <div class="flex flex-col gap-6">
                        <div class="flex relative z-10 flex-col justify-center items-start md:items-center" data-vanilla-module="AnimateOnScroll" data-animation-type="scroll-fade">

                            <h2 class="relative text-xl md:text-2xl font-heading font-medium leading-tight text-bravo group-hover:underline group-hover:text-alpha-700">Our Services</h2>

                            <p class="mt-2 text-bravo text-tiny md:text-lg md:text-center">Lorem ipsum dolor sit amet, consectetur adipiscing elit</p>

                        </div>

                        <div class="gap-2 items-center justify-center hidden md:flex">
                            <div class="font-heading md:text-xl text-bravo">Find out more</div>
                            <div class="fill-current text-alpha w-4 h-4 relative z-10 group-hover:translate-x-1 transition ease-in-out duration-300">
                                <svg class="w-full h-full fill-current" aria-hidden="true">
                                    <use href="/front-end/sprite.svg#icon-arrow"></use>
                                </svg>
                            </div>
                        </div>

                    </div>
                </a>

            </div>

            <div>

                <a href="#" class="px-4 pt-4 pb-6 flex md:flex-col gap-6 border border-transparent group overflow-hidden hover:border-grey-300 hover:shadow-card group rounded-xl bg-white">
                    <div class="w-20 md:w-full shrink-0">
                        <div class="w-full h-full">

                            <picture class="block overflow-hidden rounded-lg w-full">

                                <source media="(max-width: 767px)" width="1200" height="750" srcset="/front-end/images/test-imagery/example11@1-1@1200w.jpg 1200w">

                                <img class="lazyload transition ease-in-out duration-300 group-hover:scale-110 w-full" alt="" width="" height="" data-sizes="auto" data-srcset=",/front-end/images/test-imagery/example11@16-10@1200w.jpg 1200w" data-src="/front-end/images/test-imagery/example11@16-10@1200w.jpg">

                            </picture>
                        </div>
                    </div>
                    <div class="flex flex-col gap-6">
                        <div class="flex relative z-10 flex-col justify-center items-start md:items-center" data-vanilla-module="AnimateOnScroll" data-animation-type="scroll-fade">

                            <h2 class="relative text-xl md:text-2xl font-heading font-medium leading-tight text-bravo group-hover:underline group-hover:text-alpha-700">Our Services</h2>

                            <p class="mt-2 text-bravo text-tiny md:text-lg md:text-center">Lorem ipsum dolor sit amet, consectetur adipiscing elit</p>

                        </div>

                        <div class="gap-2 items-center justify-center hidden md:flex">
                            <div class="font-heading md:text-xl text-bravo">Find out more</div>
                            <div class="fill-current text-alpha w-4 h-4 relative z-10 group-hover:translate-x-1 transition ease-in-out duration-300">
                                <svg class="w-full h-full fill-current" aria-hidden="true">
                                    <use href="/front-end/sprite.svg#icon-arrow"></use>
                                </svg>
                            </div>
                        </div>

                    </div>
                </a>

            </div>

        </div>
    </div>
</div>
<div class="js-component relative z-0 component-spacer-padding gradient-dark">
    <div class="absolute w-full h-full top-0 left-0 bg-bravo-900 opacity-50 z-10"></div>
    <div class="container relative z-20">
        {% render "@headline", headline %}
        <div class="block space-y-8 md:space-y-0 md:grid md:gap-8 md:grid-cols-2 lg:grid-cols-4">
            {% for item in ctaCardList %}
                <div>
                    {% render "@cta-card", { 
                        heading: item.heading, 
                        image: item.image, 
                        copy: item.copy, 
                        link: item.link}, true 
                    %}
                </div>
            {% endfor %}
        </div>
    </div>
</div>
{
  "siteName": "BIR Pattern Library",
  "headline": {
    "heading": "Headline copy",
    "summary": "Lorem ipsum dolor sit amet consectetur. Nunc nunc pulvinar adipiscing vitae. Lorem convallis lorem diam ornare. Sed ornare et diam risus arcu id.",
    "headingColour": "text-white",
    "preHeadingColour": "text-white",
    "richTextColour": "prose-bwhite prose-p:text-white",
    "buttonColour": "white"
  },
  "ctaCardList": [
    {
      "centerText": true,
      "heading": "Our Products",
      "copy": "Lorem ipsum dolor sit amet, consectetur adipiscing elit",
      "image": {
        "src": "images/test-imagery/example1@16-10@1200w.jpg",
        "srcSet": [
          {
            "url": "images/test-imagery/example1@16-10@1200w.jpg",
            "size": 1200
          }
        ],
        "smMax": {
          "width": 1200,
          "height": 750,
          "srcSet": [
            {
              "url": "images/test-imagery/example1@1-1@1200w.jpg",
              "size": 1200
            }
          ]
        }
      }
    },
    {
      "centerText": true,
      "heading": "Our Services",
      "copy": "Lorem ipsum dolor sit amet, consectetur adipiscing elit",
      "image": {
        "src": "images/test-imagery/example5@16-10@1200w.jpg",
        "srcSet": [
          {
            "url": "images/test-imagery/example5@16-10@1200w.jpg",
            "size": 1200
          }
        ],
        "smMax": {
          "width": 1200,
          "height": 750,
          "srcSet": [
            {
              "url": "images/test-imagery/example5@1-1@1200w.jpg",
              "size": 1200
            }
          ]
        }
      }
    },
    {
      "centerText": true,
      "heading": "Our Services",
      "copy": "Lorem ipsum dolor sit amet, consectetur adipiscing elit",
      "image": {
        "src": "images/test-imagery/example3@16-10@1200w.jpg",
        "srcSet": [
          {
            "url": "images/test-imagery/example3@16-10@1200w.jpg",
            "size": 1200
          }
        ],
        "smMax": {
          "width": 1200,
          "height": 750,
          "srcSet": [
            {
              "url": "images/test-imagery/example3@1-1@1200w.jpg",
              "size": 1200
            }
          ]
        }
      }
    },
    {
      "centerText": true,
      "heading": "Our Services",
      "copy": "Lorem ipsum dolor sit amet, consectetur adipiscing elit",
      "image": {
        "src": "images/test-imagery/example11@16-10@1200w.jpg",
        "srcSet": [
          {
            "url": "images/test-imagery/example11@16-10@1200w.jpg",
            "size": 1200
          }
        ],
        "smMax": {
          "width": 1200,
          "height": 750,
          "srcSet": [
            {
              "url": "images/test-imagery/example11@1-1@1200w.jpg",
              "size": 1200
            }
          ]
        }
      }
    }
  ]
}
  • Handle: @cta-card-list-style-3-component
  • Preview:
  • Filesystem Path: fractal\components\02-umbraco-repeatable-components\cta-card-list-style-3-component\cta-card-list-style-3-component.nunjucks
  • References (2): @headline, @cta-card

No notes defined.