Image Text SplitImage Text Split
Text and ImageSVG IconsVideo CapableHero
← Back to Sections

Image Text Split

A versatile split-screen section that combines compelling visuals with engaging content to tell your brand's story. 

Key Features:

  • Flexible Media Support: Upload images or videos with full opacity controls and customizable positioning (left or right side)
  • Rich Content Areas: Add optional icons, formatted headings, descriptive paragraphs, and up to two call-to-action buttons
  • Lucide-Compatible Icons: Use inline SVG icons or upload custom icon images with full color customization
  • Responsive Typography: All text elements scale beautifully with clamp() functions and mobile-specific scaling controls
  • Advanced Styling Options: Choose between theme color schemes or apply custom colors, backgrounds, borders, and button styling
  • Mobile-Optimized: Automatically stacks content vertically on tablets and mobile devices with customizable padding controls
  • Video-First Design: Supports autoplay looping videos that take precedence over static images when both are uploaded
  • Flexible Button System: Compatible with any Shopify theme's button classes plus custom styling options

Perfect for: Product features, about us sections, service explanations, brand storytelling, testimonials with photos, or any content that combines visual impact with detailed information.

{%- style -%}
  .section-{{ section.id }} {
    {% if section.settings.use_custom_colors %}
      background-color: {{ section.settings.background_color }};
      color: {{ section.settings.text_color }};
    {% else %}
      color: rgb(var(--color-foreground));
    {% endif %}
    border-top: {{ section.settings.top_border_thickness }}px solid {{ section.settings.top_border_color }};
    border-bottom: {{ section.settings.bottom_border_thickness }}px solid {{ section.settings.bottom_border_color }};
    padding-top: {{ section.settings.padding_top }}px;
    padding-bottom: {{ section.settings.padding_bottom }}px;
  }

  .section-{{ section.id }} .bc-split-section-right-inner-div {
    {% if section.settings.use_custom_colors %}
      background-color: {{ section.settings.inner_box_background_color }};
    {% endif %}
  }

  .section-{{ section.id }} .bc-heading * {
    font-size: clamp({{ section.settings.heading_size | times: section.settings.mobile_scale_ratio }}rem, 4vw, {{ section.settings.heading_size }}rem) !important;
    line-height: {{ section.settings.heading_line_height }};
    max-width: {{ section.settings.heading_max_width }}ch;
    text-align: center;
    margin: 0;
  }

  .section-{{ section.id }} .bc-paragraph * {
    font-size: clamp({{ section.settings.paragraph_size | times: section.settings.mobile_scale_ratio }}rem, 4vw, {{ section.settings.paragraph_size }}rem) !important;
    line-height: {{ section.settings.paragraph_line_height }};
    max-width: {{ section.settings.paragraph_max_width }}ch;
    text-align: center;
    margin: 0;
  }

  {% if section.settings.use_custom_button_style %}
  .section-{{ section.id }} .bc-button {
    padding: {{ section.settings.button_padding_vertical }}px {{ section.settings.button_padding_horizontal }}px;
    border-radius: {{ section.settings.button_border_radius }}px;
    border: {{ section.settings.button_border_width }}px solid {{ section.settings.button_border_color }};
  }

  .section-{{ section.id }} .bc-button.bc-button-1 {
    background-color: {{ section.settings.button_1_background_color }};
    color: {{ section.settings.button_1_text_color }};
  }

  .section-{{ section.id }} .bc-button.bc-button-2 {
    background-color: {{ section.settings.button_2_background_color }};
    color: {{ section.settings.button_2_text_color }};
  }

  .section-{{ section.id }} .bc-button.bc-button-1:hover {
    background-color: {{ section.settings.button_1_hover_background_color }};
    color: {{ section.settings.button_1_hover_text_color }};
    transition-duration: .2s;
    transition-timing-function: ease-out;
  }

  .section-{{ section.id }} .bc-button.bc-button-2:hover {
    background-color: {{ section.settings.button_2_hover_background_color }};
    color: {{ section.settings.button_2_hover_text_color }};
    transition-duration: .2s;
    transition-timing-function: ease-out;
  }

  .section-{{ section.id }} a.bc-button {
    text-decoration: none;
  }
  {% endif %}

  .section-{{ section.id }} .bc-split-section {
    height: {{ section.settings.section_height }}vh;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    display: flex;
    overflow: hidden;
  }

  .section-{{ section.id }} .bc-split-section-left-div {
    width: {{ section.settings.image_width }}%;
    height: 100%;
    padding: 20px 10px 20px 20px;
  }

  .section-{{ section.id }} .bc-split-section-right-div {
    width: calc(100% - {{ section.settings.image_width }}%);
    height: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px 20px 20px 10px;
    display: flex;
  }

  .section-{{ section.id }} .bc-split-section-buttons-div {
    column-gap: 12px;
    display: flex;
  }

  .section-{{ section.id }} .bc-split-section-image {
    width: 100%;
    height: 100%;
    min-width: 1px;
    object-fit: cover;
    border-radius: {{ section.settings.boxes_border_radius }}px;
    padding: 0;
    opacity: {{ section.settings.main_image_opacity }}%;
  }

  .section-{{ section.id }} video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: {{ section.settings.boxes_border_radius }}px;
    opacity: {{ section.settings.main_video_opacity }}%;
  }

  .section-{{ section.id }} .bc-icon {
    width: {{ section.settings.icon_size }}px;
    height: {{ section.settings.icon_size }}px;
    border-radius: {{ section.settings.boxes_border_radius }}px;
    color: {{ section.settings.icon_color }};
  }

  .section-{{ section.id }} .bc-icon svg {
    width: 100%;
    height: 100%;
    display: block;
  }

  .section-{{ section.id }} .bc-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    opacity: {{ section.settings.icon_image_opacity }}%;
  }

  .section-{{ section.id }} .bc-split-section-right-inner-div {
    width: 100%;
    height: 100%;
    grid-row-gap: {{ section.settings.elements_spacing }}px;
    border-radius: {{ section.settings.boxes_border_radius }}px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 60px;
    display: flex;
  }

  .section-{{ section.id }} .bc-split-section-left-inner-div {
    height: 100%;
    width: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .section-{{ section.id }} .bc-split-section-svg-div {
    height: 100%;
    position: absolute;
  }

  {% if section.settings.background_image != blank %}
  .section-{{ section.id }} .bc-split-section-right-inner-div {
    background-image: url({{ section.settings.background_image | img_url: 'original' }});
    background-size: cover;
    background-position-y: {{ section.settings.background_image_vertical_position }}%;
    opacity: {{ section.settings.background_image_opacity }}%;
  }
  {% endif %}

  @media screen and (max-width: 991px) {
    .section-{{ section.id }} .bc-split-section {
      height: auto;
      flex-direction: column;
      align-items: center;
    }

    .section-{{ section.id }} .bc-split-section-left-div {
      width: 100%;
    }

    .section-{{ section.id }} .bc-split-section-right-div {
      width: 100%;
      padding-top: 10px;
      padding-left: 20px;
    }

    .section-{{ section.id }} .bc-split-section-image {
      max-height: 600px;
    }

    .section-{{ section.id }} .bc-split-section-right-inner-div {
      grid-row-gap: calc({{ section.settings.elements_spacing }}px * .7);
      padding-top: {{ section.settings.mobile_text_padding_top }}px;
      padding-bottom: {{ section.settings.mobile_text_padding_bottom }}px;
    }

    .section-{{ section.id }} .bc-split-section-left-inner-div {
      padding-bottom: 10px;
      padding-right: 20px;
    }
  }

  @media screen and (max-width: 767px) {
    .section-{{ section.id }} .bc-split-section-right-inner-div {
      padding-left: 40px;
      padding-right: 40px;
    }

    .section-{{ section.id }} .bc-split-section-left-inner-div {
      padding-right: 0px;
    }
  }

  @media screen and (max-width: 479px) {
    .section-{{ section.id }} .bc-split-section-right-inner-div {
      padding-left: 20px;
      padding-right: 20px;
    }
  }
{%- endstyle -%}

<div class="section-{{ section.id }}{% unless section.settings.use_custom_colors %} color-{{ section.settings.color_scheme }}{% endunless %}">
  <div class="bc-split-section">
    <div class="bc-split-section-left-div">
      {% if section.settings.image_position == 'left' %}
        <div class="bc-split-section-left-inner-div">
          {% if section.settings.main_video != blank %}
            {{ section.settings.main_video | video_tag: controls: false, autoplay: true, loop: true, muted: true, preload: "auto", class: "bc-split-section-video" }}
          {% elsif section.settings.main_image != blank %}
            <img
              src="{{ section.settings.main_image | image_url: width: 1200 }}"
              alt="{{ section.settings.main_image_alt | default: 'Section image' }}"
              {% if section.settings.main_image_loading == 'lazy' %}loading="lazy"{% endif %}
              class="bc-split-section-image"
            >
          {% endif %}
        </div>
      {% endif %}
      {% if section.settings.image_position == 'right' %}
        <div class="bc-split-section-right-inner-div">
          {% comment %}  Designed and Developed by Bungalow Creative. Get sections like these at The Section Studio https://bungalowcreative.co/pages/the-section-studio {% endcomment %}
          {% if section.settings.icon_image != blank or section.settings.icon_svg != blank %}
            <div class="bc-icon">
              {% if section.settings.icon_image != blank %}
                <img src="{{ section.settings.icon_image | img_url: 'original' }}" alt="{{ section.settings.icon_image_alt | default: 'Icon' }}" loading="lazy">
              {% else %}
                {{ section.settings.icon_svg }}
              {% endif %}
            </div>
          {% endif %}
          {% if section.settings.heading != blank %}
            <div class="bc-heading">
              {{ section.settings.heading }}
            </div>
          {% endif %}
          {% if section.settings.paragraph != blank %}
            <div class="bc-paragraph">
              {{ section.settings.paragraph }}
            </div>
          {% endif %}
          <div class="bc-split-section-buttons-div">
            {% if section.settings.button_1_link != blank %}
              <a href="{{ section.settings.button_1_link }}" class="button{% if section.settings.use_theme_button_class %} {{ section.settings.theme_button_class }}{% endif %}{% if section.settings.use_custom_button_style %} bc-button bc-button-1{% endif %}">{{ section.settings.button_1_text | default: 'Button 1' }}</a>
            {% endif %}
            {% if section.settings.button_2_link != blank %}
              <a href="{{ section.settings.button_2_link }}" class="button{% if section.settings.use_theme_button_class %} {{ section.settings.theme_button_class }}{% endif %}{% if section.settings.use_custom_button_style %} bc-button bc-button-2{% endif %}">{{ section.settings.button_2_text | default: 'Button 2' }}</a>
            {% endif %}
          </div>
        </div>
      {% endif %}
    </div>
    <div class="bc-split-section-right-div">
      {% if section.settings.image_position == 'right' %}
        <div class="bc-split-section-left-inner-div">
          {% if section.settings.main_video != blank %}
            {{ section.settings.main_video | video_tag: controls: false, autoplay: true, loop: true, muted: true, preload: "auto", class: "bc-split-section-video" }}
          {% elsif section.settings.main_image != blank %}
            <img
              src="{{ section.settings.main_image | image_url: width: 1200 }}"
              alt="{{ section.settings.main_image_alt | default: 'Section image' }}"
              {% if section.settings.main_image_loading == 'lazy' %}loading="lazy"{% endif %}
              class="bc-split-section-image"
            >
          {% endif %}
        </div>
      {% endif %}
      {% if section.settings.image_position == 'left' %}
        <div class="bc-split-section-right-inner-div">
          {% if section.settings.icon_image != blank or section.settings.icon_svg != blank %}
            <div class="bc-icon">
              {% if section.settings.icon_image != blank %}
                <img src="{{ section.settings.icon_image | img_url: 'original' }}" alt="{{ section.settings.icon_image_alt | default: 'Icon' }}" loading="lazy">
              {% else %}
                {{ section.settings.icon_svg }}
              {% endif %}
            </div>
          {% endif %}
          {% if section.settings.heading != blank %}
            <div class="bc-heading">
              {{ section.settings.heading }}
            </div>
          {% endif %}
          {% if section.settings.paragraph != blank %}
            <div class="bc-paragraph">
              {{ section.settings.paragraph }}
            </div>
          {% endif %}
          <div class="bc-split-section-buttons-div">
            {% if section.settings.button_1_link != blank %}
              <a href="{{ section.settings.button_1_link }}" class="button{% if section.settings.use_theme_button_class %} {{ section.settings.theme_button_class }}{% endif %}{% if section.settings.use_custom_button_style %} bc-button bc-button-1{% endif %}">{{ section.settings.button_1_text | default: 'Button 1' }}</a>
            {% endif %}
            {% if section.settings.button_2_link != blank %}
              <a href="{{ section.settings.button_2_link }}" class="button{% if section.settings.use_theme_button_class %} {{ section.settings.theme_button_class }}{% endif %}{% if section.settings.use_custom_button_style %} bc-button bc-button-2{% endif %}">{{ section.settings.button_2_text | default: 'Button 2' }}</a>
            {% endif %}
          </div>
        </div>
      {% endif %}
    </div>
    <div class="bc-split-section-svg-div"></div>
  </div>
</div>

{% schema %}
{
  "name": "BC Image Text Split",
  "settings": [
    {
      "type": "header",
      "content": "Colors"
    },
    {
      "type": "color_scheme",
      "id": "color_scheme",
      "label": "Color Scheme",
      "default": "scheme-1"
    },
    {
      "type": "checkbox",
      "id": "use_custom_colors",
      "label": "Use custom colors instead of a Dawn color scheme",
      "default": false
    },
    {
      "type": "color",
      "id": "background_color",
      "label": "Background Color",
      "default": "#ffffff"
    },
    {
      "type": "color",
      "id": "text_color",
      "label": "Text Color",
      "default": "#000000"
    },
    {
      "type": "color",
      "id": "inner_box_background_color",
      "label": "Inner Box Background Color",
      "default": "#ffffff"
    },
    {
      "type": "color",
      "id": "top_border_color",
      "label": "Top Border Color",
      "default": "#000000"
    },
    {
      "type": "color",
      "id": "bottom_border_color",
      "label": "Bottom Border Color",
      "default": "#000000"
    },
    {
      "type": "color",
      "id": "icon_color",
      "label": "Icon Color",
      "default": "#000000"
    },
    {
      "type": "color",
      "id": "button_1_background_color",
      "label": "Button 1 Background Color",
      "default": "#DFF799"
    },
    {
      "type": "color",
      "id": "button_1_text_color",
      "label": "Button 1 Text Color",
      "default": "#000000"
    },
    {
      "type": "color",
      "id": "button_1_hover_background_color",
      "label": "Button 1 Hover Background Color",
      "default": "#000000"
    },
    {
      "type": "color",
      "id": "button_1_hover_text_color",
      "label": "Button 1 Hover Text Color",
      "default": "#ffffff"
    },
    {
      "type": "color",
      "id": "button_2_background_color",
      "label": "Button 2 Background Color",
      "default": "#DFF799"
    },
    {
      "type": "color",
      "id": "button_2_text_color",
      "label": "Button 2 Text Color",
      "default": "#000000"
    },
    {
      "type": "color",
      "id": "button_2_hover_background_color",
      "label": "Button 2 Hover Background Color",
      "default": "#000000"
    },
    {
      "type": "color",
      "id": "button_2_hover_text_color",
      "label": "Button 2 Hover Text Color",
      "default": "#ffffff"
    },
    {
      "type": "color",
      "id": "button_border_color",
      "label": "Button Border Color",
      "default": "#000000"
    },
    {
      "type": "header",
      "content": "Section Settings"
    },
    {
      "type": "range",
      "id": "padding_top",
      "label": "Padding Top",
      "min": 0,
      "max": 150,
      "step": 5,
      "default": 0,
      "unit": "px"
    },
    {
      "type": "range",
      "id": "padding_bottom",
      "label": "Padding Bottom",
      "min": 0,
      "max": 150,
      "step": 5,
      "default": 0,
      "unit": "px"
    },
    {
      "type": "range",
      "id": "top_border_thickness",
      "label": "Top Border Thickness",
      "min": 0,
      "max": 30,
      "step": 1,
      "default": 0,
      "unit": "px",
      "info": "Set to 0 to hide border. If section above has a bottom border applied, do not use."
    },
    {
      "type": "range",
      "id": "bottom_border_thickness",
      "label": "Bottom Border Thickness",
      "min": 0,
      "max": 30,
      "step": 1,
      "default": 0,
      "unit": "px",
      "info": "Set to 0 to hide border. If section below has a top border applied, do not use."
    },
    {
      "type": "range",
      "id": "section_height",
      "label": "Section Height",
      "min": 40,
      "max": 100,
      "step": 2,
      "default": 90,
      "unit": "vh"
    },
    {
      "type": "range",
      "id": "boxes_border_radius",
      "label": "Boxes Border Radius",
      "min": 0,
      "max": 200,
      "step": 2,
      "default": 0,
      "unit": "px"
    },
    {
      "type": "range",
      "id": "elements_spacing",
      "label": "Spacing Between Elements",
      "min": 0,
      "max": 80,
      "step": 5,
      "default": 40,
      "unit": "px"
    },
    {
      "type": "range",
      "id": "mobile_text_padding_top",
      "label": "Mobile Text Area Padding Top",
      "min": 20,
      "max": 200,
      "step": 10,
      "default": 100,
      "unit": "px",
      "info": "Controls the top padding of the text area on mobile devices (tablet and below)"
    },
    {
      "type": "range",
      "id": "mobile_text_padding_bottom",
      "label": "Mobile Text Area Padding Bottom",
      "min": 20,
      "max": 200,
      "step": 10,
      "default": 100,
      "unit": "px",
      "info": "Controls the bottom padding of the text area on mobile devices (tablet and below)"
    },
    {
      "type": "header",
      "content": "Text"
    },
    {
      "type": "richtext",
      "id": "heading",
      "label": "Heading",
      "default": "<h2>Heading Here</h2>"
    },
    {
      "type": "richtext",
      "id": "paragraph",
      "label": "Paragraph",
      "default": "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>"
    },
    {
      "type": "range",
      "id": "heading_size",
      "label": "Heading Font Size",
      "min": 0.5,
      "max": 8,
      "step": 0.1,
      "default": 5,
      "unit": "rem",
      "info": "Font size in rem units (good for accessibility)"
    },
    {
      "type": "range",
      "id": "paragraph_size",
      "label": "Paragraph Font Size",
      "min": 0.5,
      "max": 8,
      "step": 0.1,
      "default": 1.4,
      "unit": "rem",
      "info": "Font size in rem units (good for accessibility)"
    },
    {
      "type": "range",
      "id": "heading_line_height",
      "label": "Heading Line Height",
      "min": 1,
      "max": 2,
      "step": 0.1,
      "default": 1.2
    },
    {
      "type": "range",
      "id": "paragraph_line_height",
      "label": "Paragraph Line Height",
      "min": 1,
      "max": 2,
      "step": 0.1,
      "default": 1.4
    },
    {
      "type": "range",
      "id": "heading_max_width",
      "label": "Heading Max Width",
      "min": 10,
      "max": 100,
      "step": 1,
      "default": 30,
      "unit": "ch"
    },
    {
      "type": "range",
      "id": "paragraph_max_width",
      "label": "Paragraph Max Width",
      "min": 10,
      "max": 100,
      "step": 1,
      "default": 40,
      "unit": "ch"
    },
    {
      "type": "range",
      "id": "mobile_scale_ratio",
      "label": "Mobile Scale Ratio",
      "min": 0.5,
      "max": 1,
      "step": 0.1,
      "default": 0.8,
      "unit": "×",
      "info": "Controls how much ALL text shrinks on smaller screens"
    },
    {
      "type": "header",
      "content": "Media"
    },
    {
      "type": "image_picker",
      "id": "main_image",
      "label": "Main Image"
    },
    {
      "type": "video",
      "id": "main_video",
      "label": "Main Video",
      "info": "Video takes precedence over image if both are uploaded"
    },
    {
      "type": "image_picker",
      "id": "background_image",
      "label": "Inner Box Background Image",
      "info": "Recommended width 1000px"
    },
    {
      "type": "image_picker",
      "id": "icon_image",
      "label": "Icon Image (Optional)",
      "info": "Upload an image to use as the icon. This takes precedence over SVG code if both are provided."
    },
    {
      "type": "text",
      "id": "main_image_alt",
      "label": "Main Image Alt Text",
      "placeholder": "e.g. Product showcase image"
    },
    {
      "type": "text",
      "id": "icon_image_alt",
      "label": "Icon Image Alt Text",
      "placeholder": "e.g. Shipping icon"
    },
    {
      "type": "textarea",
      "id": "icon_svg",
      "label": "SVG Icon Code",
      "info": "Paste the inline SVG code here. You can copy icons directly from https://lucide.dev/icons using the 'Copy SVG' button. Make sure the SVG uses 'stroke=\"currentColor\"' or 'fill=\"currentColor\"' so the color setting works."
    },
    {
      "type": "select",
      "id": "main_image_loading",
      "label": "Main Image Loading",
      "options": [
        {
          "value": "eager",
          "label": "Eager (loads immediately)"
        },
        {
          "value": "lazy",
          "label": "Lazy (loads when visible)"
        }
      ],
      "default": "lazy",
      "info": "Use eager for above-the-fold images, lazy for below-the-fold"
    },
    {
      "type": "select",
      "id": "image_position",
      "label": "Image Position",
      "options": [
        {
          "value": "left",
          "label": "Left"
        },
        {
          "value": "right",
          "label": "Right"
        }
      ],
      "default": "right"
    },
    {
      "type": "range",
      "id": "main_image_opacity",
      "label": "Main Image Opacity",
      "min": 10,
      "max": 100,
      "step": 5,
      "unit": "%",
      "default": 100
    },
    {
      "type": "range",
      "id": "main_video_opacity",
      "label": "Main Video Opacity",
      "min": 10,
      "max": 100,
      "step": 5,
      "unit": "%",
      "default": 100
    },
    {
      "type": "range",
      "id": "background_image_opacity",
      "label": "Background Image Opacity",
      "min": 10,
      "max": 100,
      "step": 5,
      "unit": "%",
      "default": 100
    },
    {
      "type": "range",
      "id": "background_image_vertical_position",
      "label": "Background Image Vertical Position",
      "min": 0,
      "max": 100,
      "step": 1,
      "default": 50,
      "unit": "%"
    },
    {
      "type": "range",
      "id": "icon_size",
      "label": "Icon Size",
      "min": 20,
      "max": 100,
      "step": 2,
      "default": 36,
      "unit": "px"
    },
    {
      "type": "range",
      "id": "icon_image_opacity",
      "label": "Icon Image Opacity",
      "min": 10,
      "max": 100,
      "step": 5,
      "unit": "%",
      "default": 100
    },
    {
      "type": "range",
      "id": "image_width",
      "label": "Image Width",
      "min": 30,
      "max": 70,
      "step": 5,
      "default": 50,
      "unit": "%"
    },
    {
      "type": "header",
      "content": "Buttons"
    },
    {
      "type": "text",
      "id": "button_1_text",
      "label": "Button 1 Text",
      "default": "Shop Now",
      "placeholder": "Shop Now"
    },
    {
      "type": "url",
      "id": "button_1_link",
      "label": "Button 1 Link"
    },
    {
      "type": "text",
      "id": "button_2_text",
      "label": "Button 2 Text",
      "default": "Shop Now",
      "placeholder": "Shop Now"
    },
    {
      "type": "url",
      "id": "button_2_link",
      "label": "Button 2 Link"
    },
    {
      "type": "checkbox",
      "id": "use_theme_button_class",
      "label": "Use theme button styling",
      "info": "Only enable this if your theme uses a different class than 'button' for its primary buttons."
    },
    {
      "type": "text",
      "id": "theme_button_class",
      "label": "Theme button class",
      "info": "Enter your theme's main button class (e.g. 'btn', 'primary-button') if it's not 'button'.",
      "placeholder": "e.g. btn btn--primary"
    },
    {
      "type": "checkbox",
      "id": "use_custom_button_style",
      "label": "Use custom button styling",
      "info": "Enable this to apply custom styles (padding, colors, radius, etc.) to this section's buttons."
    },
    {
      "type": "range",
      "id": "button_padding_horizontal",
      "label": "Button Padding - Horizontal",
      "min": 0,
      "max": 100,
      "step": 1,
      "default": 40,
      "unit": "px"
    },
    {
      "type": "range",
      "id": "button_padding_vertical",
      "label": "Button Padding - Vertical",
      "min": 0,
      "max": 50,
      "step": 1,
      "default": 8,
      "unit": "px"
    },
    {
      "type": "range",
      "id": "button_border_radius",
      "label": "Button Border Radius",
      "min": 0,
      "max": 50,
      "step": 1,
      "default": 0,
      "unit": "px"
    },
    {
      "type": "range",
      "id": "button_border_width",
      "label": "Button Border Width",
      "min": 0,
      "max": 12,
      "step": 1,
      "default": 0,
      "unit": "px",
      "info": "Set to 0 to hide border."
    }
  ],
  "presets": [
    {
      "name": "BC Image Text Split"
    }
  ]
}
{% endschema %}