/* BASIC ---------------------------------------------- */


    html, body { height: 100%; }
    * { margin: 0px; padding: 0px; }
    a img { border: none; }
    a { outline: none; }

    html { font-size: 62.5%; line-height: 150%; }


/* FIXES ---------------------------------------------- */


    /* Correct 'block' display not defined in IE 6/7/8/9 and Firefox 3. */
    article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
        display: block;
    }

    /* Correct 'inline-block' display not defined in IE 6/7/8/9 and Firefox 3. */
    audio, canvas, video {
        display: inline-block;
        *display: inline;
        *zoom: 1;
    }

    .clearfix:after { content: ""; display: table; clear: both; }


/* HEADER --------------------------------------------- */


	header { padding: 20px 0 0; margin: 0 0 50px; width: 100%; }
    .logo-wrapper { width: 100%; box-sizing: border-box; padding: 0 30px; }
    header .logo { display: block; width: 409px; height: auto; padding-bottom: 10px; }
    header p { clear: both; margin: 0; width: 100%; color: #4F4550; font-weight: 600;
        font-family: 'Montserrat', sans-serif; text-align: left; font-size: 1.9rem; }
    header p span { float: right; font-weight: 700; }
    .cover { width: 100%; position: relative; max-width: 100%; display: block; margin: 20px 0 0; }
    .cover img { display: block; box-sizing: border-box; width: 100%; padding: 30px 30px 0; 
        margin: 0; background: #fff; }
    .cover p { position: absolute; bottom: 0px; right: 30px; text-align: right; width: auto; 
        background: rgba(0,0,0,0.5); color: #fff; padding: 3px 10px; font-size: 1.6rem; }
    
    
/* FOOTER --------------------------------------------- */


	footer { width: 100%; height: 87px; padding: 30px 0; position: relative; z-index: 1000; }
    footer .inner-wrapper { width: 900px; height: 100%; position: relative; padding: 0 30px; }
    footer .logo { display: block; width: 300px; height: auto; padding-bottom: 10px; }
    footer p { font-size: 1.6rem; font-family: "montserrat", sans-serif; }
    footer a { color: inherit; font-weight: normal; }

    
/* CONTAINERS ----------------------------------------- */


    .page-wrapper { height: auto; width: 100%; min-height: 100%; margin: 0 auto; position: relative; }
    .inner-wrapper { width: 960px; padding: 0 30px; margin: 0 auto; position: relative; }
    .page-content .inner-wrapper { box-sizing: border-box; }
    .page-content { width: 100%; padding: 0; margin: 0 auto; position: relative; overflow: hidden; }
    .drop-cap { display: block; float: left; margin: -10px 25px 10px -40px; shape-outside: url(../images/w.png); shape-margin: 15px; width: 240px; }
    
    
/* SECTIONS ------------------------------------ */


    section { padding: 0; margin: 0 0 30px; position: relative; float: left; }
    .page section { width: 700px; background: none; margin-bottom: 10px; }
    .stories .section-half { height: 350px; background-size: cover; background-position: center center; background-repeat: no-repeat; }
    .intro { padding-top: 10px; margin-bottom: 0; }
    .narrow { width: 730px; margin: 0 auto; float: none; }
    .section-half { width: 435px; }
    .section-right { margin-left:30px; }
    .section-inner { padding: 0; }
    .news { margin-top: 60px; padding: 0; box-sizing: border-box; }
    .news-story { background: #fff; padding: 0; margin-bottom: 60px; }
    .intro > *:last-child,
    .news-story > *:last-child { padding-bottom: 0; margin-bottom: 0; } 
    .text-wrap { padding: 15px; }
    .text-wrap p:last-child { margin-bottom: 0; }
    .text-wrap.overlay { background: linear-gradient(rgba(0,0,0,0) 0%, rgba(0,0,0,0.66) 70%);
    color: #fff; text-shadow: 1px 1px 1px #444; }
    .stories .section-full { width: 100%; }
    .stories .section-half .text-wrap { position: absolute; bottom: 0; left: 0; padding: 15px; }
    .stories .text-wrap p { font-family: "montserrat", sans-serif; font-weight: 500; line-height: 150%; margin: 10px 0 0; }
    .stories .section-full .text-wrap p { font-weight: 400; }
    section a.full { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
    .stories .section-full .text-wrap { width: 580px; }
    
    .feedback { padding: 15px; box-sizing: border-box; background-image: url(../images/floral-bg.png); 
    background-position: bottom right; background-repeat: no-repeat; }
    .feedback.hide { display: none; }
    .feedback .text-wrap { transition: max-height 0.5s ease-out; overflow: hidden; padding: 0;       max-height: 400px; }
    .feedback.complete .question { max-height: 0px; }
    .feedback .success { max-height: 0px; }
    .feedback.complete .success { transition-delay: 0.6s; transition-duration: 1.5s; max-height: 400px; }
    .feedback.complete { background-image: none; }
    
    .buttons { margin-top: 30px; }
    .button { display: inline-block; padding: 10px; width: 180px; color: #fff; cursor: pointer;
        font-family: "montserrat", sans-serif; font-weight: 500; font-size: 1.8rem; text-align: center; }
    .button + .button { margin-left: 30px; }
    .button:hover { background: #4F4550; text-decoration: none; }

    
/* LATEST BOX ---------------------------------- */


    .meta-wrapper { padding: 50px 0 10px; font-family: "montserrat", sans-serif; }
    .latest { padding: 10px; box-sizing: border-box; margin: 0 0 30px; clear: both; width: 100%; overflow: hidden; }
    .latest-inner { width: 100%; overflow-x: auto; padding: 10px 0 15px; -webkit-overflow-scrolling: touch; }
    .latest-inner-scroll { width: 1180px; }
    .latest-inner .item { border: 1px solid #cecece; background: #fff; display: inline-block; margin-left: 15px; width: 180px; height: 180px; float: left; box-shadow: 0 0 15px rgba(0,0,0,0.25); overflow: hidden; position: relative; }
    .latest-inner .item:hover { box-shadow: 0 0 15px rgba(0,255,0,0.5); }
    .latest-inner .item img { position: absolute; z-index: 100; left: -50%; display: block; width: auto; height: 100%; }
    .latest-inner .item p { position: absolute; bottom: 0; z-index: 200; margin-bottom: 0; padding: 7px; 
        color: #fff; background: linear-gradient(rgba(0,0,0,0) 0%, rgba(0,0,0,0.66) 50%); line-height: 140%;
        text-shadow: 1px 1px 1px #444; font-size: 1.45rem; font-weight: bold; text-transform: uppercase; }
    .latest-inner .item a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
    .latest > p { margin-bottom: 5px; }
    .latest > p span { float: right; }
    .latest-inner .item:first-child { margin-left: 5px; }
    .latest { box-shadow: 1px 1px 20px #cecece; border: 1px solid #cecece; background-color: rgba(255, 255, 255, 0.7); border-bottom: none; }
   
    
    
/* SHAPES -------------------------------------- */


    .shape1 { shape-margin: 15px; shape-outside: url(../images/kiwi-mask.png); margin: 0 -140px 0 20px; }
    .shape2 { shape-margin: 25px; shape-outside: url(../images/hose-mask.png); margin: -15px -50px 10px 20px; }
    .shape3 { shape-margin: 25px; shape-outside: url(../images/birdbox.png); margin: 0 20px 20px -70px; }
    
    
/* STORIES ------------------------------------- */    
    
    
    .story5 .text-wrap { margin-top: -145px; }
        
    
/* TEXT AND LISTS ------------------------------ */


    h1, h2, h3 { font-family: 'Montserrat', sans-serif; font-weight: 700; line-height: 125%; -webkit-text-size-adjust: none; }
	h1 { font-size: 6rem; margin-bottom: 20px; }
	h2 { font-size: 2.55rem; line-height: 130%; margin-bottom: 3px; }
	h3 { font-size: 2.0rem; margin-bottom: 10px; }
    
    .news > h2 { margin: 0 0 30px 0; }
    .page h2 { font-size: 2.8rem; line-height: 135%; margin-bottom: 30px; font-weight: 500; }
    .page h3 { font-size: 2.5rem; font-weight: 500; }

    
    
    p, li, th, td, h5, h6, label { font-size: 1.8rem; line-height: 165%; margin-bottom: 30px;
        -webkit-text-size-adjust: none; }
    p.bullet { padding-left: 22px; margin-left: 8px; position: relative;  }
    p.small { font-size: 90%; }
    ul { list-style-type: disc;	}
    ul, ol { padding-bottom: 25px; }
	li { padding-left: 5px; margin-left: 25px; }
    ul.bullet { list-style: none; }
	.bullet li { list-style: none; padding-left: 22px; margin-left: 2px; position: relative; margin-bottom: 5px; }
    .bullet li:before,
    p.bullet:before { content: ""; position: absolute; left: 0; top: 11px;
        width: 6px; height: 6px; display: block; }
    ol.modern { list-style-type: none; counter-reset: olCounter; }
    ol.modern li { margin-bottom: 20px; margin-left: 0; counter-increment: olCounter; list-style-type: none; }
    ol.modern li:before { content: counter(olCounter);
    line-height: 100%; font-size: 290%; float: left; padding-right: 10px; position: relative; top: 1px; }
    cite { font-size: 90%; margin-top: 5px; display: inline-block; }
    i.fa { padding-left: 4px; }
    .padded { padding: 20px; }
    img.padded { padding: 10px; box-sizing: border-box; }
    

/* ITEMS --------------------------------------- */


    .toplink { position: fixed; bottom: 50px; right: 0; padding: 0;
        text-align: center; z-index: 1500; }
    .toplink.fa { padding: 5px 0 10px; font-size: 23px; width: 40px; height: 20px; color: #fff;
    transition: transform 0.5s ease-in; transform: translateX(100px); background: rgba(0,0,0,0.3); }
    .toplink.fa.show { transform: translateX(0); }
    .jump { cursor: pointer; }


    hr { border: none; margin-bottom: 32px; clear: both; }
    hr.scissors,
    hr.flourish-top,
    hr.flourish-bot { border: none; height: 27px; background-repeat: no-repeat; background-position: top center; background-image: url('../images/flourish-top.png'); }
    hr.flourish-bot { background-image: url('../images/flourish-bot.png'); }
    hr.scissors { background-image: url('../images/scissors.png'); background-position: top left; margin-bottom: 23px; }


    /* Quote */
    blockquote { padding: 10px 40px 0; margin: 10px 0 25px 30px; box-sizing: border-box;
        width: 75%; clear: both; }
    blockquote+blockquote { margin-top: 0; }
    blockquote p { margin-bottom: 0; padding-top: 5px; font-style: italic; position: relative; }
    blockquote p:first-child:before { font-family: serif; font-weight: bold; font-size: 7rem;
        content: "\201C"; position: absolute; top: 12px; left: -48px; color: inherit; }
    blockquote p:first-child:after { font-family: serif; content: "\201D"; padding-left: 4px; font-weight: bold; color: inherit; }
    blockquote p span { font-family: serif; font-weight: bold; padding-left: 5px; }


    /* video-wrapper */
    .videowrapper { margin: 0 0 25px 0; clear: both; }
    .videowrapper.lightbox { position: absolute; left: 50%; top: 50%; z-index: 9999;
        transform: translate(-50%,-50%); width: 100%; max-width: 80%; height: auto; }
    .video { position: relative; padding-bottom: 56.25%; overflow: hidden; height: auto; }
    .videowrapper.lightbox .video { border: 5px solid #ccc; }
    .video iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; }
    #page-content .expandable[class*="bg-"],
    #page-content .videowrapper[class*="bg-"],
    figure[class*="bg-"] { box-sizing: border-box; padding: 20px; }
    .videowrapper p { font-size: 1.6rem; font-weight: bold; margin: 10px 0 0; }


    /* accordions */
    .expandable-wrapper { margin-bottom: 25px; float: left; }
    .expandable { padding: 10px; width: 100%; box-sizing: border-box; margin-bottom: 2px; }
    .expandable .more { max-height: 0; overflow: hidden; padding-left: 25px; transition: max-height 0.5s ease; }
    .expandable-wrapper.big-gaps .expandable { margin-bottom: 25px; }
    .expandable-wrapper .expandable:last-child { margin-bottom: 0; }
    .expandable .more p,
    .single h2.explink,
    .single h3.explink { margin-bottom: 0; }
    .expandable.show .more { max-height: 1100px; }
    .expandable .more *:first-child { margin-top: 10px; }
    .explink { margin-bottom: 0; cursor: pointer; padding-left: 25px; position: relative; }
    .explink:before { position: absolute; left: 0; content: "\f107"; top: 4px; font: normal normal normal 20px/1 FontAwesome; }
    .expandable.show .explink:before { transform: rotate(180deg); }
    .expandable .cta { margin-top: 20px; }


    /* figures */
    figure { overflow: hidden; }
    figure.videowrapper { max-width: 100%; }
    figure.alignnone { max-width: none; }
    figcaption { clear: both; padding: 10px; line-height: 140%; display: block; font-family: "montserrat", sans-serif; font-weight: 500; }
    figcaption.overlay { position: absolute; bottom: 0; right: 0; color: #fff; background: rgba(0,0,0,0.33); font-size: 12px; padding: 4px; text-transform: uppercase; }
    figcaption.overlay.ovltop { bottom: auto; right: auto; left: 0; top: 0; }

    .offset { margin-right: -200px; margin-bottom: 20px; }
    figure img { width: 100%; display: block; margin: 0 !important; }
    figure.padded { padding: 0; }
    figure.padded img { padding: 10px 10px 5px; box-sizing: border-box; }
    .videowrapper figcaption[class*="bg-"] { padding: 10px; }
    figure[class*="bg-"] figcaption,
    .videowrapper figcaption,
    .videowrapper[class*="bg-"] figcaption { padding: 15px 0 0; }
    figure.padded figcaption { padding: 10px; opacity: 0.66; }


    /* tables */
    table { width: 100%; float: left; margin: 5px 0 25px; border-collapse: collapse; }
    th, td { vertical-align: top; }
    th, td { padding: 5px; text-align: left; }
    th { font-weight: bold; }


/* SLIDER --------------------------------------------- */


/* Slider Containers */
    .siema { -ms-touch-action: pan-y; touch-action: pan-y; position: relative; overflow: hidden; }
    .aslide { height: 100%; min-height: 1px; position: relative; overflow: hidden; }
    .slider-wrapper { margin: 0 auto 30px; padding-bottom: 0; width: 100%; }
    .single #page-content > .inner-wrapper:first-child > .slider-wrapper { margin-bottom: 0; }
    body.slider-caps-bottom .slider_inner,
    body.slider-caps-boxed .slider_inner { border-bottom: 1px solid #fff; }
    body.slider-limit .slider_inner { border-bottom: none; }
    .single .size-hd75 .slide-img-wrap { position: relative; padding-bottom: 41.66%; /* 1920x800 */ }
    .single .size-hd .slide-img-wrap { position: relative; padding-bottom: 56.25%; /* 1920x1080 */ }
    .single .size-hd-half .slide-img-wrap { position: relative; padding-bottom: 28.125%; /* 1920x540 */ }
    .single .size-camera .slide-img-wrap { position: relative; padding-bottom: 75.00%; /* 1920x1440 */ }



/* Slider Dots */
    .siema .dots {
        position: absolute; left: 5px; padding: 0 10px; margin-left: 0;
        bottom: 15px; width: 70%;
        border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px;
    }
    .siema.no-captions .dots,
    .siema.slider-caps-bottom .dots { bottom: -4px; }

    .siema .dots button {
        position: relative; top: -4px; margin-left: 15px; color: transparent; outline: none; padding: 0;
        width: 20px; height: 20px; cursor: pointer; font-size: 0; border: 3px solid #FF5613;
        -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%;
    }
    .siema .dots button:first-child { margin-left: 0; padding-left: 0; }


/* Slider full links */
    p.sldlink { margin: 0; padding: 0; }
    p.sldlink a { position:absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 200; display: block; }


/* Slider Captions */
    /* slider caption underneath image (default) */
    /* also .siema.slider-caps-bottom for overlaid at bottom of slider */
    /* and  .siema.slider-caps-side   for overlaid at left of slider */
    /* for no captions, add this class to provide space for the dots to show (unless no dots) */
    .siema.no-captions { padding-bottom: 30px; }
    .slide-caption { text-align: center; padding: 15px 15px 55px; }


    /* slider caption overlaid bottom of image */
    .siema.slider-caps-bottom { padding-bottom: 40px; } /* dots are shown on bottom edge of slider */
    .siema.slider-caps-bottom .slide-caption {
        width: 100%; margin: 0 auto; padding: 15px; box-sizing: border-box; position: absolute; bottom: -1px; z-index: 150; }


    /* slider caption overlaid image and left side */
    .siema.slider-caps-side .slide-caption {
        width: 33%; max-width: 300px; min-width: 150px;
        box-sizing: border-box; position: absolute;
        margin: 0 auto; bottom: 0; left: 0; height: 100%; overflow: auto; z-index: 150;
    }


/* slider caption text */
    .slide-caption h2,
    .slide-caption p { margin: 0 auto; }
    body.slider-limit .slide-caption h2,
    body.slider-limit .slide-caption p,
    .siema.slider-caps-side .slide-caption h2,
    .siema.slider-caps-side .slide-caption p { width: auto; }
    .slide-caption h2 { font-size: 2.75rem; }
    .siema p a { color: inherit; text-decoration: underline; }
    .siema p:empty { display: none; }


/* slider arrows */
    button.arrow i { text-align: center; width: 100%; padding: 0; font-size: 22px; text-align: center; position: relative; }
    button.arrow.prev i { left: -2px; }
    button.arrow.next i { left: 2px; }
    .siema .arrow {
        position: absolute; top: 50%; right: 50px; font-size: 25px; opacity: 1;
        width: 40px; height: 40px; cursor: pointer; border-width: 0;
        -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%;
        -webkit-transform: translate(0%, -50%); -moz-transform: translate(0%, -50%); -ms-transform: translate(0%, -50%); transform: translate(0%, -50%);
        -webkit-tap-highlight-color: rgba(0,0,0,0);
    }
    .siema .arrow.next{ right: -5px; }
    /* arrows inline with dots */
    .siema.no-captions .arrow, .siema.slider-caps-bottom .arrow { bottom: -4px; }
    .siema .arrow { top: auto; bottom: 15px; width: 50px; height: 20px; }


/* slider images */
    .aslide img { width:auto; height: 100%; display: block; opacity: 0;
        position: absolute; top: 0; left: 0; z-index: 100; transition: opacity 0.33s ease-out; }
    .aslide img.visible { opacity: 1; }
    .spinner:before,
    .slide-img-wrap:before { content: "Loading"; font-size: 17px; color: #999; text-shadow: 1px 1px #fff;
        position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); padding-top: 80px; }
    .spinner:after,
    .slide-img-wrap:after { content: "\f021"; font: normal normal normal 50px/1 FontAwesome; color: #999;
        text-shadow: 1px 1px #fff; position: absolute; top: 50%; left: 50%;
        transform: translate(-50%, -50%); animation: anim-spinner 2s linear infinite; }
    @keyframes anim-spinner {
        0% { transform: translate(-50%, -50%) rotate(0deg); }
        100% { transform: translate(-50%, -50%) rotate(360deg); }
    }

    .slide-img-wrap.anim-stop:before,
    .slide-img-wrap.anim-stop:after { content: ""; animation: none; opacity: 0.5; color: red; }


/* overrides for specific sliders */
/* if changing the padding-bottom for aspect ratio, may also need to change the fixed height at 1023px */
    /*#slider-example .slide-img-wrap { padding-bottom: 56.25%; }*/
    /* for a slider no captions but dots */


/* MODAL ---------------------------------------------- */


    .modal {
        background: #fff;
        z-index: 9999; display: none; padding: 15px; overflow-y: auto; -webkit-overflow-scrolling: touch;
        position: absolute; width: 75%; min-width: 270px; max-width: 970px; top: 50%; left: 50%; max-height: 80%;
        -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
        -webkit-transform: translate(-50%,-50%); -moz-transform: translate(-50%,-50%); -ms-transform: translate(-50%,-50%); /* for ie9 */ transform: translate(-50%,-50%);
    }
    .modal.show { display: block; }


/* LIGHTBOX ------------------------------------------- */


/* single images */
    .lightbox { color: #fff; }
    .lightbox-image { z-index: 9999; background-color: #fff; padding: 4px; }
    .lightbox-image { box-sizing: border-box; position: absolute; left: 50%; top: 50%;
        transform: translate(-50%, -50%); }
    .lightbox-title { position: absolute; left: 50%; bottom: 3px; width: 100%;
        transform: translate(-50%, 0%); color: #fff; text-align: center; margin-bottom: 0; }

/* shared items */
    .page-overlay { display: none; background: rgba(0,0,0,0.9); position: fixed; top: 0px; left: 0; width: 100%; height: 100%; z-index: 9998; }
    .page-overlay.show { display: block; }
    .lightbox-close { float: right; padding-right: 40px; padding-top: 5px; font-weight: bold; color: #fff; cursor: pointer; }
    .lightbox-close i { position: absolute; top: 1px; right: 10px; color: #fff; font-size: 30px !important; }
    .lightbox-close i.fa { padding-right: 0; }

    .spinner { position: absolute; top: 50%; left: 50%;
        box-sizing: border-box; transform: translate(-50%,-50%); }
    /*.spinner:before{ content: "Loading"; font-size: 17px; color: #999; text-shadow: 1px 1px #fff;
        position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); padding-top: 80px; }
    .spinner:after { content: "\f021"; font: normal normal normal 50px/1 FontAwesome; color: #999;
        text-shadow: 1px 1px #fff; position: absolute; top: 50%; left: 50%;
        transform: translate(-50%, -50%); animation: anim-spinner 2s linear infinite; }*/
    .spinner:before, .spinner:after { color: #fff; text-shadow: none; }


/* IMAGES AND BACKGROUNDS ----------------------------- */


    img { display: block; }
    .alignleft { float: left; margin-right: 20px; max-width: 50%; height: auto; }
    .alignright { float: right; margin-left: 20px; max-width: 50%; height: auto; }
    .alignnone { margin-bottom: 25px; width: 100%; }
    /*.actual { max-width: 100%; width: auto; }*/

    .crop-from-right { background-position: left top; }
    .crop-from-left { background-position: right top; }


/* NEWSLETTER SIGNUP - FOOTER ------------------------- */


    aside.newsletter { position: relative; width: 100%; bottom: -22px; padding: 20px 0; float: left; }
    aside.newsletter .intro { float: left; width: 49%; }
    aside.newsletter p { margin: 0; font-size: 1.5rem; }
    aside.newsletter form { position: relative; float: right; width: 49%; }
    aside.newsletter form input[type="email"] { width: 100%; padding-right: 120px; display: inline; padding: 3px 120px 3px 5px; margin: 0; }
    aside.newsletter form button[type="submit"] { position: absolute; top: 0; right: 0; padding: 7px 10px 6px 10px; width: 110px; font-family: inherit; border: none; margin: 0; }
    aside.newsletter form p { margin: 13px 0 0; text-align: right; padding-right: 12px; }
    aside.newsletter form p a { color: inherit; }
    aside.newsletter form button[type="submit"]:hover { background: #fff; color: #000; }

    aside.newsletter.success .intro { width: 100%; }
    aside.newsletter.success form { display: none; }
    aside.newsletter p.submitok { display: none; }
    aside.newsletter.success p.submitok { display: block; }


/* LINKS AND COLOURS  --------------------------------- */

    /* default font and text colour */
    html { color: #2e2e2e; font-family: 'Open Sans', sans-serif; font-weight: 400; }
    body { font-size: 1.6rem; }
    a { text-decoration: none; font-weight: bold; }


/* Link and Related Colours (accents eg bullets) */
    a,
    .secondary-colour,
    ol.modern li:before,
    header li a:hover { color: #008E2B; }
    .bullet li:before,
    p.bullet:before { background-color: #008E2B; }


/* main and secondary colours */
    .main-colour { color: #2e2e2e; }
	a:hover { text-decoration: underline; }


/* Borders */
    hr { border-top: 1px solid #c0c0c0; }


/* Backgrounds */
    footer { background: #4F4550; }


/* slider colours */
    .siema .dots button { border-color: #2e2e2e; background: none; }
    .siema .dots button.active { background-color: #2e2e2e; }
    .siema .arrow { background: none; color: #2e2e2e; }
    .siema.slider-caps-bottom .slide-caption { background: linear-gradient(rgba(0,0,0,0) 0%, rgba(0,0,0,0.66) 70%); }
    .siema.slider-caps-bottom h4,
    .siema.slider-caps-bottom h4 span i,
    .siema.slider-caps-bottom h2,
    .siema.slider-caps-bottom p { color: #fff; text-shadow: 1px 1px 1px #444; }


    /* colour palette */
    .c-featured { color: #F1F1B1; }
	.c-black { color: #000; }
	.c-white { color: #fff; }
    .c-darkred { color: #B40000; }
	.c-red { color: #E6000B; }
    .c-yellow { color: #FFFF80; }
    .c-tangerine { color: #FD9800; }
    .c-orange { color: #FF5613; }
    .c-amber { color: #FBCA3F; }
    .c-lightgreen { color: #83C832; }
    .c-darkgreen { color: #008E2B; }
    .c-olive { color: #54692E; }
    .c-greenblue { color: #006651; }
    .c-cyan { color: #43DBD6; }
    .c-lightblue { color: #4DBEFF; }
    .c-navy { color: #000372; }
    .c-royalblue { color: #0000C0; }
    .c-violet { color: #C285D2; }
    .c-darkviolet { color: #7B5DA7; }
    .c-indigo { color: #3C1A6E; }
    .c-brown { color: #764836; }
    .c-cutepink { color: #FFC0FF; }
    .c-hotpink { color: #FF4F91; }
    .c-lt-grey { color: #f0ecef; }
    .c-mid-grey { color: #B6B6B6; }
    .c-dk-grey { color: #656565; }
    .c-slate { color: #4F4550; }


    .bg-featured { background-color: #F1F1B1; }
	.bg-black { background-color: #000; }
	.bg-white { background-color: #fff; }
	.bg-red { background-color: #E6000B; }
    .bg-orange { background-color: #FF5613; }
    .bg-amber { background-color: #FBCA3F; }
    .bg-lightgreen { background-color: #83C832; }
    .bg-darkgreen { background-color: #008E2B; }
    .bg-greenblue { background-color: #006651; }
    .bg-cyan { background-color: #43DBD6; }
    .bg-lightblue { background-color: #4DBEFF; }
    .bg-violet { background-color: #C285D2; }
    .bg-darkviolet { background-color: #7B5DA7; }
    .bg-indigo { background-color: #3C1A6E; }
    .bg-brown { background-color: #764836; }
    .bg-hotpink { background-color: #FF4F91; }
    .bg-lt-grey { background-color: #f0ecef; }
    .bg-mid-grey { background-color: #B6B6B6; }
    .bg-dk-grey { background-color: #656565; }
    .bg-slate { background: #4F4550; }
    .bg-olive { background-color: #54692E; }
    .bg-cutepink { background-color: #FFC0FF; }
    .bg-navy { background-color: #000372; }
    .bg-royalblue { background-color: #0000C0; }
    .bg-yellow { background-color: #FFFF80; }
    .bg-tangerine { background-color: #FD9800; }
    .bg-darkred { background-color: #B40000; }


	.border-black { border-color: #000; }
	.border-white { border-color: #fff; }
	.border-red { border-color: #E6000B; }
    .border-orange { border-color: #FF5613; }
    .border-amber { border-color: #FBCA3F; }
    .border-lightgreen { border-color: #83C832; }
    .border-darkgreen { border-color: #008E2B; }
    .border-greenblue { border-color: #006651; }
    .border-cyan { border-color: #43DBD6; }
    .border-lightblue { border-color: #4DBEFF; }
    .border-violet { border-color: #C285D2; }
    .border-darkviolet { border-color: #7B5DA7; }
    .border-indigo { border-color: #3C1A6E; }
    .border-brown { border-color: #764836; }
    .border-hotpink { border-color: #FF4F91; }
    .border-lt-grey { border-color: #f0ecef; }
    .border-mid-grey { border-color: #B6B6B6; }
    .border-dk-grey { border-color: #656565; }
    .border-slate { border-color: #4F4550; }
    .border-olive { border-color: #54692E; }
    .border-cutepink { border-color: #FFC0FF; }
    .border-navy { border-color: #000372; }
    .border-royalblue { border-color: #0000C0; }
    .border-yellow { border-color: #FFFF80; }
    .border-tangerine { border-color: #FD9800; }
    .border-darkred { border-color: #B40000; }


    /* tables */
    table { border: 1px solid #777; }
    td, th { border-left: 1px solid #ccc; }
    td { border-top: 1px solid #ccc; }
    th:first-child, td:first-child { border-left: none; }


/* NO JAVASCRIPT -------------------------------------- */


    body.nojs .siema .aslide:nth-child(1n+2) { display: none; }


/* RESPONSIVE ----------------------------------------- */


@media only screen and (max-width : 1043px) {
    header .inner-wrapper,
    footer .inner-wrapper { width: 100%; box-sizing: border-box; padding: 0; }
    footer .inner-wrapper { padding: 0 15px; }
    .cover img { padding: 0; }
    .logo-wrapper { padding: 0 20px; }
    .cover p { right: 0; }
    .page section { padding: 0 20px; } 
    .offset { margin-right: -160px; }    
}


@media only screen and (max-width : 980px) {
    .inner-wrapper { width: 100%; box-sizing: border-box; padding: 0; }
    section { padding-left: 20px; padding-right: 20px; }
    .intro { padding: 10px 0 0; }
    .drop-cap { margin-left: 0; }
    .stories .section-half { width: calc(50% - 15px); box-sizing: border-box; }
    .meta-wrapper { padding-left: 20px; padding-right: 20px; box-sizing: border-box; }
}


@media only screen and (max-width : 920px) {
    .offset { margin-right: -70px; }
}


@media only screen and (max-width : 820px) {
    section { box-sizing: border-box; }
    .page section { width: 100%; }   
    .offset { margin-right: 0px; }        
}


@media only screen and (max-width : 767px) {
    .drop-cap { width: 210px; }
    .cover p { font-size: 1.5rem; }
    header p { text-align: center; }
    header .logo { width: 350px; margin: 0 auto; }
    .tagline span { display: block; float: none; margin: 20px 0 0; }
    .shape1 { margin-right: -100px; max-width: 60%; }
    section { margin-bottom: 20px; }
    .section-full { width: 100%; }    
    .section-inner { padding: 10px; }
    .section-right { margin-left: 20px; }
    section,
    .section-half { width: 100%; height: auto; margin: 0 auto 20px; } 
    .stories .section-half { width: 100%; }    
    .stories .section-half .text-wrap { padding-right: 33vw; }
    .intro,
    .news { padding: 10px; }
    .news { margin-top: 30px; }
    .section-inner { padding: 0; }
    .news > h2 { margin: 0 0 30px 0; }
    .stories .section-full .text-wrap { width: 100%; box-sizing: border-box; }
    .story5 .text-wrap { margin-top: -100px; }
    .feedback { background-image: none; } 
    .news-story { margin-bottom: 50px; }
}


@media only screen and (max-width : 600px) {
    p, li, th, td, h5, h6, label { font-size: 1.6rem; line-height: 150%; }
    .padded { padding: 15px; }    
    .bullet li:before,
    p.bullet:before { top: 8px; }    
    .page h1 { font-size: 4.5rem; }
    .page h2 { font-size: 2.6rem; }
    .page h3 { font-size: 2.25rem; }
    .page header { margin-bottom: 30px; }
    header .logo { width: 100%; }
    header p { font-size: 1.6rem; }
    .drop-cap { width: 160px; }
    .cover img { position: relative; height: 300px; width: auto; transform: translateX(-50%); left: 50%; }
    .alignleft:not(.actual),
    .alignright:not(.actual) { max-width: 100%; width: 100%; margin: 0 0 20px; }
    .story5 .text-wrap { margin-top: -60px; }    
}


@media only screen and (max-width : 480px) {
    .tagline span { margin: 10px 0 0; }
    header p { font-size: 1.5rem; }
    .logo-wrapper { padding: 0 35px; }
    .news > h2 { margin: 0 0 20px 20px; }
    .page h1 { font-size: 4.0rem; }
    h2 { font-size: 2.4rem; }
    h3 { font-size: 1.8rem; }
    footer .logo { width: 260px; }
    footer p { font-size: 1.5rem; }
    .stories .section-half .text-wrap { padding-right: 15px; } 
    .button { width: 100%; box-sizing: border-box; }
    .button + .button { margin: 20px 0 0; }    
}


/* PRINT ---------------------------------------------- */


