/*
Theme Name: Reo Heavy Equipment
Theme URI: http://www.almostanything.com.au
Description: Responsive starting point
Version: 2015
Author: Almost Anything Web and Graphic Design
Author URI: http://www.almostanything.com.au
*/

/*
 * RELATIVE EMS: target/context=result
 * So if you want a 24px heading, and the parent element is 15px, you need to specify 1.6ems
 * ie 24/15=1.6
 * Got it yet Stu?
 * Similarly with widths. Elements will be a %age or their parent.
 *
 * THIS IS A MOBILE-FIRST STYLESHEET
 * If you're styling for the desktop you are editing the WRONG FILE
 * Go back, do not pass Go, do not collect $200
 */

/* Resets, Globals */

html {
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

    *, *::before, *::after {
        box-sizing: inherit;
    }

div,dl,dt,dd,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,select,button,p,table,blockquote,th,td {
    margin:0;
    padding:0;
    line-height:inherit;
}

    dl,ul,ol,h1,h2,h3,h4,h5,h6,form,fieldset,p,blockquote,table {
        margin:1em 0;
    }

    strong {
        color: #A5261F;
    }

    ul {
        list-style-image: url(images/list.png);
    }

        h1,h2,h3,h4,h5,h6 {
            margin:1em 0 .5em;
            line-height:1.2;
        }

            h1 {
                margin:0 0 .5em;
            }

                .site_title {
                    margin:0;
                }

table {
    border-collapse:collapse;
    border-spacing:0;
}

address,caption,cite,code,dfn,var {
    font-style:normal;
    font-weight:normal;
}
 
caption,th {
    text-align:left;
}

sup {
    vertical-align:text-top;
}

sub {
    vertical-align:text-bottom;
}

input,textarea,select {
    font-family:inherit;
    font-size:inherit;
    font-weight:inherit;
    padding:0 .4em;
}


/* Clearfix */
    
.clearfix::after, header>nav::after {
    content:"";
    display:block;
    clear:both;
}


/* Styles to support our JS scrollbar width calculations */
.scrollbar_measure {
    width: 100px;
    height: 100px;
    overflow: scroll;
    position: absolute;
    top: -9999px;
}


/* Accessibility (skip links, screen reader text) */

.screen-reader-text, .skiplink {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
}

    .skiplink:focus, .screen-reader-text:focus {
        font-weight:bold;
        background:#eee;
        box-shadow:0 0 10px rgba(0,0,0,0.25);
        top:0;
        left:0;
        float:left;
        width: auto;
        height: auto;
        z-index:9999;
        display:block;
        position:fixed;
        z-index: 100000; /* Above WP toolbar. */
        padding:.5em .75em;
        clip: auto !important;
    }


/* Utilities */

.u-flex {
    display:-ms-flexbox;
    display:-webkit-flex;
    display:flex;
}

    .u-flex--between {
        -ms-flex-pack: justify;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }

    .u-flex--around {
        -ms-flex-pack: distribute;
        -webkit-justify-content: space-around;
        justify-content: space-around;
    }

    .u-flex--center {
        -ms-flex-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
    }

    .u-flex--end {
        -ms-flex-pack: end;
        -webkit-justify-content: flex-end;
        justify-content: flex-end;
    }

        @media (max-width:750px) {
            .u-flex--end\@m {
                -ms-flex-pack: end;
                -webkit-justify-content: flex-end;
                justify-content: flex-end;
            }
        }

/***************************************************************
 *
 * Let's play Tetris!
 * This is basic grid, we're layout out the main semantic blocks
 *
 ***************************************************************/

html, body {
    margin:0;
    padding:0;
    line-height:1.5;
    background: #fff;
}

    html {
        font-family: 'Open Sans', sans-serif;
    }

    body {
        color: #1c1c1c;
        font-size: 100%; /* Baseline: this means that 1em = 16px */
    }

.contentbox {
    width: 100%;
    margin: auto;
    font-size: 1.25em; /* 20px for normal paragraph text */
}

.gutter-wrap {
    padding:0 5%;
}

    .gutter-wrap--primary {
        clear:both;
        background:#fff;
    }

    .home .gutter-wrap--primary {
        clear:both;
        background: #ABACAD;
        color: #fff;
        font-weight: 100;
        text-align: center;
        padding: 0 10%;
        -webkit-box-shadow: inset 0px -22px 30px -19px rgba(0,0,0,0.4);
        -moz-box-shadow: inset 0px -22px 30px -19px rgba(0,0,0,0.4);
        box-shadow: inset 0px -22px 30px -19px rgba(0,0,0,0.4);
    }

    .sidebar {
        margin:0 0 1.5em;
        padding:0 1.25em;
        float:right;
        clear:both;
        width:100%;
    }
    
article {
    padding:1.5em 0;
}

.home article {
    padding: .5em 0 .6em;
}

/***************************************************************
 *
 * Header
 *
 ***************************************************************/

.site-info {
    padding-top: 0;
    padding-bottom:1.5em;
}

    .site-info--contains-menu {
        padding-bottom:0;
        background: #e73027;
        margin-bottom: -1em;
    }

    section.site-info__aside {
        position: relative;
    }

    .site_title {
        text-indent:-9999px;
        width:0;
        height:0;
    }

        .site_title a {
            text-decoration: none;
            color:#000;
        }

    .site-info__logo, .site-info__logo img {
        display:block;
        background:none;
        position:relative;
        border:none;
    }

        .site-info__logo {
            max-width:100%;
        }

        .site-info__logo img {
            -webkit-box-shadow: 0px 0px 30px -5px rgba(0,0,0,0.75);
            -moz-box-shadow: 0px 0px 30px -5px rgba(0,0,0,0.75);
            box-shadow: 0px 0px 30px -5px rgba(0,0,0,0.75);
        }

            @media (min-width: 962px) {
                .site-info__logo {
                    margin:0 1.5em 0 0;
                }
            }

            @media (max-width:961px) {
                .site-info__logo, .site-info__logo img, .site_title {
                    margin:0 auto;
                    text-align:center;
                }

                section.site-info.gutter-wrap {
                    padding: 0;
                }

                .site-info__logo, .site-info__logo img {
                    display: initial;
                    margin-bottom: -0.4em;
                    margin-left: 1em;
                }
            }

            @media (max-width: 450px) {

                .site-info__logo img {
                    width: 250px;
                }

                .site-info__logo, .site-info__logo img {
                    margin-left: .5em;
                }
            }

            @media (max-width: 400px) {

                .site-info__logo img {
                    width: 200px;
                }
            }

    .site-info__usereditable, .site-info__usereditable li {
        list-style:none;
        padding:0;
        margin:0;
    }

        .site-info__usereditable.wide {
            clear:both;
            margin-bottom: 0.5em;
        }

        .site-info__usereditable>li {
            display:block;
            margin:.75em 0 0;
            line-height:1.25;
            color: #fff;
            font-size: .8em;
            text-transform: uppercase;
            font-weight: 500;
        }

        @media (min-width: 961px) {

            .site-info__usereditable.mobile {
                display: none;
            }

        }

        @media (max-width:961px) {

            .site-info__usereditable.wide {
                display: none;
            }

            .site-info__usereditable.mobile {
                display: block;
                text-align: center;
            }

            .site-info__usereditable.mobile>li {
                display:block;
                margin: 0;
                font-size: .8em;
                line-height:1.25;
                background: #000;
                padding: .6em 0;
                color: #FFFFFF;
                text-transform: uppercase;
                font-weight: 500;
            }
        }

        .site-info__usereditable a[href^="tel"] {
            text-decoration:none;
            color: #fff;
        }

        .site-info__usereditable a[href^="tel"]:hover {
            text-decoration:underline;
        }

        @media (min-width: 962px) {

            .site-info__aside {
                display:-ms-flexbox;
                display:-webkit-flex;
                display:flex;
                -ms-flex-direction:column;
                -webkit-flex-direction:column;
                flex-direction:column;
            }

                .nav--beside-logo {
                    -webkit-order:1;
                    -ms-order:1;
                    order:1;
                }

            .site-info>.contentbox {
                display:-ms-flexbox;
                display:-webkit-flex;
                display:flex;
                -ms-align-items: center;
                -webkit-align-items: center;
                align-items: center;
            }

                .site_title, .site-info__logo {
                    -ms-flex:0 1 auto;
                    -webkit-flex:0 1 auto;
                    flex:0 1 auto;
                }

                .site-info__aside {
                    -ms-flex:1 1 auto;
                    -webkit-flex:1 1 auto;  
                    flex:1 1 auto;
                }

                .site-info__aside {
                    text-align:right;
                }

                    .site-info__usereditable>li {
                        display:inline-block;
                        vertical-align: top;
                        margin:.25em 0 .25em 1.25em;
                    }

                        .site-info__usereditable>li:first-child {
                            margin-left:0;
                        }

        }

/***************************************************************
 *
 * Navigation
 *
 ***************************************************************/

li#menu-item-55 a {
    border: none;
}

/* Basic list reformatting */
nav ul,
nav li {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* Make the site menu a flex container */
.nav__page-menu,
.nav__page-menu ul {
    display:-ms-flexbox;
    display:flex;
    -ms-flex-flow:row wrap;
    flex-flow:row wrap;
    text-align:left;
}

@media (max-width:961px) {

    .nav__page-menu,
.nav__page-menu ul {
    display:-ms-flexbox;
    display:flex;
    -ms-flex-flow:row wrap;
    flex-flow:row wrap;
    text-align:left;
    flex-direction: column;
}
}



.footer-menu-container .nav__page-menu,
.footer-menu-container .nav__page-menu ul {
    display:-ms-flexbox;
    display:flex;
    -ms-flex-flow:row wrap;
    flex-flow:row wrap;
    justify-content: center;
}

/* Make this look like a nav bar */
.menu-under-logo-container {
    background: #000;
    line-height:2;
}

/*  */
.nav a {
    display:block;
    color: #FFF;
    border:none;
    line-height:1.3;
    text-decoration: none;
    font-weight: 500;
    text-transform: uppercase;
    font-size: .85em;
    border-right: 2px solid #fff;
}

@media (max-width: 1075px) {

    .nav a {
        font-size: .71em;
    }

}

.nav a:hover {
    text-decoration: underline;
}

.footer-menu-container .nav a {
    display:block;
    color: #404040;
    border:none;
    line-height:1.3;
    text-decoration: none;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 1.1em;
    border-right: 2px solid #E82E29;
    letter-spacing: -1px;
    padding: 0 .6em;
}

.footer-menu-container .nav a:hover {
    text-decoration: underline;
}

    .sub-menu a,
    .nav--under-logo a {
        color: #fff;
    }

    .nav--under-logo a {
        padding:.5em .7em;
    }

    .nav--beside-logo a {
        padding: 0 .4em;
    }

    .sub-menu a {
        padding:.35em .7em;
    }

    .nav--under-logo li:not([class*='current']) a:hover,
    .nav--under-logo li:not([class*='current']).sfHover>a,
    .nav .sub-menu li:not([class*='current']) a:hover {
        /* background: #231F20; */
    }

nav .current_page_item>a,
.single-post nav .current_page_parent>a,
nav .current_page_ancestor>a,
nav .current-menu-item>a,
nav .current-menu-parent>a,
nav .current-menu-ancestor>a,
nav .current-page-ancestor>a {
    font-weight: 500;
}

    .nav--under-logo .current_page_item>a,
    .single-post .nav--under-logo .current_page_parent>a,
    .nav--under-logo .current_page_ancestor>a,
    .nav--under-logo .current-menu-item>a,
    .nav--under-logo .current-menu-parent>a,
    .nav--under-logo .current-menu-ancestor>a,
    .nav--under-logo .current-page-ancestor>a {
        background: #fff;
        color: #000;
    }

.contains_submenu>a {
    position:relative;
}

    .show_nav_children {
        position:absolute;
        top:-.25em;
        bottom:-.25em;
        right:-3%;
        line-height:2.5;
        font-weight:bold;
        cursor:pointer;
    }

/*
 * Section menu
 */

.section-menu {
    padding-top:1em;
    padding-bottom:.5em;
    overflow:hidden;
    background: #fff;
}

.page-child .section-menu {
    display: none;
}

    .gutter-wrap--primary+.section-menu {
        padding-top:0;
    }

    .section-menu .sub-menu {
        display:-ms-flexbox;
        display:-webkit-flex;
        display:flex;
        -ms-flex-direction: row;
        -webkit-flex-direction: row;
        flex-direction: row;
        -ms-justify-content: space-between;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -ms-align-items: stretch;
        -webkit-align-items: stretch;
        align-items: stretch;
        -ms-flex-wrap:wrap;
        -webkit-flex-wrap:wrap;
        flex-wrap:wrap;
        padding:0;
        margin:0 -.25em;
        font-size:1em;
    }

        .section-menu .sub-menu .sub-menu {
            font-size:.9em;
        }

        .section-menu .sub-menu li {
            margin:0 .25em .5em;
            display:-ms-flexbox;
            display:-webkit-flex;
            display:flex;
            -ms-flex:1 0 auto;
            -webkit-flex:1 0 auto;
            flex:1 0 auto;
        }

            .section-menu .sub-menu .sub-menu li {
                margin:.5em .25em 0;
            }

            .section-menu li .current-menu-item.menu-item-has-children, .section-menu li .current-menu-parent.menu-item-has-children {
                -ms-flex-direction: column;
                -webkit-flex-direction: column;
                flex-direction: column;
                -ms-flex:1 1 auto;
                -webkit-flex:1 1 auto;
                flex:1 1 auto;
                background:#f4f4f4;
                padding:.75em .7em;
            }

    .section-menu a {
        line-height:1.3;
        text-decoration:none;
        color: #E73027;
        padding: .5em .75em;
        min-width:100%;
        -ms-flex:1;
        -webkit-flex:1;
        flex:1;
        font-size: .8em;
        text-transform: uppercase;
    }

        .section-menu .current-menu-item>a {
            color: #E52825 !important;
            text-decoration: underline;
        }

            .section-menu .sub-menu .current-menu-item>a, .section-menu .sub-menu .current-menu-parent>a {
                background:#fff;
            }

        .section-menu a:hover {
            color: #E52825;
            text-decoration:underline;
        }


    /* Hide current page link (hopefully!) */
    .section-menu .menu>li>a {
        display:none;
    }

/* This is for the mobile nav icon */
.menu-icon, .menu-icon-label {
    display: none;
}

/* Expanded (desktop) menu styles */
@media (min-width:962px) {

    /* Basic list reformatting */
    .nav__page-menu li { position:relative; }
    .nav__page-menu ul {
        position: absolute;
        top: -9999px;
        left: 0;
    }

    .nav__page-menu li:hover ul,
    .nav__page-menu li.sfHover ul {
        z-index: 100;
        display: -ms-flexbox;
        display: flex;
    }

        .nav__page-menu>li:hover>ul, .nav__page-menu>li.sfHover>ul { top:100%; }

    .nav__page-menu ul ul { left:auto; right:-250px; }
        .nav__page-menu li li:hover ul, .nav__page-menu li li.sfHover ul { top:0; }

    header .nav__page-menu ul, header .nav__page-menu li li {width: 250px;}

    .nav--under-logo {
        margin-left:-.7em;
    }

    .nav__page-menu li ul {
        display: none;
    }

    .nav .sub-menu, .nav .children {
        background: #231F20;
    }

        .sub-menu .current_page_item>a,
        .single-post .sub-menu .current_page_parent>a,
        .sub-menu .current_page_ancestor>a,
        .sub-menu .current-menu-item>a,
        .sub-menu .current-menu-parent>a,
        .sub-menu .current-menu-ancestor>a,
        .sub-menu .current-page-ancestor>a {
            background: #eee;
            color:#000;
        }

    .contains_submenu>a {
        padding-right:1.5em;
    }

        .show_nav_children {
            padding:0 .75em 0 .5em;
        }

}


/* Mobile menu styles */
@media (max-width: 961px) {

	ul#beside-logo:before {
		content:"Menu";
		color:#FFF;
		display: block;
		text-align: center;
		border-bottom:1px solid #FFF;
		font-weight: 100;
		font-size: 2em;
		height: 40px;
		margin-top:30px;
	}	
	
	ul#beside-logo:after {
		content:"";
		color:#FFF;
		display: block;
		text-align: center;
		margin: 60px auto 0;
		width:100%;
		max-width: 150px;
		height: 55px;
		background: url(images/reo-logo-mobile-menu.jpg) center center no-repeat;
	}
	
	ul.sub-menu, ul.sub-menu li, ul.sub-menu li a {
		text-align: center;
	}
	
	ul.sub-menu {
		background: rgba(0, 0, 0, 0.3);
	}
	
	
    /* Provide space for the plus/minus symbol */
    .contains_submenu>a {
        padding-right:2.5em;
    }

        /* Element for showing/hiding sub-menus */
        .show_nav_children {
            position:absolute;
            top:-.25em;
            bottom:-.25em;
            right:-3%;
            line-height:2.5;
            z-index:10;
            padding:0 5% 0 .75em;
            padding:0 calc(3% + .5em) 0 .75em;
        }

    /* Turn off floats, force block display - we want vertical flow! */
    #beside-logo .nav__page-menu, .nav__page-menu ul {
        -ms-flex-flow:column;
        flex-flow:column;
    }

        /* Indent sub-menus */
        .sub-menu, .nav .children {
            padding:0 0 0 1em;
            font-size:.9em;
        }

    /* Off screen menu */

    .site-info nav {
        line-height:0;
        position: absolute;
        right: 0;
        bottom: 2.3em;
        margin-right: 1.5em;
    }

    @media (max-width: 450px) {

        .site-info nav {
            bottom: 1.7em;
            margin-right: 1em;
        }

    }

    @media (max-width: 400px) {

        .site-info nav {
            bottom: 1.2em;
            margin-right: 1em;
        }

    }


    /* Reduce vertical padding */
    .nav a {
        padding:.35em 1em;
        color:#fff;
		text-align: center;
		font-size: 1.1em;
    }

        .nav.nav--beside-logo a:hover {
            background: #FFF;
            color: #404040;
        }

        .nav .current_page_item>a,
        .single-post .nav .current_page_parent>a,
        .nav .current_page_ancestor>a,
        .nav .current-menu-item>a,
        .nav .current-menu-parent>a,
        .nav .current-menu-ancestor>a,
        .nav .current-page-ancestor>a {
            background: #fff;
            color: #404040;
        }

        /* Make sure background stretches to edge of menu */
        .nav .sub-menu a, .nav .children a {
            margin-left: -1.5em;
            padding-left: 2.5em;
        }

    /* Checkbox input used to toggle nav display.
       Doesn't need to appear because it's linked with the label. */
    .menu-icon {
        position: absolute;
        clip: rect(0, 0, 0, 0);
    }

    .menu-beside-logo-container .menu-icon-label {
        cursor:pointer;
        line-height: 1.2;
        font-weight:bold;
        padding-right: 2.3em;
        position: relative;
        display: block;

        /* Enhance tap target area */
        border: 1em solid transparent;
        border-width:1em 0;
        text-indent: -9999px;
    }

        .menu-icon-label--under-logo {
            color:#fff;
        }

        /* Setup base rules for page content overlay and hamburger icon */
        .menu-icon-label::after, .menu-icon-label::before {
            content:"";
            display:block;
            top:0;
            right: 0;
            bottom: 0;
        }

        /* Overlay for page content */
        .menu-icon-label::before {
            -moz-transition:opacity 125ms ease-in-out;
            -webkit-transition:opacity 125ms ease-in-out;
            transition:opacity 125ms ease-in-out;
            background: rgba(0,0,0,0.6);
            position:fixed;
            z-index: 20;
            
            /* Mobile Safari doesn't cover the page without negative values... */
            top:-200px;
            bottom:-200px;
            left:-200px;
        }

            /* Hide and deactivate overlay if menu is closed */
            .menu-icon:not(:checked) ~ .menu-icon-label::before {
                opacity:0;
                pointer-events:none;

                /* Required to hide overlay for IE 10 < (no support for pointer-events) */

                /* IE9 */
                -ms-transform:matrix(0,0,0,0,0,0);
                
                /* IE10 */
                -ms-transform:translate3d(100%,0,0);
            }

        /* Hamburger icon */
        .menu-icon-label::after {
            position:absolute;
            width: 1.5em;
            background: linear-gradient(                 to bottom,                 #FFF 0,                 #FFF 15%,                 transparent 15%,                 transparent 42%,                 #FFF 42%,                 #FFF 57%,                 transparent 57%,                 transparent 85%,                 #FFF 85%             );
        }

            .menu-icon-label--under-logo::after {
                background:linear-gradient(
                    to bottom,
                    #fff 0,
                    #fff 15%,
                    transparent 15%,
                    transparent 42%,
                    #fff 42%,
                    #fff 57%,
                    transparent 57%,
                    transparent 85%,
                    #fff 85%
                );
            }

    .nav.nav--beside-logo {
        /* Positioning */
        top: 0;
        right: 0;
        bottom:0;
        z-index: 100;
        position: fixed;

        /* Make scrolling allowance for tall menus */
        overflow-y: auto;
        overflow-x: hidden;

        /* Width, margin, padding */
        width:80%;
        margin:0;
        padding:.5em 0 0;

        /* Slide-in animation. Custom cubic bezier used to provide a fast initial slide, slowing down near the end.  */
        -moz-transition:-moz-transform 200ms cubic-bezier(0.15, 0.73, 0.44, 1.03), transform 200ms cubic-bezier(0.15, 0.73, 0.44, 1.03);
        -webkit-transition:-webkit-transform 200ms cubic-bezier(0.15, 0.73, 0.44, 1.03), transform 200ms cubic-bezier(0.15, 0.73, 0.44, 1.03);
        transition:-webkit-transform 200ms cubic-bezier(0.15, 0.73, 0.44, 1.03);
        transition:-moz-transform 200ms cubic-bezier(0.15, 0.73, 0.44, 1.03);
        transition:transform 200ms cubic-bezier(0.15, 0.73, 0.44, 1.03);

        /* Don't grab any clicks (we turn clicks on when the menu is definitely activated) */
        pointer-events:none;

        /* Styles */
        background: #E82E29 url(images/gear.png) left bottom no-repeat;
		background-size: contain;
        font-size: 1.1em;
    }

        /* Turn pointer events back on when the nav is active */
        .menu-icon:checked ~ .nav {
            pointer-events:auto;
        }

        /* This is a FLIPped animation (https://aerotwist.com/blog/flip-your-animations/) */
        .menu-icon:not(:checked) ~ .nav.nav--beside-logo {
            -moz-transform:translate3d(100%,0,0);
            -webkit-transform:translate3d(100%,0,0);
            transform:translate3d(100%,0,0);
            will-change:transform;
        }

            /* IE9 doesn't get anything particular fancy! */
            .ie9 .menu-icon:not(:checked) ~ .nav {
                display:none;
            }

        /* Deal with the WP admin bar */

        @media (max-width:600px) {
            .logged-in .nav.nav--beside-logo {
                padding-top:56px;
                padding-top:calc(46px + .5em);
            }
        }

        @media (min-width:601px) {
            .logged-in .nav.nav--beside-logo {
                top: 46px; 
            }
        }

        @media (min-width:782px) {
            .logged-in .nav.nav--beside-logo {
                top:32px;
            }
        }
    
    li#menu-item-55 a {
        border: none;
    }

        /* Inset box shadow (left edge of menu only)
           Recommended using only if .nav has a dark background.
        .nav::after {
            content:"";
            display:block;
            box-shadow: 0 0 60px rgba(0,0,0,0.25);
            position:absolute;
            top:0;
            bottom:0;
            left: -100%;
            width: 100%;
            z-index: -10;
        }
        */

}

/***************************************************************
 *
 * Main Content - <article>
 *
 ***************************************************************/

.home h1 {
    display: none;
}

article.lubricants {
	text-align: center;
}

article h1 {
    font-size: 1.8em;
    color: #E73027;
    text-transform: uppercase;
}

article h2 {
    font-size: 1.4em;
    color: #45555F;
}

article h3 {
    font-size: 1.1em;
    color: #E73027;
    font-weight: 600;
}

article h4, article h5, article h6 {
    font-size: 1em;
}

article a {
    /* standard colours are okay, unless they're not */
    color: #E73027;
    text-decoration: none;
}

article a:hover {
    text-decoration: none;
}

/* Clear any floated images down near the bottom of posts */
.blog_navigation {
    clear:both;
}

/* the next 3 rules are for the way WP sets its image floats. On skinny screens we'll just centre them all */
article .alignleft, article .alignright, article .aligncenter {
    text-align:center;
    margin:1.5em auto;
    display:block;
}

img {
    max-width:100%;
    height:auto;
}

a img {
    border:none;
}

#colorbox, #colorbox * {
    -moz-box-sizing:content-box;
    -webkit-box-sizing:content-box;
    box-sizing:content-box;
}

    #colorbox img {
        max-width:none;
    }
    
/* These 2 will make image captions look a bit like polaroids */
.wp-caption {
    background:#eee;
    overflow:hidden;
    max-width:100%;
}

    body.attachment .wp-caption {
        background:none;
        overflow: visible;
    }

    .wp-caption.alignnone {
        margin:1.5em 0;
    }

    .wp-caption>a, .wp-caption img {
        display:block;
    }

        .wp-caption img {
            width:100%;
        }

    .wp-caption-text {
        padding:0;
        margin:.75em 1em;
        line-height:1.3;
        font-weight: 100;
        font-size: .9em;
    }

        body.attachment .wp-caption-text {
            margin:.75em 0;
            font-weight:bold;
        }

        .gallery .wp-caption-text, .gallery-caption {
            margin:.35em 1em 0 0;
            padding: 8px;
            font-size:.9em;
            background: #cccccc;
            color: #000;
            text-align: center;
            font-weight: 200;
        }

.gallery .gallery-item {
    float: left;
    margin:0 0 3%;
}

.gallery a, .gallery img {
    display:block;
}

    .gallery img {
        max-width:95%;
        width:auto;
        height:auto;
    }

@media (max-width: 450px) {

    .gallery dl.gallery-item {
        float: none;
        margin: 0 0 1em;
        width:auto;
        text-align:center;
    }

        .gallery a {
            display:inline-block;
        }

    .gallery .wp-caption-text {
        text-align: center;
        font-size:inherit;
    }

    .gallery br {
        display:none;
    }

    .gallery img {
        max-width:100%;
    }

}

/*
Image sizes depending on the number of columns
Based on Hybrid theme
*/

.gallery-columns-0 .gallery-item {
    width: 100%;
}
.gallery-columns-1 .gallery-item {
    width: 100%;
}
.gallery-columns-2 .gallery-item {
    width: 50%;
    align-self: flex-end;
}
.gallery-columns-3 .gallery-item {
    width: 33.33%;
}
.gallery-columns-4 .gallery-item {
    width: 25%;
}
.gallery-columns-5 .gallery-item {
    width: 20%;
}
.gallery-columns-6 .gallery-item {
    width: 16.66%;
}
.gallery-columns-7 .gallery-item {
    width: 14.28%;
}

/* Callouts, pullquotes */
blockquote {
    position:relative;
    padding:0 0 0 3em;
    margin:1.5em 0;
}

blockquote::before {
    content: "\00201C";
    font-size: 5em;
    position: absolute;
    left: 0;
    top: -.3em;
    color:#333;
}

/* Definition Lists */

dt {
    display:block;
    margin-top: 0.5em;
    font-weight:bold;
}

    dt:first-child {
        margin-top:0;
        display: flex;
        justify-content: center;
    }

dd {
    padding-left:1em;
    color: #C72921;
}

/* Tables */

table, th, td {
    border:none;
    border:1px solid #ddd;
    text-align:left;
    border-collapse:collapse;
}

    table {
        margin:1em 0;
    }

    td, th {
        line-height:1.3;
        padding:.4em .6em;
    }

    @media (max-width:500px) {

        article table {
            border:none;
        }

        article tr, article td, article th {
            /* display:block; */
            /* border:none; */
        }

            article tr {
                margin:0 0 1em;
            }
            
    }

/* CTA Buttons */

.button, button {
    color: #fff;
    background: #E73027;
    border:none;
    cursor:pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: .2em .8em .3em;
    text-decoration: none;
    font-weight: 400;
    font-size: .8em;
    text-decoration: none;
}

    .button:hover, button:hover {
        color: #E73027;
        background: #FFF;
        border: 2px solid #E73027;
    }

    .button--inline {
        display:inline-block;
        padding:.05em .5em .1em;
        line-height:1.3;
        margin:0 .2em;
    }

/* Gravity Forms Style fixes */ 

.gform_wrapper form {
    margin-top: 0;
}

:root .gform_wrapper textarea,
:root .gform_wrapper input[type=text],
:root .gform_wrapper input[type=url],
:root .gform_wrapper input[type=email],
:root .gform_wrapper input[type=tel],
:root .gform_wrapper input[type=number],
:root .gform_wrapper input[type=password],
:root .gform_wrapper .ginput_complex label,
:root .gform_wrapper .gfield_time_hour label,
:root .gform_wrapper .gfield_time_minute label,
:root .gform_wrapper .gfield_date_month label,
:root .gform_wrapper .gfield_date_day label,
:root .gform_wrapper .gfield_date_year label,
:root .gform_wrapper .instruction {
    font-size: 1em;
}

    :root .gform_wrapper textarea,
    :root .gform_wrapper input[type=text],
    :root .gform_wrapper input[type=url],
    :root .gform_wrapper input[type=email],
    :root .gform_wrapper input[type=tel],
    :root .gform_wrapper input[type=number],
    :root .gform_wrapper input[type=password] {
        padding:.15em .2em;
        font-size: .8em;
        max-width: 100%;
    }

:root .gform_wrapper .gfield_checkbox li input[type=checkbox],
:root .gform_wrapper .gfield_radio li input[type=radio],
:root .gform_wrapper .gfield_checkbox li label,
:root .gform_wrapper .gfield_radio li label {
    display:inline-block;
    vertical-align:top;
    float:none;
    white-space: normal;
}

    :root .gform_wrapper.gform_wrapper .gfield_checkbox li input[type=checkbox],
    :root .gform_wrapper.gform_wrapper .gfield_radio li input[type=radio] {
        margin-top: .25em;
    }

    :root .gform_wrapper .gfield_checkbox li label {
        margin:0 0 0 .25em;
    }

    :root .gform_wrapper .gfield_radio li label {
        margin:0 0 0 .5em;
    }
    
    :root .gform_wrapper .gfield_checkbox li label,
    :root .gform_wrapper .gfield_radio li label {
        margin-right:1em;
        line-height:1.25;
    }

/* Cut back on vertical spacing! */

:root .gform_wrapper .top_label .gfield_label,
:root .gform_wrapper .field_sublabel_above .gfield_date_day label,
:root .gform_wrapper .field_sublabel_above .gfield_date_month label,
:root .gform_wrapper .field_sublabel_above .gfield_date_year label,
:root .gform_wrapper .field_sublabel_above .gfield_time_ampm label,
:root .gform_wrapper .field_sublabel_above .gfield_time_hour label,
:root .gform_wrapper .field_sublabel_above .gfield_time_minute label,
:root .gform_wrapper .field_sublabel_above .ginput_complex label,
:root .gform_wrapper .field_sublabel_above .instruction {
    margin:.6em 0 .15em;
    font-weight: 600;
    line-height:1.3;
    display:block;
    color: #231F20;
}

:root .gform_wrapper .ginput_complex label {
    font-size:.85em;
}

:root .gform_wrapper label.gfield_label+div.ginput_container {
    margin-top:0;
}

:root .gform_wrapper .gfield_checkbox li, :root .gform_wrapper .gfield_radio li {
    margin:0 .25em;
    overflow:initial;
    white-space: nowrap;
}

:root .gform_wrapper .gform_footer {
    padding:0;
}


/***************************************************************
 *
 * Sidebar
 *
 ***************************************************************/

.sidebar ul, .sidebar li {
    padding: 0;
    margin: 0;
    list-style: none;
}

    .sidebar {
        background:#eee;
    }

.sidebar li ul { /* a nested list, so this should actually be displayed as a list */
    padding-left: 7.142857142857%; /* 20/280=0.07142857142857 */
}

.sidebar li ul li {
    list-style: disc;
}


/***************************************************************
 *
 * News and/or blog
 *
 ***************************************************************/

.post-box {
    margin: 1.5em 0;
    position:relative;
    border: 2px solid #DCDCDC;
    padding: 0 0 .8em 0;
    -webkit-box-shadow: 0px 0px 25px -5px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 0px 25px -5px rgba(0,0,0,0.75);
    box-shadow: 0px 0px 25px -5px rgba(0,0,0,0.75);
}

    .post-box:last-child {
        margin-bottom:0;
    }

        .post-box__img {
            display:block;
            width:100%;
        }


    /* Gutters */
    .post-box__text, .post-box__cta {
        padding:0 1.5em 1em 1em;
        position: relative;
    }

        .post-box__text {
        }

    .post-box__link--image {
        text-decoration:none;
        /* margin: 1.5em auto; */
    }

    .post-box__link--button,
    .post-box__link--button:hover,
    .post-box__img-button,
    .post-box__img-button:hover {
        color: #FFF;
        background: #E73027;
        border-radius:0;
        padding: .2em .8em .3em;
        display:block;
        float:right;
        font-size: .8em;
    }

        /* Button overlayed on image - needs absolute positioning */
        .post-box__img-button {
            position:absolute;
            bottom:0;
            right:0;
        }

        a:hover .post-box__img-button, .post-box__link--button {
            background: #E73027;
            position: absolute;
            right: 19px;
            bottom: 0;
        }

        .post-box__link--button:hover {
            background: #FFF;
            color: #E73027;
            border: 2px solid #E73027;
        }

        /* Hide button overlaying image above 750px. Hide separate CTA button below 750px */
/* 
        @media (min-width:751px) and (max-width:1000px), (min-width:1200px) {
            .post-box__cta {
                display:none;
            }
        }
        
        @media (max-width:750px), (min-width:1000px) and (max-width:1200px) {
            .post-box__img-button {
                display:none;
            }
        } */

        

    .post-box__date, .postdate, .postmetadata {
        font-size:0.8em;
        font-style:italic;
        margin:0;
        color: #656565;
    }


.pagination {
    margin:1em 0;
}

/***************************************************************
 *
 * Homepage
 *
 ***************************************************************/

 .cta-container.clearfix {
    display: flex;
    justify-content: center;
    margin: 0 auto;
    padding: 0 5%;
    background: url(images/volvo-exca-homepage-cta-bg-v2.jpg) center center no-repeat;
    background-size: cover;
    border-top: 1px solid #e82e29;
    border-bottom: 1px solid #e82e29;
}

.page-id-37  .cta-container.clearfix {
    /* display: none; */
} 

.home .cta {
    width: 17%;
    margin: 0 0 1em;
    \: #FFF;
    float: left;
    display: flex;
    flex-direction: column;
    text-align: center;
    margin-right: .5em;
    margin-top: 2em;
}

.cta {
    width: 100%;
    margin: 0 0 1em;
    float: left;
    display: flex;
    flex-direction: column;
    text-align: center;
    margin-right: .5em;
}

@media (max-width: 1100px) {

     .home .cta {
        width: 20%;
    }
}

@media (max-width: 850px) {

     .home .cta {
        width: 45%;
    }

}

@media (max-width: 1100px) {

     .home .cta {
        width: 20%;
    }
}

@media (max-width: 850px) {

     .home .cta {
        width: 45%;
    }
}


@media (max-width: 750px) {

     .home .cta-container.clearfix {
        width: 60%;
        flex-flow: row wrap;
    }

    .home .cta3, .home .cta4 {
        margin-top: -1.5em;
    }

    .cta-container.internal.clearfix {
        flex-direction: column;
        width: 100%;
    }

    .cta-container.internal.clearfix .cta {
        width: 80%;
    }

    .cta-container.internal.clearfix .cta4 {
        margin-right: auto;
    }

    
}

@media (max-width: 650px) {

     .home .cta-container.clearfix {
        width: 100%;
        flex-flow: row wrap;
    }
       
    .home .cta {
        width: 47%;
    }

}

@media (max-width: 550px) {

     .cta-container.clearfix {
        width: 80%;
        flex-flow: row wrap;
    }
}

@media (max-width: 450px) {

     .cta-container.clearfix {
        width: 90%;
        flex-flow: row wrap;
    }
}

    .cta2 {
    }

    .cta a {
        display:block;
        padding: .75em 1em;
    }

    .cta p {
        display:inline;
        margin: 1em 0 0 0;
    }

@media (max-width:800px) {

    .cta {
        width: 50%;
        margin: 0 auto 2em auto;
        float: none;
    }

}

.cta.cta4 {
    /* margin-right: 0; */
}

.icon {
    height: auto;
    width: 150px;
}

.icon-text {
    color: #E73027;
    text-transform: uppercase;
	font-weight: bold;
}

.cta a {
    text-decoration: none;
}

.cta a:hover {
    text-decoration: underline;
    color: #E82E29;
}

@media (max-width: 450px) {

    .icon-text {
        font-size: .8em;
    }
    
    .icon {
        width: 120px;
    }
}

.home .internal-text {
    display: none;
}

.internal-text {
    margin-top: -2em;
    padding-top: 1em;
    border-top: 1px solid #E82E29;
    color: #fff;
.cta-container.internal.clearfix {
    background: url(images/cta-background.png) center center no-repeat;
    background-size: cover; }
    text-shadow: 2px 4px 3px rgba(0,0,0,0.3);
    text-shadow: 0 0 7px rgba(0,0,0,1);
    font-size: 1.1em;
}

.cta2 .internal-text {
    margin-top: -3.5em;
}

.LowerImages {
	display:block;
	width:100%;
	margin: 0 auto;
	text-align: center;
}

.LowerImageWide img,  .LowerImageMobile img {
	text-align: center;
	width:100%;
	display: block;
}

.LowerImageMobile {
	display: none;
}

@media (max-width:750px) {
	.LowerImageMobile  {
	text-align: center;
	width:100%;
	display: block;
}
	
	.LowerImageWide  {
		display:none;
	}
}



/***************************************************************
 *
 * Contact Page
 *
 ***************************************************************/

.contact--widgetcontent, .contact--widgetcontent>li {
    list-style:none;
    margin:0;
    padding:0;
}

/***************************************************************
 *
 * Footer
 *
 ***************************************************************/

footer {
    background: #FFF;
    color: #000000;
    font-size:.8em; /* footer has been set to 12.8px */
    clear: both;
}

    footer .contentbox {
        padding: 0 0 1em;
    }

    footer a {
        color: #404040;
        text-decoration: none;
    }

footer .widgetarea {
    width: 100%;
    padding: 0 3% 1px;
    float: left;
}

footer .widgetarea>ul, footer .widgetarea>ul>li {
    list-style:none;
    margin:0;
    padding:0;
}

section.credits {
    clear:both;
    color: #404040;
    text-align:center;
    font-size: .8em;
}

/* Rich Contact Widget */

.widget_rc_widget ul, .widget_rc_widget li {
    list-style:none;
    margin:0;
    padding:0;
}

    .widget_rc_widget>ul>li {
        margin:0 0 .5em;
    }

    .widget_rc_widget .email {
        font-size:.8em;
    }

    .widget_rc_widget .tel::before {
        content: "Phone: ";
        font-weight:bold;
    }

@media (max-width:800px) {

    footer .widgetarea {
        width:100%;
        padding:0;
        margin: 0;
    }

    footer>nav, footer .vcard, section.credits {
        width: auto;
        float: none;
    }

    .widgetarea--tertiary {
        display: none;
    }

    .widgetarea--primary {
        display: none;
    }
}

/* Feature image */ 

.feature-img {
    padding: 15% 0 15%;
    background-size: cover;
    border-top: 5px solid #fff;
    background-position: center center;
}

@media (max-width: 950px) {

    .feature-img {
        padding: 20% 0 20%;
    }
}

@media (max-width: 600px) {

    .feature-img {
        padding: 25% 0 25%;
        
    }

    .page-id-21 .feature-img {
       background-position: 80%; 
    }

    .page-id-37 .feature-img {
        background-position: 0;
    }
}

@media (max-width: 500px) {

    .feature-img {
        padding: 30% 0 30%;
    }
}

@media (max-width: 400px) {

    .feature-img {
        padding: 35% 0 35%;
    }

    .page-id-11 .feature-img {
        background-position: right;
    }
}

/* small info box (home page) */

.small-info {
    text-align: center;
    list-style: none;
    font-size: 1.6em;
    background: #abacad;
    color: #fff;
    font-weight: 100;
    border-image: url(images/border.jpg) 50 0 0 0 repeat;
    border-image-width: 14% 0 0 0;
    position: relative;
    border-top: 1px solid #fff;
}

.small-info .textwidget {
    padding: 1.4em 20% .8em;
    position: relative;
}

.small-info .textwidget:after {
    content:"";
    background: url(images/brand-logo.jpg) center right no-repeat;
    width: 11em;
    height: 3em;
    display: block;
    position: absolute;
    top: -55px;
    right: 4em;
    background-size: contain;
}

@media (max-width: 1399px) {

    .small-info .textwidget:after {
    content:"";
    top: -49px;
    right: 4em;
}
}

@media (max-width: 1045px) {

    .small-info .textwidget:after {
    content:"";
    top: -44px;
    right: 4em;
}
}

@media (max-width: 961px) {

    .small-info .textwidget:after {
    content:"";
    top: -4px;
    right: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
}

@media (max-width: 693px) {

    .small-info .textwidget:after {
    content:"";
    top: -1px;
}
}

@media (max-width: 402px) {

    .small-info .textwidget:after {
    content:"";
    top: 4px;
}
}


@media (max-width: 850px) {

    .small-info {
        font-size: 1.4em;
    }

    .small-info .textwidget {
        padding: 2em 10% 1.4em;
    }
}

@media (max-width: 550px) {

    .small-info {
        font-size: 1.3em;
    }

    .small-info .textwidget {
        padding: 2em 3% 1.4em;
    }
}


/* footer info */

.footer-container {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    list-style: none;
}

.footer-info-left {
    background: #E82E29 url(images/gear.png) left bottom no-repeat;
    background-size: 20%;
}

.footer-info-left, .footer-info-right {
    width: 50%;
    color: #fff;
}

.footer-info-left .textwidget {
    padding-left: 20%;
}

@media (max-width: 750px) {

    .footer-container {
        list-style: none;
    }

    .footer-info-left, .footer-info-right {
        width: 100%;
    }

    .footer-info-left .textwidget {
        text-align: center;
        padding-left: 0;
        padding-bottom: 1em;
    }
}

.footer-info-left h3 {
    color: #fff;
    text-transform: uppercase;
}

.footer-info-left h4 {
    color: #fff;
}

.footer-info-left strong {
    color: #fff;
    font-weight: 600;
}

.footer-info-left a {
    color: #fff;
    text-decoration: none;
}

.footer-info-left a:hover {
    text-decoration: underline;
}

/* footer menu */

.footer-menu-container {
    padding: 1em 0 0;
}

.footer-menu-container li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-55 a {
    border: none;
}

.footer-menu-container .sub-menu {
    display: none !important;
}

.footer-menu-container .show_nav_children {
    display: none;
}

/* footer logo */

.footer-logo {
    height: auto;
    width: 270px;
    display: block;
    margin: 0 auto;
}

@media (max-width: 661px) {
    
    .footer-menu-container li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-62 a {
    border: none;
    padding: 0 .7em;
}
}
    
@media (max-width: 569px) {
    
  .footer-menu-container li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-has-children.menu-item-56.contains_submenu a {
        border: none;
      padding: 0 .7em;
    }
    
    .footer-menu-container li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-62 a {
        border-right: 2px solid #E82E29;
        padding: 0 .6em;
    }
    
} 

@media (max-width: 501px) {
    
    .footer-menu-container li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-54 a {
        border: none;
        padding: 0 .7em;
    }
    
    .footer-menu-container li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-has-children.menu-item-56.contains_submenu a {
      border-right: 2px solid #E82E29;
      padding: 0 .6em;
    }  
}

@media (max-width: 380px) {
    
    .footer-menu-container li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-54 a {
        border-right: 2px solid #E82E29;
        padding: 0 .6em;
    }
    
    .footer-menu-container li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-53 a {
        border: none;
        padding: 0 .7em;
    } 
    
    .footer-menu-container li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-has-children.menu-item-56.contains_submenu a {
      border: none;
      padding: 0 .7em;
    } 
}

/* nav image */

body .nav.nav--beside-logo .menu-item a img {
    display: none !important;
}

.contentbox .menu-item a img {
  height: auto;
  width: 150px;
}

#menu-primary-1 {
    margin-top: 2em;
}

body .site-info__aside .menu-item a.menu-image-title-above, body .site-info__aside .menu-item a.menu-image-title-below {
    text-align: center;
}

/* Salvattor */

.post-archive {
    display: flex;
    justify-content: space-between;
    flex-flow: row nowrap;
}

.post-archive::before {
    display: block;
    height: 0;
    visibility: hidden;
}

@media screen and (max-width: 749px) {
    .post-archive[data-columns]::before {
        content: '1 .column.size-1of1';
    }  
}

@media screen and (min-width: 750px) and (max-width: 1199px) {
    .post-archive[data-columns]::before {
        content: '2 .column.size-1of2';    
    }   
}

@media screen and (min-width: 1200px) {
    .post-archive[data-columns]::before {
        content: '3 .column.size-1of3';    
    }   
}

.column { float: left; }

.size-1of3 {width: 32%;}
.size-1of2 { width: 48.5%; }
.size-1of1 { width: 100% } 

/* contact */

#content .gform_wrapper .gform_footer input.button, #content .gform_wrapper .gform_footer input[type=submit] {
    font-size: .8em;
    text-transform: uppercase;
}

#content .gform_wrapper .gfield_required {
    color: #E73027;
    margin-left: .25em;
}

/* internal page */

.float-left, .float-right {
    width: 48%;
}

.float-left.table, .float-right.table {
    width: 47%;
}

.float-left {
    float: left;
    padding-right: 1em;
    clear: right;
    margin-right: 1em;
}

.float-right {
    float: right;
    padding-left: 3em;
    border-left: 1px solid #e73027;
}

.float-left.table {
    float: left;
    padding: 0;
    margin: .5em;
}

.float-right.table {
    float: right;
    padding: 0;
    border: 0;
    margin: .5em;
}

@media ( max-width: 950px) {

    .float-left.table, .float-right.table {
        width: 100%;
    }   

    .float-left.table {
        float: none;
        padding: 0;
        margin: 0;
    }

    .float-right.table {
        float: none;
        padding: 0;
        border: 0;
        margin: 0;
    }
}

@media (max-width: 1050px) {

    .float-left, .float-right {
        width: 100%;
    }

    .float-left {
        float: none;
        padding-right: 0;
        margin: 0;
    }

    .float-right {
        float: none;
        padding-left: 0;
        border: none;
    }
}

#text-6 .textwidget {
    display: flex;
    justify-content: center;
}

@media (max-width: 500px) {

    #text-6 .textwidget {
        display: flex;
        justify-content: center;
        flex-direction: column;
    }
}

img.facebook {
    margin-top: 2.5em;
    max-width: 200px;
}

@media (max-width: 500px) {
    
    img.facebook {
        margin-top: 2.5em;
        max-width: 200px;
        display: block;
        margin: 0 auto 1em;
    }
}

section.widgetarea.widgetarea--tertiary {
    display: none;
}

section.widgetarea.widgetarea--primary {
    display: none;
}

div#gallery-3, div#gallery-4 {
    display: flex;
    align-items: baseline;
}

@media (max-width: 1000px) {
    
    div#gallery-3, div#gallery-4 {
        display: flex;
        align-items: baseline;
        flex-direction: column;
    }

    div#gallery-3 .gallery-item, div#gallery-4 .gallery-item {
        width: 100%;
    }

    div#gallery-3 .wp-caption-text, div#gallery-3 .gallery-caption, div#gallery-4 .wp-caption-text, div#gallery-4 .gallery-caption {
        margin: .35em 0 0 0;
    }
}

.cta-container.internal.clearfix {border-top: 1px solid #e82e29;}

.cta-container.internal.clearfix .cta .flex-container {
    margin-top: 1em;
}

#attachment_187.wp-caption {
    background: #e73027;
    color: #fff;
}

#attachment_187.wp-caption:hover {
    background: grey;
}

.table table caption {
    text-align: center;
    background: #e73027;
}

.table table caption h3 {
    color: #fff;
    margin: 1em 2% 1em;
    font-weight: 100;
}

.footer-info-left .widget {
    margin-top: 2em;
}

div#gallery-6 {
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
}

div#gallery-5 {
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
}

.cta .flex-continer {
    margin-top: 2.35em;
}

.cta-container.internal.clearfix {
    background: url(images/volvo-exca-homepage-cta-bg-v2.jpg) center center no-repeat;
    background-size: cover;
}

.home .flex-container {
    margin-top: 2.2em;
}

.cta4 .flex-container {
    margin-top: 3em;
}

.page-id-2 dt:first-child {
    display: block;
}

.cta-container.internal.clearfix .cta4 .flex-container {
    margin-top: .85em;
}