Step 1: Create a new custom section
Add the following code in the newly created “pie-chart” custom section
{%- comment -%} Assign: Preview section js fix {%- endcomment -%} {%- assign section_id = section.id | replace: '+', '' -%} {%- comment -%} Color: check if color is set to transparent {%- endcomment -%} {%- assign background_alpha = section.settings.background_color | color_extract: 'alpha' -%} {%- comment -%} Layout: has user entered measurement value into max-width field? {%- endcomment -%} {%- if section.settings.max_width contains 'px' or section.settings.max_width contains '%' -%} {%- assign max_width = section.settings.max_width -%} {%- else -%} {%- assign max_width = section.settings.max_width | append: 'px' -%} {%- endif -%} {%- comment -%} Text: custom font_picker values {%- endcomment -%} {%- capture font_settings_list -%} {{ section.settings.main_font | font_face: font_display: 'swap' }}~ {{ section.settings.main_font | font_modify: 'weight', 'bolder' | font_face: font_display: 'swap' }}~ {{ section.settings.main_font | font_modify: 'style', 'italic' | font_face: font_display: 'swap' }}~ {{ section.settings.main_font | font_modify: 'style', 'italic' | font_modify: 'weight', 'bolder' | font_face: font_display: 'swap' }} {%- endcapture -%} {%- assign font_array = font_settings_list | split: '~' -%} {%- comment -%} CSS {%- endcomment -%} <style> {%- if section.settings.override_theme_font != blank -%} {%- for font in font_array -%} {%- unless font contains 'error' -%}{{ font }}{%- endunless -%} {%- endfor -%} #WP--{{ section_id }} { --main-font: {{ section.settings.main_font.family }}, {{ section.settings.main_font.fallback_families }}; --main-font-weight: {{ section.settings.main_font.weight }}; --main-font-style: {{ section.settings.main_font.style }}; } {%- endif -%} #WP--{{ section_id }} { font-family: var(--main-font); color: {{ section.settings.text_color }}; background: {%- if background_alpha != 0 -%}{{ section.settings.background_color }}{%- endif -%}; } #WP--{{ section_id }} .wp-pack__pie-chart__heading { color: {{ section.settings.text_color }}; font-size: clamp(16px, {{ section.settings.text_size | times: 0.015 }}em, 2em); margin-bottom: 40px; } #WP--{{ section_id }} .wp-pack__pie-chart__info-heading { padding-bottom: 1em; margin: 1em 0; font-size: {{ section.settings.text_size | times: 0.012 }}em; } #WP--{{ section_id }} .wp-pack__pie-chart__info-text p { line-height: 1.4; font-family: var(--main-font); color: {{ section.settings.text_color }}; font-size: {{ section.settings.text_size | times: 0.01 }}em; } #WP--{{ section_id }} .wp-pack__pie-chart__chart { text-align: center; } #WP--{{ section_id }} .wp-pack__pie-chart__arc_path { transition: 0.3s; cursor: pointer; } #WP--{{ section_id }} .wp-pack__pie-chart__arc_path:hover { opacity: 0.6; } #WP--{{ section_id }} .wp-pack__grid { grid-template-columns: 2fr 1fr; grid-gap: 40px; } #WP--{{ section_id }} .wp-pack__pie-chart__inner-grid { display: grid; grid-template-columns: 2fr 1fr; grid-gap: 20px; } #WP--{{ section_id }} .wp-pack__pie-chart__legend-text { margin: 1em 0; font-size: {{ section.settings.text_size | times: 0.01 }}em; } #WP--{{ section_id }} .wp-pack__pie-chart__legend-item { display: flex; margin-bottom: 1em; cursor: pointer; align-items: center; font-size: {{ section.settings.text_size | times: 0.008 }}em; font-family: var(--main-font); color: {{ section.settings.text_color }}; } #WP--{{ section_id }} .wp-pack__pie-chart__legend-list { padding-left: 0; } #WP--{{ section_id }} .wp-pack__pie-chart__legend-square { width: {{ section.settings.text_size | times: 0.2 }}px; height: {{ section.settings.text_size | times: 0.2 }}px; margin-right: 10px; display: block; } #WP--{{ section_id }} { margin-top: {{ section.settings.outer_margin }}px; margin-bottom: {{ section.settings.outer_margin }}px; } #WP--{{ section_id }} .wp-pack__sizer { padding-top: {{ section.settings.inner_padding }}px; padding-bottom: {{ section.settings.inner_padding }}px; width: {{ section.settings.base_width }}%; max-width: {{ max_width }}; } {%- if section.settings.custom_css != blank -%} {%- assign custom_section_declarations = section.settings.custom_css | split: '}' -%} {%- for declaration in custom_section_declarations -%} {%- if declaration contains '{' -%} #WP--{{ section_id }} {{ declaration }} } {%- endif -%} {%- endfor -%} {%- endif -%} /* Landscape phone to portrait tablet */ @media (max-width: 767px) { #WP--{{ section_id }} .wp-pack__grid { grid-template-columns: 1fr 1fr; } } /* Landscape phones and down */ @media (max-width: 480px) { #WP--{{ section_id }} .wp-pack__grid { grid-template-columns: 1fr; grid-gap: 20px; } #WP--{{ section_id }} .wp-pack__pie-chart__chart { text-align: center; } #WP--{{ section_id }} .wp-pack__pie-chart__inner-grid { grid-template-columns: 1fr; } #WP--{{ section_id }} .wp-pack__pie-chart__legend-list { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 0 10px; } #WP--{{ section_id }} .wp-pack__pie-chart__legend-square { width: 20px; height: 20px; margin-right: 12px; } #WP--{{ section_id }} { margin-top: {{ section.settings.outer_margin | divided_by: 2 }}px; margin-bottom: {{ section.settings.outer_margin | divided_by: 2 }}px; } #WP--{{ section_id }} .wp-pack__sizer { min-width: 70%; padding-top: {{ section.settings.inner_padding | divided_by: 2 }}px; padding-bottom: {{ section.settings.inner_padding | divided_by: 2 }}px; } {%- if section.settings.mobile_custom_css != blank -%} {%- assign mobile_custom_declarations = section.settings.mobile_custom_css | split: '}' -%} {%- for declaration in mobile_custom_declarations -%} {%- if declaration contains '{' -%} #WP--{{ section_id }} {{ declaration }} } {%- endif -%} {%- endfor -%} {%- endif -%} } </style> {%- comment -%} HTML {%- endcomment -%} <section id="WP--{{ section_id }}" class="WP--{{ section_id }} wp-pack__pie-chart wp-pack__section"> {%- if section.settings.anchor_id != blank -%} <div id="{{ section.settings.anchor_id | remove: '#' | handleize }}" class="wp-pack__anchor-id" style="height: 0; overflow: hidden;"></div> {%- endif -%} <div class="wp-pack__sizer wp-pack__sizer--pie-chart"> <h2 class="wp-pack__pie-chart__heading">{{ section.settings.title }}</h2> <div class="wp-pack__grid"> <div class="wp-pack__pie-chart__inner-grid"> <div class="wp-pack__pie-chart__chart"> </div> <div class="wp-pack__pie-chart__legend"> <h3 class="wp-pack__pie-chart__legend-text">{{ section.settings.legend }}</h3> <ul class="wp-pack__pie-chart__legend-list"> </ul> </div> </div> <div class="wp-pack__pie-chart__info wp-pack__rte"> <h3 class="wp-pack__pie-chart__info-heading">{{ section.settings.instructions }}</h3> <div class="wp-pack__pie-chart__info-text"></div> </div> </div> </div> </section> {% schema %} { "name": "Pie chart", "class": "WP__pie-chart", "settings": [ { "type": "text", "id": "title", "label": "Heading", "default": "Favorite Sports Percentage" }, { "type": "text", "id": "legend", "label": "Legend", "default": "Legend" }, { "type": "text", "id": "instructions", "label": "Instructions", "default": "Click on a slice to learn more" }, { "type": "range", "id": "chart_gutter", "label": "Chart gutter", "min": 0, "max": 12, "step": 6, "default": 6, "unit": "px" }, { "type": "header", "content": "Text appearance" }, { "type": "range", "id": "text_size", "label": "Text size", "min": 80, "max": 150, "step": 5, "default": 100, "unit": "%" }, { "type": "checkbox", "id": "override_theme_font", "label": "Override default theme font", "default": true }, { "type": "font_picker", "id": "main_font", "label": "Headings and text", "default": "sans-serif" }, { "type": "header", "content": "Design" }, { "type": "color", "id": "text_color", "label": "Text", "default": "#4B4949" }, { "type": "color_background", "id": "background_color", "label": "Background" }, { "type": "header", "content": "Layout" }, { "type": "range", "id": "base_width", "label": "Size", "min": 60, "max": 100, "step": 5, "default": 95, "unit": "%" }, { "type": "text", "id": "max_width", "label": "Maximum width", "placeholder": "eg. 1200px", "info": "Sets width constraint for content." }, { "type": "range", "id": "inner_padding", "label": "Inner padding", "info": "Only applies to top and bottom.", "min": 0, "max": 100, "default": 40, "step": 5, "unit": "px" }, { "type": "range", "id": "outer_margin", "label": "Outer margin", "info": "Only applies to top and bottom.", "min": 0, "max": 100, "default": 40, "step": 5, "unit": "px" }, { "type": "header", "content": "Advanced" }, { "type": "liquid", "id": "custom_css", "label": "CSS" }, { "type": "liquid", "id": "mobile_custom_css", "label": "Mobile CSS", "info": "Applied on screens less than 480px." }, { "type": "text", "id": "anchor_id", "label": "Link anchor id", "placeholder": "#wpd-pack-section", "info": "Enter a unique value to jump to this section from same page using a link or button. Eg. #wpd-pack-section" } ], "blocks": [ { "type": "slice", "name": "Slice", "settings": [ { "type": "text", "id": "number_value", "label": "Number", "default": "20" }, { "type": "color", "id": "color", "label": "Color", "default": "#59a3a1" }, { "type": "text", "id": "title", "label": "Heading", "default": "New slice" }, { "type": "richtext", "id": "text", "label": "Text", "default": "<p>Add more information about what you are measuring. You can add links to other pages for more details.</p>" } ] } ], "presets": [ { "name": "Pie chart", "blocks": [ { "type": "slice", "settings": { "title": "Footbal", "number_value": "45", "color": "#D04646", "text": "<p>Most played game is Football <a href='https://en.wikipedia.org/wiki/football'>Wikipedia</a></p>" } }, { "type": "slice", "settings": { "title": "Basketball", "number_value": "45", "color": "#FFA80A", "text": "<p>My favorite game is basketball <a href='https://en.wikipedia.org/wiki/'>Wikipedia</a></p>" } }, { "type": "slice", "settings": { "title": "Badminton", "number_value": "10", "color": "#F9DB5F", "text": "<p>Just another game <a href='https://en.wikipedia.org/wiki/'>Wikipedia</a></p>" } } ] } ] } {% endschema %} <script> // Save the original console.log function const originalConsoleLog = console.log; // Override console.log to suppress specific messages console.log = function(message) { if (message.includes("Using theme sections")) return; originalConsoleLog.apply(console, arguments); }; </script> {%- comment -%} JSON Settings {%- endcomment -%} <script type="application/json" data-wp-pack="{{ section_id }}"> { "id": {{ section_id | json }}, "backgroundColor": {{ section.settings.background_color | json }}, "chartGutter": {{ section.settings.chart_gutter | json }}, "blocks": [ {%- for block in section.blocks -%} { "title": {{ block.settings.title | json }}, "value": {{ block.settings.number_value }}, "info": {{ block.settings.text | json }}, "color": {{ block.settings.color | json }} }{%- if forloop.last == false -%} , {%- endif -%} {%- endfor -%} ] } </script> {%- comment -%} External scripts {%- endcomment -%} <script data-wp-pack-external-js="{{ section_id }}" src="https://cdnjs.cloudflare.com/ajax/libs/d3/6.2.0/d3.min.js" defer></script> {%- comment -%} JavaScript {%- endcomment -%} <script data-wp-pack-js="{{ section_id }}" type="module" defer> (function(){ const wpDesign = { settings: {}, load: function(section){ //------------------------------------------------------------------------------ // **** THE DATA **** const data = this.settings.blocks; const colors = data.map((d) => d.color); //------------------------------------------------------------------------------ // **** THE SETUP **** let width let height if(window.innerWidth > 500){ width = window.innerWidth / 4; height = window.innerWidth / 4; } else { width = window.innerWidth / 2; height = window.innerWidth / 2; } const radius = Math.min(width, height) / 2; const color = d3.scaleOrdinal(colors); const pie = d3.pie() .value(d => d.value) .sort(null) const arc = d3.arc() .innerRadius(0) .outerRadius(radius); //------------------------------------------------------------------------------ // **** PUT IT ON THE PAGE **** this.svg = d3.select("#WP--{{ section_id }} .wp-pack__pie-chart__chart") .append("svg") .attr("width", width) .attr("height", height) .append("g") .attr("transform", `translate(${width / 2}, ${height / 2})`); const path = this.svg.selectAll("path") .data(pie(data)); // Enter new arcs path.enter().append("path") .attr("fill", (d, i) => color(i)) .attr("d", arc) .attr('class', 'wp-pack__pie-chart__arc_path') .attr("stroke", this.settings.backgroundColor) .attr("stroke-width", `${this.settings.chartGutter}px`) .on("click", function(e, d) { //console.log('click', d) d3.select('#WP--{{ section_id }} .wp-pack__pie-chart__info-text') .html(d.data.info) d3.select('#WP--{{ section_id }} .wp-pack__pie-chart__info-heading') .text(d.data.title) .style("border-bottom", `3px solid ${color(d.index)}`) }) // --> The Legend const legend_values = data.map((datum, i) => { return `<li class="wp-pack__pie-chart__legend-item" data-index=${i}><div class="wp-pack__pie-chart__legend-square" style="background-color: ${color(i)}"></div> ${datum.title}</li>` }).join(' ') section.querySelector('.wp-pack__pie-chart__legend-list').innerHTML = legend_values section.querySelector('.wp-pack__pie-chart__info-text').innerHTML = data[0].info const info_title = section.querySelector('.wp-pack__pie-chart__info-heading') info_title.innerHTML = data[0].title info_title.style.borderBottom = `3px solid ${color(0)}` const legendItems = section.querySelectorAll('.wp-pack__pie-chart__legend-item') for(i = 0; i < legendItems.length; i++){ legendItems[i].addEventListener('click', function(){ //console.log('this',this.dataset) this_index = this.dataset.index section.querySelector('.wp-pack__pie-chart__info-text').innerHTML = data[this_index].info const info_title = section.querySelector('.wp-pack__pie-chart__info-heading') info_title.innerHTML = data[this_index].title info_title.style.borderBottom = `3px solid ${color(this_index)}` } )} }, unload: function(section) { this.svg.selectAll("*").remove(); } } window.addEventListener('shopify:section:unload', function (e) { const settings = document.querySelector(`[data-wp-pack="${e.detail.sectionId}"]`); const sectionId = e.detail.sectionId; const section = document.querySelector(`#WP--${e.detail.sectionId}`); if (sectionId == wpDesign.settings.id){ wpDesign.unload(section); } }); wpDesign.settings = JSON.parse(document.querySelector('[data-wp-pack="{{ section_id }}"]').innerHTML); const sectionId = {{ section_id | json }}; const section = document.querySelector(`#WP--${sectionId}`); if (sectionId == wpDesign.settings.id){ wpDesign.load(section); } })() </script>
Step 2: Add the styles
Add the following css styles in the start of the “pie-chart” custom section
<style> /*** Global styles ***/ [id^="WP--"] { margin-left: auto; margin-right: auto; position: relative; text-transform: unset; letter-spacing: unset; margin: unset; padding: unset; z-index: 1; } .wp-pack__section * { box-sizing: border-box !important; } .wp-pack__section img { max-width: 100%; } [class^="wp_design_-_fixed"] { display: none; } .wp-pack__section h1, .wp-pack__section h2, .wp-pack__section h3, .wp-pack__section h4, .wp-pack__section h5, .wp-pack__section h6 { color: inherit; text-transform: none; letter-spacing: 0; margin: 0; padding: 0; } .wp-pack__rte, .wp-pack__rte p, .wp-pack__rte a, .wp-pack__rte a:hover, .wp-pack__rte a:visited, .wp-pack__rte a:focus { color: inherit; text-transform: none; letter-spacing: 0; margin: 0; padding: 0; } .wp-pack__rte a { text-decoration: underline; } .wp-pack__rte p { margin-bottom: 0.8em; } .wp-pack__rte p:last-of-type { margin-bottom: 0; } .wp-pack__rte ul { margin: 1em 0; padding-left: 40px; } .wp-pack__rte li { list-style: unset; } .wp-pack__absolute-link { position: absolute; top: 0; left: 0; right: 0; bottom: 0; opacity: 0; z-index: 2; } .wp-pack__relative { position: relative; } h1.wp-pack__heading, h2.wp-pack__heading, h3.wp-pack__heading, h4.wp-pack__heading, h5.wp-pack__heading, h6.wp-pack__heading { margin-bottom: 1.2rem; } .wp-pack__text { margin: 0; color: inherit; } .wp-pack__button { font-family: inherit; cursor: pointer; text-transform: unset; -webkit-appearance: none; } .wp-pack__button::after { display: none; } .wp-pack__section button, .wp-pack__section input[type="text"], .wp-pack__section input[type="email"] { -webkit-appearance: none; } .wp-pack__sizer { margin-left: auto; margin-right: auto; } .wp-pack__height-sizer { display: table; } .wp-pack__height--x-small { height: 125px; } .wp-pack__height--small { height: 300px; } .wp-pack__height--medium { height: 475px; } .wp-pack__height--large { height: 650px; } .wp-pack__height--x-large { height: 775px; } @media only screen and (max-width: 767px) { .wp-pack__height--x-small { height: 94px; } .wp-pack__height--small { height: 225px; } .wp-pack__height--medium { height: 357px; } .wp-pack__height--large { height: 488px; } .wp-pack__height--x-large { height: 582px; } } /*** Videos ***/ .wp-pack__video__wrapper video[loading=lazy], .wp-pack__background-video[loading=lazy] { opacity: 1; } /*** Images ***/ .wp-pack__image__wrapper { display: grid; position: relative; margin: 0; } .wp-pack__image__wrapper svg { display: block; } .wp-pack__image__wrapper:not(.wp-pack__image__wrapper--contain) svg { width: inherit; height: inherit; } .wp-pack__image__wrapper > * { grid-area: 1 / 1 / 2 / 2; } .wp-pack__image__wrapper img, .wp-pack__image__wrapper .wp-pack__placeholder { object-fit: cover; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; position: absolute; } .wp-pack__image__wrapper--contain img { object-fit: contain; } .wpdp_pck__image-link { display: block; overflow: hidden; } /*** Widths ***/ div.WP__widths { display: inline-block !important; vertical-align: top; font-size: 0; margin-left: auto; margin-right: auto; } div.WP__widths * { font-size: initial; } @media (max-width: 767px) { div.WP__widths { width: 100% !important; } } /*** Flex ***/ .wp-pack__flex { display: flex; } .wp-pack__flex-wrap { flex-wrap: wrap; } .wp-pack__flex--1-per-row .wp-pack__flex-item { flex-basis: 100%; } .wp-pack__flex--2-per-row .wp-pack__flex-item { flex-basis: 50%; } .wp-pack__flex--3-per-row .wp-pack__flex-item { flex-basis: 33.3333%; } .wp-pack__flex--4-per-row .wp-pack__flex-item { flex-basis: 25%; } .wp-pack__flex--5-per-row .wp-pack__flex-item { flex-basis: 20%; } .wp-pack__flex--6-per-row .wp-pack__flex-item { flex-basis: 16.6666%; } .wp-pack__flex--7-per-row .wp-pack__flex-item { flex-basis: 14.3%; } .wp-pack__flex--8-per-row .wp-pack__flex-item { flex-basis: 12.5%; } .wp-pack__flex-row-reverse { flex-direction: row-reverse; } .wp-pack__grid-row-reverse { direction: rtl; } .wp-pack__grid-row-reverse * { direction: ltr; } .wp-pack__justify-left { justify-content: flex-start; text-align: left; } .wp-pack__justify-center { justify-content: center; text-align: center; } .wp-pack__justify-right { justify-content: flex-end; text-align: right; } .wp-pack__justify-justify { justify-content: space-between; text-align: justify; } .wp-pack__align-top { align-items: flex-start; } .wp-pack__align-center { align-items: center; } .wp-pack__align-bottom { align-items: flex-end; } /** Text alignment **/ .wp-pack__text-alignment-left { text-align: left; } .wp-pack__text-alignment-center { text-align: center; } .wp-pack__text-alignment-right { text-align: right; } .wp-pack__text-alignment-justify { text-align: justify; } /*** Grid ***/ .wp-pack__grid { display: grid; } .wp-pack__grid--1-per-row { grid-template-columns: 1fr; } .wp-pack__grid--2-per-row { grid-template-columns: 1fr 1fr; } .wp-pack__grid--3-per-row { grid-template-columns: 1fr 1fr 1fr; } .wp-pack__grid--4-per-row { grid-template-columns: 1fr 1fr 1fr 1fr; } .wp-pack__grid--5-per-row { grid-template-columns: 1fr 1fr 1fr 1fr 1fr; } .wp-pack__grid--6-per-row { grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; } .wp-pack__grid--7-per-row { grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr; } .wp-pack__grid--8-per-row { grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr; } .wp-pack__grid-reverse { direction: rtl; } .wp-pack__grid-reverse * { direction: ltr; } /*** Helpers ***/ .wp-pack__unset { font-family: unset; font-size: unset; letter-spacing: unset; line-height: unset; margin: unset; padding: unset; list-style: none; } .wp-pack__force-full-width { width: 100vw; position: relative; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; } .wp-pack__visually-hidden { position: absolute !important; height: 1px; width: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; } .wp-pack__recaptcha-message { margin-top: 0.8em; font-size: 0.8em; } .wp-pack__recaptcha-message a, .wp-pack__recaptcha-message a:hover, .wp-pack__recaptcha-message a:focus { font-style: italic; color: inherit; font-size: inherit; } /** Pages **/ .wp-pack__page-intro { width: 100%; } /** Theme editor warnings **/ .wp-pack__no-app-warning { position: relative; overflow: hidden; padding: 1em; } .wp-pack__no-app-warning-text { position: relative; background: #ff0; font-weight: bold; text-transform: uppercase; padding: 10px; max-width: 50%; margin: 0 auto; } .wp-pack__no-app-warning-background { position: absolute; top: 0; left: 0; right: 0; bottom: 0; width: 130%; background: repeating-linear-gradient(-45deg, #ff0, #ff0 20px, #000 20px, #000 40px); animation: wp-pack__warning-background 1s linear infinite; } @keyframes wp-pack__warning-background { to { transform: translateX(-56px); } } /** Animations **/ [style*="--wp-pack-animate"] { will-change: transform; transform: translateZ(0); opacity: 0; } .wp-pack__animation-applied { overflow: hidden; } .wp-pack__animation-applied [style*="--wp-pack-animate"] { --wp-pack-animation-multiplier: 0.3s; animation-duration: 0.5s; animation-timing-function: ease-out; animation-fill-mode: forwards; animation-delay: calc(var(--wp-pack-animation-multiplier) * var(--wp-pack-animate)); } @keyframes wp-pack__animation--fade-in { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes wp-pack__animation--fade-in-left { 0% { opacity: 0; transform: translateX(10%); } 100% { opacity: 1; transform: translateX(0); } } @keyframes wp-pack__animation--fade-in-right { 0% { opacity: 0; transform: translateX(-10%); } 100% { opacity: 1; transform: translateX(0); } } @keyframes wp-pack__animation--fade-in-down { 0% { opacity: 0; transform: translateY(-10%); } 100% { opacity: 1; transform: translateY(0); } } @keyframes wp-pack__animation--fade-in-up { 0% { opacity: 0; transform: translateY(10%); } 100% { opacity: 1; transform: translateY(0); } } /** Parallax **/ .wp-pack__parallax { position: relative; z-index: 1; } .wp-pack__parallax > .wp-pack__parallax-img { position: absolute; object-fit: cover; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; } /** Responsive helpers **/ .wp-pack__desktop--visible { display: inherit; } .wp-pack__desktop--hidden { display: none !important; } /* Landscape phone to portrait tablet */ @media (max-width: 767px) { .wp-pack__tablet--visible { display: block !important; } .wp-pack__tablet--hidden { display: none !important; } } /* Landscape phones and down */ @media (max-width: 480px) { .wp-pack__mobile--visible { display: block !important; } .wp-pack__mobile--hidden { display: none !important; } } /** Theme specific **/ /* Dawn */ [class*="wp-pack"]:empty { display: inherit; } /* Debut - offset margin from the header */ /* .main-content[id="MainContent"] .shopify-section[class*="WP__"]:first-child, .main-content[id="MainContent"] [id*="WP__"] { margin-top: -35px; } @media only screen and (min-width: 750px) { .main-content[id="MainContent"] .shopify-section[class*="WP__"]:first-child, .main-content[id="MainContent"] .WP__widths.WP__width--half:first-child, .main-content[id="MainContent"] .WP__widths.WP__width--half:first-child + .WP__widths.WP__width--half, .main-content[id="MainContent"] [id*="WP__"] { margin-top: -55px; } } */ /* Brooklyn - prevent default margins (but leave them on theme sections) */ .index-sections [class*="WP__"] { margin-top: 0; } .index-sections [class*="WP__"].shopify-section:first-child:not(.shopify-section--full-width) { margin-top: 0; } /* Impulse - prevent default margins (but leave them on theme sections) */ .main-content [class*="WP__"] { margin-top: 0; margin-bottom: 0; } /* Cornerstone - override overflow: hidden */ [class*="WP__"].shopify-section { overflow: unset; } </style>