Optimize CSS for http://dev.zoodigital.ie/focus-redesign/css/global.min.css

Improve your CSS performance by reducing complexity

Validate CSS for parsing errors and warnings

Check and Cleanup CSS Offenders

  • Complex Selectors4

    Selectors with uneccessary depth and traversal

    Consider simplifying for speed and readability

    .site-sidebar__link.current_page_item ul li a {}.site-sidebar__link.current-page-ancestor ul li a {}.owl-carousel .owl-controls .owl-nav .owl-prev {}.owl-carousel .owl-controls .owl-nav .owl-next {}
  • Complex Selectors By Attribute1

    Selectors whose attribute value contains a specified value

    Attribute selectors have a slower lookup time

    img[class*="wp-image-"] {}
  • Duplicated Properties7

    Duplicate properties detected for your selector

    Remove or combine duplicate properties to clean up your css

    a.media-element {transition: transform 0.3s cubic-bezier(0.65, -0.5, 0.4, 1.5), -webkit-transform 0.3s cubic-bezier(0.65, -0.5, 0.4, 1.5)} a.inline-media-element {transition: transform 0.3s cubic-bezier(0.65, -0.5, 0.4, 1.5), -webkit-transform 0.3s cubic-bezier(0.65, -0.5, 0.4, 1.5)} a.section-link {transition: transform 0.3s cubic-bezier(0.65, -0.5, 0.4, 1.5), -webkit-transform 0.3s cubic-bezier(0.65, -0.5, 0.4, 1.5)} .fancybox-title-float-wrap .child {background: rgba(0,0,0,0.8)} .fancybox-title-over-wrap {background: rgba(0,0,0,0.8)} .owl-carousel .owl-controls .owl-nav .owl-prev, .owl-carousel .owl-controls .owl-nav .owl-next, .owl-carousel .owl-controls .owl-dot {cursor: hand} .owl-carousel .owl-grab {cursor: grab} 
  • Duplicated Selectors7
    a {} /* (2 times) */body {} /* (2 times) */.owl-carousel .owl-item img {} /* (2 times) */
  • Importants8

    Provides a way for a stylesheet author to give a CSS value more weight than it naturally has

    Avoid usage if at all possible. When you use !important, you’re disrupting the natural flow of your rules, giving more weight to rules that are undeserving of such weight

    .site-header--full {position: fixed !important} .site-header--full {-webkit-transform: translateY(0) !important} .site-header--full {-ms-transform: translateY(0) !important} .site-header--full {transform: translateY(0) !important} .fancybox-tmp {overflow: visible !important} .fancybox-lock {overflow: hidden !important} .fancybox-lock body {overflow: hidden !important} .fancybox-lock-test {overflow-y: hidden !important} 
  • Multi Classes Selectors19

    Selectors with multiple classes

    Unnecessary specificity, consider reducing to single class or id instead

    .current_page_item.site-sidebar__link {}.current_page_item.site-sidebar__link {}.current_page_item.site-sidebar__link {}.current-page-ancestor.site-sidebar__link {}.current-page-ancestor.site-sidebar__link {}.current-page-ancestor.site-sidebar__link {}.current-page-ancestor.site-sidebar__link {}.current_page_item.site-sidebar__link {}.objectfit.videoautoplay {}.objectfit.videoautoplay {}.animated.infinite {}.cbp-spmenu-left.menu-open {}.cbp-spmenu-right.menu-open {}.owl-carousel.owl-loaded {}.owl-carousel.owl-loading {}.owl-carousel.owl-hidden {}.owl-carousel.owl-text-select-on {}.owl-carousel.owl-rtl {}.owl-carousel.owl-rtl {}
  • Old IE Fixes1

    Rules specific to IE greater than or equal to IE 6 or IE 7

    Lower browser usage for previous versions of IE prevents these rules from being very useful

    .cookie-consent {filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e6ffffff', endColorstr='#e6ffffff',GradientType=0 )} 
  • Old Property Prefixes9

    Properties with a no longer needed vendor prefix

    These have since been integrated or removed from mentioned browsers and can safely be removed from CSS

    .site-header--hidden { -ms-transform: translateY(-140px) } // was required by IE 9 and earlier .site-header--minimal { -ms-transform: translateY(0) } // was required by IE 9 and earlier .site-header--full { -ms-transform: translateY(0) !important } // was required by IE 9 and earlier .site-header--hidden { -ms-transform: translateY(-115px) } // was required by IE 9 and earlier .site-header--minimal { -ms-transform: translateY(-45px) } // was required by IE 9 and earlier a.media-element:hover { -ms-transform: scale(0.98) } // was required by IE 9 and earlier a.inline-media-element:hover { -ms-transform: scale(0.98) } // was required by IE 9 and earlier a.section-link:hover { -ms-transform: scale(0.98) } // was required by IE 9 and earlier .accordion-panel__header--open { -ms-transform: rotate(-180deg) } // was required by IE 9 and earlier 
  • Qualified Selectors8

    Since IDs are unique and classes are more unique than tags, adding a tag name would slow down the matching process needlessly

    Don’t qualify class or ID rules with tag names, as they are more unique than the tag. Strip tag names where possible

    a.media-element {}a.media-element:hover {}a.media-element__download-link {}a.inline-media-element {}a.inline-media-element:hover {}a.section-link {}a.section-link:hover {}.newsletter_form__options span.wpcf7-list-item-label {}
  • Redundant Body Selectors1
    .fancybox-lock body 
  • Redundant Child Nodes Selectors6

    Deteced redundancies for child node selectors

    Dry up duplication by nesting rules under a set of similar selectors

    .site-sidebar__link.current_page_item ul li a {}.site-sidebar__link.current-page-ancestor ul li a {}.full-width-section__quote ul li {}.full-width-section__quote ol li {}.section-quotedark__leader ul li {}.section-quotedark__leader ol li {}
  • Universal Selectors25

    The universal selector matches any element type

    Universal selectors can be implied (and therefore omitted) if it isn’t the only component of the simple selector, avoid whenever possible

    [hidden] {}* {}.site-footer__text>:first-child {}.site-footer__text>:last-child {}.hero-banner__container__wrapper>:first-child {}.hero-banner__container__wrapper>:last-child {}.media-element__text>:first-child {}.media-element__information>:first-child {}.media-element__text>:last-child {}.media-element__information>:last-child {}.inline-media-element__text>:first-child {}.inline-media-element__text>:last-child {}.section-link__text>:first-child {}.section-link__information>:first-child {}.section-link__text>:last-child {}.section-link__information>:last-child {}.section-header__leader>:first-child {}.section-header__leader>:last-child {}.floating-page__content>:first-child {}.floating-page__content>:last-child {}.newsletter-banner__text>:first-child {}.newsletter-banner__text>:last-child {}.accordion-panel__content>:first-child {}.accordion-panel__content>:last-child {}.owl-carousel * {}

CSS Stats

CSS Metrics

Base64 Length0
Colors29
Comments3
Comments Length294
Empty Rules0
Expressions0
Imports0
Media Queries25
Not Minified0
Parsing Errors0
Property Resets0
Specificity Id Avg0.01
Specificity Id Total6
Specificity Class Avg1.21
Specificity Class Total995
Specificity Tag Avg0.35
Specificity Tag Total288
Selectors819
Selector Length Avg1.3199023199023199
Selectors By Attribute25
Selectors By Class866
Selectors By Id6
Selectors By Pseudo177
Selectors By Tag192
Length64745
Rules692
Declarations1804