/* ==========================================================================
   HTML5 Boilerplate styles - h5bp.com (generated via initializr.com)
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #222;
}

body {
    font-size: 1em;
    line-height: 1.4;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

img {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}


/* ===== Initializr Styles ==================================================
   Author: Jonathan Verrecchia - verekia.com/initializr/responsive-template
   ========================================================================== */

body {
    font: 16px/26px Helvetica, Helvetica Neue, Arial;
}

.wrapper {
    margin: 0 20px;
}

/* ==============
    MOBILE: Menu
   ============== */

nav ul {
    margin: 0;
    padding: 0;
}

nav a {
    display: block;
    padding: 15px 0 5px;
    border-top: dotted 1px #FFF;
    border-bottom: solid 10px transparent;

    text-align: center;
    text-decoration: none;
    font-size: 14px;
    color: #053555;
}

nav li.current a,
nav a:hover,
nav a:active {
    background: url(../images/dot.png) 50% 100% no-repeat;
}

/* ==============
    MOBILE: Main
   ============== */

.main article h1 {
    font-size: 1.5em;
    color: #C4D1D6;
    text-shadow: 2px 2px 2px rgba(0, 0, 0, .2);
    position: relative;
    z-index: 500;
    margin: 20px 0 40px;
    text-align: center;
}

.footer-container footer {
    padding: 20px 0;
    /*border-top: 1px solid #637F8D;*/
}

/* ===============
    ALL: IE Fixes
   =============== */



/* ==========================================================================
   Author's custom styles
   ========================================================================== */

body,
html,
.container {
    height: 100%;
}

body {
    background-color: #dad7c6;
    background-image: url(../images/bg.png);
    background-repeat: repeat-x;
}

.header-main {
    min-height: 100%;
    height: auto !important;
    height: 100%;
    margin: 0 auto -60px; /* the bottom margin is the negative value of the footer's height */
}

a {
    color: #125a7b;
}

.header-container {
    position: relative;
    z-index: 100;
}

header {
    background-color: #c4d1d6;
    border: solid 1px rgba(0,0,0,.2);
    border-top-width: 0;
    -webkit-border-bottom-right-radius: 4px;
    -webkit-border-bottom-left-radius: 4px;
    -moz-border-radius-bottomright: 4px;
    -moz-border-radius-bottomleft: 4px;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px;
}

.logo {
    display: block;
    width: 112px;
    height: 44px;
    background-image: url(../images/color-craft-logo.png);
    margin-left: 20px;
}

article {
    position: relative;
}

.feature p {
    font-weight: 300;
    font-size: 18px;
    text-transform: uppercase;
    color: #cfcdc2;
    text-shadow: 3px 4px 7px #213842;
    filter: dropshadow(color=#213842, offx=3, offy=4);
}

.feature strong {
    font-weight: 300;
    color: #053555;
    text-shadow: 3px 4px 7px #AAA;
    filter: dropshadow(color=#AAA, offx=3, offy=4);
}

.feature br {
    display: none;
}

.HomePage aside {
    background: #ffffff; /* Old browsers */
    background: -moz-linear-gradient(top,  #ffffff 0%, #ffffff 28%, #e4e4e4 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(28%,#ffffff), color-stop(100%,#e4e4e4)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top,  #ffffff 0%,#ffffff 28%,#e4e4e4 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top,  #ffffff 0%,#ffffff 28%,#e4e4e4 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top,  #ffffff 0%,#ffffff 28%,#e4e4e4 100%); /* IE10+ */
    background: linear-gradient(to bottom,  #ffffff 0%,#ffffff 28%,#e4e4e4 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e4e4e4',GradientType=0 ); /* IE6-9 */
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    padding-bottom: 6px;
    margin-bottom: 20px;
    
    -webkit-box-shadow: 3px 4px 7px 0px rgba(0, 0, 0, .2);
    box-shadow: 3px 4px 7px 0px rgba(0, 0, 0, .2);

    color: #224258;
}

.HomePage aside img.right {
    float: right;
    margin: 20px 20px 10px 10px;
}

.HomePage aside h2 {
    background-color: #DDD;
    padding: 10px 20px;
    margin-top: 0;
    -webkit-border-top-left-radius: 20px;
    -webkit-border-top-right-radius: 20px;
    -moz-border-radius-topleft: 20px;
    -moz-border-radius-topright: 20px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;

    font-weight: 300;
    font-size: 18px;
    text-transform: uppercase;
    color: #666;
}

.HomePage aside p,
.HomePage aside .cta {
    margin: 1em 20px;
}

.HomePage aside .cta {
    display: block;
    text-align: right;
}

.push {
    height: 90px;
}

footer {
    background-color: #e4e2d8;
    position: relative;
    z-index: 300;
}

/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (min-width: 480px) {

/* ====================
    INTERMEDIATE: Menu
   ==================== */
/*
    nav a {
        float: left;
        width: 27%;
        margin: 0 1.7%;
        padding: 25px 2%;
        margin-bottom: 0;
    }

    nav li:first-child a {
        margin-left: 0;
    }

    nav li:last-child a {
        margin-right: 0;
    }
*/

/* ========================
    INTERMEDIATE: IE Fixes
   ======================== */
/*
    nav ul li {
        display: inline;
    }

    .oldie nav a {
        margin: 0 0.7%;
    }
*/
}

@media only screen and (min-width: 768px) {

/* ====================
    WIDE: Layout
   ==================== */

    body {
        background-image: url(../images/bg.png);
        background-repeat: repeat-x;
        background-position: 0 -585px;
        background-image: url(../images/bg-texture.png),url(../images/bg.png);
        background-repeat: repeat,repeat-x;
        background-position: 0 -585px, 0 -585px;
    }

    body.HomePage {
        background-position: 0 -298px;
        background-position: 0 -298px, 0 -298px;
    }

    body.GalleryPage {
        background-position: 0 -218px;
        background-position: 0 -218px, 0 -218px;
    }

    .wrapper {
        min-width: 895px;
    }

    .logo {
        float: left;
        margin: 8px 20px;
    }

/* ============
    WIDE: Menu
   ============ */

    nav {
        float: right;
        margin-right: 20px;
    }

    nav li {
        float: left;
        margin-left: 1px;
    }

    nav a {
        border-top: none;
        padding-left: 10px;
        padding-right: 10px;
    }


/* ============
    WIDE: Main
   ============ */

    .feature {
        height: 308px;
        padding: 60px 530px 0 25px;
        margin-top: -14px;
        background-image: url(../images/feature-family.png);
        background-repeat: no-repeat;
        background-position: 100% 0;
        border-right: 15px solid transparent;
        position: relative;
        z-index: 200;
    }

    .feature p {
        font-size: 20px;
        margin: 1em 0 2em;
    }

    .feature strong {
        text-shadow: 3px 4px 7px #213842;
        filter: dropshadow(color=#213842, offx=3, offy=4);
    }

    .feature br {
        display: inline;
    }

    article {
        padding: 0 20px;
    }

    .main article h1 {
        font-size: 2em;
    }

    .main article h1 {
        text-align: left;
    }

    .GalleryPage .main article h1 {
        text-align: center;
        margin-bottom: 20px;
    }

    .HomePage .main aside {
        width: 400px;
        float: left;
        margin-left: 25px;
        margin-top: -35px;
        position: relative;
        z-index: 300;
    }

    .HomePage .main aside + aside {
        float: right;
        margin-right: 25px;
        margin-left: 0;
    }

    .footer-container footer {
        position: relative;
        height: 60px;
        padding: 0;
        border: solid 1px rgba(0, 0, 0, .2);
        border-bottom-width: 0;
        -webkit-border-top-right-radius: 4px;
        -webkit-border-top-left-radius: 4px;
        -moz-border-radius-topright: 4px;
        -moz-border-radius-topleft: 4px;
        border-top-right-radius: 4px;
        border-top-left-radius: 4px;

        font-size: 11px;
        line-height: 1.2;
        color: #757165;
        
    }

    footer .about {
        width: 30%;
        position: absolute;
        left: 25px;
        top: 20px;
    }

    footer .phone {
        width: 200px;
        text-align: center;
        margin-left: auto;
        margin-right: auto;

        font-size: 22px;
        line-height: 60px;
    }

    footer .copyright {
        width: 30%;
        position: absolute;
        right: 25px;
        top: 20px;

        text-align: right;
    }

    /* ====================
    Slides
   ==================== */

    .slide_container {
        padding: 0 110px;
        margin-left: auto;
        margin-right: auto;
    }

    .caroufredsel_wrapper {
        margin-right: auto !important;
        margin-left: auto !important;
        -webkit-box-shadow:  0 0 200px 50px rgba(0, 0, 0, .5);
        box-shadow: 0 0 200px 50px rgba(0,0,0,.5);
        border: solid 20px white;
        background-color: white;
    }

    #slides img {
        display: block;
        float: left;
    }

    .slide_prev,
    .slide_next {
        position: absolute;
        top: 40px;
        background-image: url(../images/prev-next.png);
        background-position: 0 50%;
        background-repeat: no-repeat;
        height: 490px;
        width: 38px;
        opacity: .50;
    }

    .slide_prev:hover,
    .slide_next:hover {
        opacity: 1;
    }

    .slide_prev {
        left: 65px;
    }

    .slide_next {
        right: 65px;
        background-position: 100% 50%;
    }
}

@media only screen and (min-width: 1000px) {

/* ===============
    Maximal Width
   =============== */

    .wrapper {
        width: 1000px; /* 1140px - 10% for margins */
        margin: 0 auto;
    }

    .logo {
        margin-left: 70px;
    }

    nav {
        margin-right: 70px;
    }

    .feature {
        padding: 60px 530px 0 70px;
    }

    .feature p {
        font-size: 24px;
        margin: 1em 0;
    }

    article {
        padding-left: 70px;
        padding-right: 70px;
    }

    .HomePage .main aside {
        width: 400px;
        float: left;
        margin-left: 70px;
    }

    .HomePage .main aside + aside {
        float: right;
        margin-right: 70px;
    }

    footer .about {
        left: 70px;
    }

    footer .copyright {
        right: 70px;
    }
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 100%;
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow:none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}