/*
 * Start Bootstrap - Creative Bootstrap Theme (http://startbootstrap.com)
 * Code licensed under the Apache License v2.0.
 * For details, see http://www.apache.org/licenses/LICENSE-2.0.
 */

html,
.carousel,
.item,
.active {
    position: relative;
    width: initial;
    height: 100%;
    min-height: auto;
    text-align: center;
    color: #fff;
    background-position: center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
}

.carousel-inner {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: auto;
    text-align: center;
    color: #fff;
    background-position: center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
}

.fill {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: auto;
    text-align: center;
    color: #fff;
    background-position: center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
}

body {
    width: 100%;
    height: 100%;
    font-family: Merriweather,'Helvetica Neue',Arial,sans-serif;
    webkit-tap-highlight-color: #111;
}

/* Líneas separadoras decorativas - Ahora en Dorado de Atenas */
hr {
    max-width: 50px;
    border-color: #D4AF37; 
    border-width: 3px;
    margin: 30px auto;
}

hr.light {
    border-color: #fff;
}

/* Enlaces principales de la web - En Guinda */
a {
    color: #800020;
    -webkit-transition: all .35s;
    -moz-transition: all .35s;
    transition: all .35s;
}

a:hover,
a:focus {
    color: #550015;
    text-decoration: none;
}

p {
    margin-bottom: 20px;
    font-size: 16px;
    line-height: 1.5;
}

/* Secciones primarias (Como Nosotros) - Fondo Guinda Granate */
.bg-primary {
    background-color: #800020;
    color: #fff;
}

/* Secciones oscuras (Como Contacto) - Fondo Negro Sólido */
.bg-dark {
    color: #fff;
    background-color: #111111;
}

.text-faded {
    color: rgba(255,255,255,.9);
}

section {
    padding: 100px 0;
}

aside {
    padding: 50px 0;
}

.no-padding {
    padding: 0;
}

/* MENÚ DE NAVEGACIÓN SUPERIOR */
.navbar-default {
    border-color: rgba(17,17,17,.05);
    background-color: #fff;
    -webkit-transition: all .35s;
    -moz-transition: all .35s;
    transition: all .35s;
}

/* Nombre de la marca en el menú móvil - Guinda */
.navbar-default .navbar-header .navbar-brand {
    text-transform: uppercase;
    font-weight: 700;
    color: #800020;
}

.navbar-default .navbar-header .navbar-brand:hover,
.navbar-default .navbar-header .navbar-brand:focus {
    color: #550015;
}

.navbar-default .nav > li>a,
.navbar-default .nav>li>a:focus {
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 700;
    color: #222;
}

.navbar-default .nav > li>a:hover,
.navbar-default .nav>li>a:focus:hover {
    color: #800020;
}

.navbar-default .nav > li.active>a,
.navbar-default .nav>li.active>a:focus {
    color: #800020 !important;
    background-color: transparent;
}

/* Ajustes del Menú cuando la pantalla es grande (PC) */
@media(min-width:768px) {
    .navbar-default {
        border-color: rgba(255,255,255,.3);
        background-color: transparent;
    }

    .navbar-default .navbar-header .navbar-brand {
        color: rgba(255,255,255,.9);
    }

    .navbar-default .navbar-header .navbar-brand:hover,
    .navbar-default .navbar-header .navbar-brand:focus {
        color: #fff;
    }

    .navbar-default .nav > li>a,
    .navbar-default .nav>li>a:focus {
        color: rgba(255,255,255,.7);
    }

    .navbar-default .nav > li>a:hover,
    .navbar-default .nav>li>a:focus:hover {
        color: #fff;
    }

    /* Cuando el menú se vuelve fijo al bajar scroll (Fondo Blanco, Texto Guinda) */
    .navbar-default.affix {
        border-color: rgba(17,17,17,.05);
        background-color: #fff;
    }

    .navbar-default.affix .navbar-header .navbar-brand {
        font-size: 16px;
        color: #800020;
    }

    .navbar-default.affix .navbar-header .navbar-brand:hover,
    .navbar-default.affix .navbar-header .navbar-brand:focus {
        color: #550015;
    }

    .navbar-default.affix .nav > li>a,
    .navbar-default.affix .nav>li>a:focus {
        color: #222;
    }

    .navbar-default.affix .nav > li>a:hover,
    .navbar-default.affix .nav>li>a:focus:hover {
        color: #800020;
    }
}

/* BANNER PRINCIPAL (HEADER) */
header .header-content {
    position: absolute;
    width: 100%;
    padding: 100px 15px;
    text-align: center;
    top: 50px;
}

header .header-content .header-content-inner h1 {
    margin-top: 0;
    margin-bottom: 0;
    text-transform: uppercase;
    font-weight: 700;
}

header .header-content .header-content-inner p {
    margin-bottom: 50px;
    font-size: 16px;
    font-weight: 300;
    color: rgba(255,255,255,.7);
}

@media(min-width:768px) {
    header {
        min-height: 100%;
    }

    header .header-content {
        position: absolute;
        top: 50%;
        padding: 0 50px;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    header .header-content .header-content-inner {
        margin-right: auto;
        margin-left: auto;
        max-width: 1000px;
    }

    header .header-content .header-content-inner p {
        margin-right: auto;
        margin-left: auto;
        max-width: 80%;
        font-size: 18px;
    }
}

.section-heading {
    margin-top: -30px;
}

.service-box {
    margin: 50px auto 0;
    max-width: 400px;
}

@media(min-width:992px) {
    .service-box {
        margin: 20px auto 0;
    }
}

.service-box p {
    margin-bottom: 0;
}

/* BLOQUE DE PORTAFOLIO / CLIENTES */
.portfolio-box {
    display: block;
    position: relative;
    margin: 0 auto;
    max-width: 650px;
}

/* Capa flotante al pasar el mouse por un cliente - Guinda traslúcido */
.portfolio-box .portfolio-box-caption {
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    color: #fff;
    opacity: 0;
    background: rgba(128, 0, 32, 0.9);
    -webkit-transition: all .35s;
    -moz-transition: all .35s;
    transition: all .35s;
}

.portfolio-box .portfolio-box-caption .portfolio-box-caption-content {
    position: absolute;
    top: 50%;
    width: 100%;
    text-align: center;
    transform: translateY(-50%);
}

.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category,
.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {
    padding: 0 15px;
    font-family: 'Open Sans','Helvetica Neue',Arial,sans-serif;
}

.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category {
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 600;
}

.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {
    font-size: 18px;
}

.portfolio-box:hover .portfolio-box-caption {
    opacity: 1;
}

@media(min-width:768px) {
    .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category {
        font-size: 16px;
    }

    .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {
        font-size: 22px;
    }
}

.call-to-action h2 {
    margin: 0 auto 20px;
}

.text-primary {
    color: #800020;
}

.no-gutter > [class*=col-] {
    padding-right: 0;
    padding-left: 0;
}

/* BOTONES DEL SITIO */
.btn-default {
    border-color: #fff;
    color: #222;
    background-color: #fff;
    -webkit-transition: all .35s;
    -moz-transition: all .35s;
    transition: all .35s;
}

.btn-default:hover,
.btn-default:focus,
.btn-default.focus,
.btn-default:active,
.btn-default.active {
    border-color: #ededed;
    color: #800020;
    background-color: #f2f2f2;
}

.btn-primary {
    border-color: #800020;
    color: #fff;
    background-color: #800020;
    -webkit-transition: all .35s;
    -moz-transition: all .35s;
    transition: all .35s;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary.focus,
.btn-primary:active,
.btn-primary.active {
    border-color: #550015;
    color: #fff;
    background-color: #550015;
}

.btn {
    border: 0;
    border-radius: 300px;
    text-transform: uppercase;
    font-family: 'Open Sans','Helvetica Neue',Arial,sans-serif;
    font-weight: 700;
}

.btn-xl {
    padding: 15px 30px;
}

::-moz-selection {
    text-shadow: none;
    color: #fff;
    background: #800020;
}

::selection {
    text-shadow: none;
    color: #fff;
    background: #800020;
}

img::selection {
    color: #fff;
    background: 0 0;
}

img::-moz-selection {
    color: #fff;
    background: 0 0;
}

.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }

@-ms-viewport  { width: device-width; }

@media (min-width: 1600px), (min-height: 900px) {
    body { font-size: 16px; }
}

@media (min-width: 1750px), (min-height: 900px) {
    body { font-size: 17px; }
}

@media (max-width: 1200px) and (min-width: 768px), (max-height: 650px) and (min-width: 768px) {
    body { font-size: 14px; }
}

@media (max-width: 1050px) and (min-width: 768px), (max-height: 550px) and (min-width: 768px) {
    body { font-size: 12px; }
}

@media (max-width: 900px) and (min-width: 768px), (max-height: 450px) and (min-width: 768px) {
    body { font-size: 11px; }
}

@media (max-width: 767px) {
    body.index {
        overflow-y: visible;
        overflow-x: hidden;
    }
}