@import url('https://fonts.googleapis.com/css?family=Fira+Sans:300,300i,400,400i,500,500i,700,700i,900,900i');
@import url('//maxcdn.bootstrapcdn.com/font-awesome/latest/css/font-awesome.min.css');

:root {
    --color-primary: #991427;
    --color-secondary: #f29200;
    --color-bg: #efefef;
}
* {
    box-sizing: border-box;
}
img.img-aenor {
    margin-top: 20px;
}
body {
    font-family: 'Fira Sans', sans-serif;
    font-size: 14px;
    color: #333;
}
a,
a:visited,
.alink:visited {
    color: var(--color-primary);
    display: inline-block;
}
iframe {
    max-width: 100%;
}
.header.content {
    display: flex;
    justify-content: space-between;
}
strong.logo {
    order: 0;
}
.block.block-search,
form#search_mini_form {
    order: 1;
}
.minicart-wrapper {
    order: 2;
}
.block.block-search {
    width: 100%;
}
.page-header .switcher .options ul.dropdown:after,
.page-header .switcher .options ul.dropdown,
.panel.wrapper {
    background: url('../images/barra-superior.jpg');
}
.max-width {
    margin-left: auto;
    margin-right: auto;
    max-width: 1280px;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
}
.panel.header span ,
.panel.header a {
    color: #FFFFFF;
}
.page-header .switcher .options .action.toggle:after{
    color: #FFFFFF;
}
.page-header .switcher .options ul.dropdown li:hover {
    background: #f29200;
}
.minicart-wrapper .action.showcart .text {
    position: initial;
    line-height: 35px;
}
.minicart-wrapper .action.showcart:after {
    display: none;
}
.minicart-wrapper .action.showcart:before {
    color: #FFFFFF;
}
.minicart-wrapper .action.showcart.active:hover:before,
.minicart-wrapper .action.showcart:hover:before {
    color: #FFFFFF;
}
a.action.showcart:hover {
    background: var(--color-primary);
    transition: background 0.5s linear 0.2s;
}
a.action.showcart {
    background: var(--color-secondary);
    color: #fff;
    text-transform: uppercase;
    padding: 0 20px;
    border-radius: 3px;
}
.minicart-wrapper {
    max-height: 40px;
}
.sections.nav-sections .navigation .level0 .submenu li {
    margin: 0;
    display: inline-block;
    width: calc(100% / 6);
    padding: 15px;
    text-align: center;
}
.sections.nav-sections .navigation li.level0 {
    margin: 0;
    position: initial;
    flex: 1 1 0;
    text-align: center;
}
ul.level0.submenu {
    text-align: center;
    left: 0 !important;
}
.navigation ul {
    padding: 0;
    display: flex;
    justify-content: space-between;
}
.navigation .level0 .submenu a:hover, .navigation .level0 .submenu a.ui-state-focus{
    background: none !important;
}
.sections.nav-sections .navigation ul li.level0.active > a,
.sections.nav-sections .navigation ul li.level0:hover > a {
    background: var(--color-primary);
    color: #fff;
}
.sections.nav-sections .navigation ul li.level0 > a {
    /* padding: 0 10px !important;
    line-height: 45px; */
    color: #333;
    border: 0 !important;
    display: block !important;
    transition: all 0.3s;
}

.resp-xl,
.resp-md,
.resp-xs {
    display: none;
}
.columns .column.main {
    padding-bottom: 30px;
}
.flex-container {
    display: flex;
}
.action.primary {
    background: var(--color-secondary);
    color: #fff;
    text-transform: uppercase;
    padding: 0 20px;
    line-height: 35px;
    border-radius: 5px;
    font-weight: bold;
    text-decoration: none;
    border: 0;
    text-decoration: none;
    position: relative;
    overflow: hidden;
}
.product-box:hover .action.primary,
.action.primary:hover,
.action.primary:active,
.action.primary:focus {
    border: 0;
    background: var(--color-primary);
    transition: background 0.5s linear 0.2s;
}
.breadcrumbs {
    margin: 15px auto;
    width: 100%;
}
.page-main {
    padding-top: 0 !important;
}
.page-title {
    margin: 30px 0;
}

/* FORM */
.header.content .block.block-search  .action.search:before {
    font-size: 30px;
    line-height: 30px;
    color: #a7423d;
}
.form:not(.form-cart) {
    /* width: 100% !important;
    max-width: none !important; */
}
.form .field {
    margin-bottom: 15px !important;
}
.form .field label,
.form .field .label {
    width: 100% !important;
    text-align: left !important;
    font-size: 14px;
    font-weight: normal;
    position: relative;
}
.form .field .nested {
    margin-top: 5px;
    display: none;
}
.form .field .control {
    width: 100% !important;
}
.form .field._required > label:after {
    margin-left: 10px;
    position: absolute;
    top: 9px;
}
.form .field.required .label:after {
    content: '*';
    color: #e02b27;
    font-size: 1.2rem;
    margin: 0 0 0 5px;
}
.form .field.street .field .label:after {
    display: none;
}
.actions-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin: 30px 0 0 !important;
    font-size: 14px;
}
.actions-toolbar:after,
.actions-toolbar:before {
    display: none !important;
}
.password-strength-meter {
    background: #ccc;
    font-size: 12px;
}
.form .field.choice {
    display: flex;
    align-items: center;
}
.form .field.choice:after,
.form .field.choice:before {
    display: none;
}
.form .field.review-field-rating > label,
.form .field.review-field-rating > .label {
    width: auto !important;
    margin-right: 15px;
    position: relative;
    top: -2px;
}
input[type='checkbox'] {
    margin-top: 0;
}
.form .field .review-control-vote label,
.form .field .review-control-vote .label {
    position: absolute;
    width: auto !important;
}

/* HEADER */
.top-bar {
    background: url('../images/barra-superior.jpg');
}
.top-bar .flex-container {
    align-items: center;
    justify-content: space-between;
    color: #fff;
}
.top-bar .link {
    padding: 5px 0;
    margin-left: 30px;
}
.top-bar .link a {
    color: #fff;
}
.header-content .flex-container {
    align-items: flex-end;
    justify-content: space-between;
    padding-top: 15px;
    padding-bottom: 15px;
}
.header-content .logo {
    margin: 0;
}
.header-content .showcart {
    line-height: 40px;
}
.header-content .showcart .fa-shopping-cart {
    margin-right: 5px;
}
@media (min-width: 768px) {
    .header-content .buscador {
        display: block !important;
    }
}
.header-content .buscador {
    flex: auto;
    margin: 0 30px;
}
#search {
    padding: 0 50px 0 10px;
    line-height: 40px;
    height: 40px;
    border: 2px solid var(--color-bg);
}
.header-bottom {
    background: var(--color-bg);
}
.header-bottom .navigation {
    background: none;
    padding: 0 20px;
}
.header-bottom .navigation ul {
    padding: 0;
    display: flex;
    justify-content: space-between;
}
.header-bottom .navigation ul li.level0 {
    margin: 0;
    position: initial;
    flex: 1 1 0;
    text-align: center;
}
.header-bottom .navigation ul li.level0 a {
    padding: 0 10px !important;
    line-height: 45px;
    color: #333;
    border: 0 !important;
    display: block !important;
    transition: all 0.3s;
}
.header-bottom .navigation ul li.level0.active > a,
.header-bottom .navigation ul li.level0:hover > a {
    background: var(--color-primary);
    color: #fff;
}
.navigation .level0.parent > .level-top > .ui-menu-icon {
    right: 10px !important;
}
.header-bottom .navigation .submenu {
    width: 100%;
    left: 0 !important;
    right: 0 !important;
    border: 0 !important;
}
.header-bottom .navigation .submenu li.level1 {
    display: inline-block;
    width: calc(100% / 6);
    padding: 15px;
    text-align: center;
}
.header-bottom .navigation .submenu li.level1 a {
    font-weight: normal;
    line-height: 20px;
    font-size: 14px;
    background: none !important;
}
.header-bottom .navigation .submenu img {
    display: block;
    margin-bottom: 10px;
}


/* FOOTER */
.footer-content {
    background: var(--color-primary);
    padding: 30px 0;
}
.footer-content .flex-container {
    justify-content: space-between;
}
.footer-content .bloque {
    flex: 0 0 calc((100% / 6) - 30px);
}
.footer-content .bloque.newsletter {
    flex: 0 0 calc(((100% / 6) - 30px) * 2);
}
.footer-content .bloque .title {
    color: var(--color-secondary);
    font-weight: bold;
    margin-bottom: 5px;
}
.footer-content .links {
    margin: 0;
    padding: 0;
    list-style: none;
}
.footer-content .links li {
    margin-bottom: 0;
}
.footer-content .links li a {
    color: #fff;
    font-size: 13px;
}
.footer-content .newsletter input {
    line-height: 35px;
    height: 35px;
    margin-right: 1px;
    width: auto;
    flex: auto;
}
.footer-content .newsletter .subscribe {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.footer-content .newsletter .subscribe:hover {
    background: #333;
}
.footer-bottom .flex-container {
    align-items: center;
    justify-content: space-between;
    margin: 10px auto;
}
.footer-legacy .links {
    display: flex;
    margin: 0;
    align-items: center;
    padding: 0;
    list-style: none;
    text-align: center;
}
.footer-legacy li {
    margin: 0 0 0 15px;
}
.footer-legacy li:nth-child(1) {
    margin-left: 0;
}
.footer-legacy li.separator {
    height: 25px;
    width: 1px;
    background: var(--color-primary);
}
.footer-bottom .copyright {
    margin: 0;
}
.tlf-float {
    position: fixed;
    right: 15px;
    bottom: 20%;
    background: var(--color-secondary);
    padding: 10px;
    border-radius: 15px;
    text-align: center;
    color: #fff;
    line-height: 15px;
    z-index: 9999;
}
.tlf-float .fa-phone {
    display: block;
    margin: 0 auto 10px auto;
    font-size: 30px;
}
.tlf-float b {
    margin-top: 5px;
    display: inline-block;
}
#back_top {
    background: var(--color-secondary);
    bottom: 15px;
    display: block;
    height: 40px;
    position: fixed;
    right: 15px;
    width: 40px;
    line-height: 36px;
    z-index: 9999;
    cursor: pointer;
    border: 2px solid #fff;
    border-radius: 100%;
    text-align: center;
    font-size: 30px;
    color: #fff;
}

/* HOME */
.banner {
    position: relative;
    margin: 30px 0;
}
.banner img {
    display: block;
}
.banner .text {
    position: absolute;
    top: 30px;
    left: 30px;
    padding: 30px;
    background: var(--color-bg);
    max-width: 45%;
    width: 500px;
}
.banner .text p {
    margin: 0;
    font-size: 18px;
}
.banner .text .title {
    font-weight: bold;
    font-size: 22px;
    margin-bottom: 10px;
    margin-top: 10px;
}
.sticky.home {
    justify-content: space-between;
}
.sticky .block {
    flex: 0 0 calc((100% / 3) - 20px);
    padding: 30px;
    margin: 0;
}
.sticky .block.tutoriales {
    background: url('../images/acceso-carpintero-rufete.png') bottom right / 150px no-repeat var(--color-bg);
}
.sticky .block.ofertas {
    background: url('../images/acceso-descuento-rufete.png') bottom right / 150px no-repeat var(--color-bg);
}
.sticky .block.medida {
    background: url('../images/acceso-amedida-rufete.png') bottom right / 150px no-repeat var(--color-bg);
}
.sticky .title {
    font-weight: bold;
    color: var(--color-primary);
    margin-bottom: 10px;
}
.sticky .link {
    margin-top: 30px;
}
.sticky .link .icon {
    margin-left: 30px;
}
.texto-home {
    margin-top: 60px;
}
.texto-home h1 {
    font-size: 30px;
    font-weight: 500;
    margin: 0 0 15px 0;
}
.texto-home h2 {
    font-size: 23px;
    font-weight: 500;
    margin: 0 0 15px 0;
}
.product-block {
    margin-top: 60px;
    text-align: center;
}
.product-block .title {
    font-weight: 500;
    font-size: 23px;
}
.error-404 .product-block .title {
    display: none;
}

/* PRODUCT LIST */
.product-list {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + 30px);
    margin: 0 -15px;
}
.product-box {
    flex: 0 0 calc(25% - 30px);
    margin: 30px 15px 0 15px;
    padding: 10px;
    transition: all 0.3s;
    position: relative;
    overflow: hidden;
    text-align: center;
    border: 1px solid #ccc;
    text-decoration: none;
    color: initial !important;
}
.product-box:hover {
    text-decoration: none;
}
.product-box:hover .product-name {
    color: var(--color-primary);
}
.product-box .product-name {
    font-size: 14px;
    line-height: 20px;
    height: 40px;
    overflow: hidden;
    text-transform: uppercase;
}
.product-box .price-box {
    margin: 10px 0;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
}
.price-box .price-label {
    /* display: none !important; */
    font-weight: normal;
}
.price-box .old-price {
    order: -1;
    margin-right: 10px;
    font-weight: normal;
}
.price-box span {
    font-size: initial !important;
    line-height: initial !important;
}

/* TOOLBAR */
.toolbar-products {
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.toolbar-products .modes,
.toolbar-products:after,
.toolbar-products:before {
    display: none;
}
.toolbar-products > * {
    padding: 0;
}
.limiter-options,
.sorter-options {
    background: var(--color-bg);
    border: 0;
}
.limiter-text {
    display: none;
}
.product-list + .toolbar-products {
    justify-content: center;
    margin: 30px 0;
}
.page-products .toolbar .limiter {
    margin-left: auto;
    margin-right: 30px;
}
.product-list + .toolbar-products .pages,
.page-products .toolbar .limiter {
    display: block;
}
.product-list + .toolbar-products .toolbar-amount,
.product-list + .toolbar-products .limiter,
.product-list + .toolbar-products .sorter {
    display: none !important;
}
.pages-items {
    display: flex;
    align-items: center;
}
.pages-items .item {
    margin: 0;
}
.pages .action {
    background: var(--color-bg);
    border: 0;
}
.pages a.page,
.pages strong.page {
    color: #333;
    display: inline-block;
    padding: 0px 30px;
    text-decoration: none;
}
.pages a.page:hover {
    color: var(--color-primary);
}
.pages strong.page {
    color: var(--color-primary);
    font-size: 18px;
    font-weight: bold;
}

/* CATEGORY */
.page-products .page-title {
    margin-top: 0;
}
.category-description {
    margin: 0;
}
.category-description p:nth-last-child(1) {
    margin-bottom: 0;
}

/* FILTER */
.block.filter .filter-title,
.filter-options .filter-options-content {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #ccc;
}
.block.filter .filter-title strong {
    font-size: 16px;
    font-weight: normal;
}
.filter-content .block-subtitle {
    display: none;
}
@media (min-width: 1025px) {
    .block.filter .filter-content {
        display: block !important;
    }
}
.filter-options .filter-options-title {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 10px;
}
.filter-options .swatch-attribute-options {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
}
.filter-options .swatch-option-link-layered {
    width: calc(100% / 3);
}
.filter-options .swatch-option {
    width: calc(100% - 10px) !important;
    background-size: 100% !important;
}
.swatch-option-tooltip .image,
.swatch-option-tooltip-layered .image {
    height: 60px !important;
    width: 100px !important;
}

/* PRODUCTS */
.productos {
    display: flex;
    justify-content: space-between;
}
.product-media {
    flex: 0 0 60%;
    max-width: 60%;
    padding-right: 60px;
}
.product-datos {
    flex: 0 0 40%;
}
.productos .page-title {
    font-size: 25px;
    font-weight: 500;
    margin: 0 0 15px 0 !important;
    line-height: 36px !important;
    text-transform: uppercase;
}
.product-info-inventory {
    position: relative;
    padding-bottom: 5px;
    margin-bottom: 15px;
    border-bottom: 1px solid #ccc;
}
.productos .normal-price .price {
    color: var(--color-primary);
    font-size: 35px !important;
    font-weight: bold !important;
}
.product-info-stock-sku {
    position: absolute;
    right: 0;
    bottom: 10px;
    text-align: right;
}
.product.attribute {
    display: flex;
    align-items: center;
}
.product.attribute .value {
    margin-left: 5px;
}
.product-info-stock-sku .stock.available {
    color: #0bb876;
    text-transform: uppercase;
    font-weight: bold;
    display: block;
    margin: 0;
}
.productos .swatch-opt {
    margin: 0 !important;
}
.productos .swatch-attribute {
    margin-top: 30px;
}
.productos .swatch-attribute .swatch-attribute-options {
    margin-top: 0;
    display: flex;
    align-items: center;
    box-shadow: none;
    flex-wrap: wrap;
}
.productos .swatch-attribute-selected-option {
    display: none !important;
}
.productos .swatch-attribute .swatch-option.text {
    margin: 5px 5px 0 0;
    padding: 5px 15px;
    display: inline-block;
    min-width: initial;
    max-width: none;
    height: auto;
    border: 2px solid var(--color-bg);
    background: var(--color-bg);
    color: initial;
    white-space: nowrap;
}
.productos .swatch-attribute .swatch-option.color,
.productos .swatch-attribute .swatch-option.image {
    width: 80px !important;
    height: 40px !important;
    overflow: initial;
    margin: 5px 5px 0 0;
    position: relative;
    border: 2px solid var(--color-bg);
}
/* .productos .swatch-attribute .swatch-option.color:before,
.productos .swatch-attribute .swatch-option.image:before {
    content: '';
    background: var(--color-bg);
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
} */
.productos .swatch-attribute .swatch-option.color:before,
.productos .swatch-attribute .swatch-option.image:before {
    content: '';
    background: inherit;
    background-size: 100%;
    display: block;
    position: absolute;
    top: 5px;
    left: 8px;
    right: 8px;
    bottom: 5px;
}
.productos .swatch-attribute .swatch-option.text:not(.disabled):hover,
.productos .swatch-attribute .swatch-option.color:not(.disabled):hover,
.productos .swatch-attribute .swatch-option.selected {
    border: 2px solid var(--color-primary);
    outline: none;
}
.productos .swatch-attribute .swatch-option.text:not(.disabled):hover,
.productos .swatch-attribute .swatch-option.text.selected {
    background: var(--color-bg) !important;
}
.swatch-option.disabled {
    cursor: no-drop !important;
}
.product-info-main .box-tocart,
.product-options-bottom .box-tocart {
    margin: 30px 0;
    display: flex !important;
    /* flex-direction: column; */
    align-items: flex-end;
}
.box-tocart .qty .label {
    font-weight: bold;
}
.box-tocart .qty {
    padding: 0;
}
.productos .qty .control {
    margin-top: 5px;
    display: flex;
}
.productos .qty .control #qty {
    line-height: 30px;
    height: 50px;
    border-left: 0;
    border-right: 0;
    width: 50px;
    font-size: 18px;
    font-weight: 700;
}
.productos .btn-qty {
    height: 50px;
    padding: 16px;
    color: #fff;
    background: #666666;
    cursor: pointer;
    width: 50px;
}
.box-tocart .actions {
    padding-top: 15px;
}
.box-tocart .actions .tocart {
    width: 300px;
    height: 50px;
    max-width: 100%;
}
.adicional {
    padding-top: 30px;
    border-top: 1px solid #ccc;
    display: flex;
}
.adicional img {
    display: block;
    margin: auto;
}
.adicional .montaje {
    display: flex;
    align-items: flex-end;
    margin-right: 30px;
}
.adicional .montaje .text {
    background: var(--color-primary);
    padding: 5px 10px;
    color: #fff;
    white-space: nowrap;
    border-radius: 5px;
    display: flex;
    align-items: center;
}
.adicional .icon {
    font-size: 25px;
    margin-right: 10px;
}
.adicional .montaje span {
    font-weight: bold;
}
.adicional .rodapie .text {
    display: flex;
    align-items: center;
    margin-top: 15px;
}
.adicional .rodapie .icon {
    color: var(--color-primary);
}
.adicional .rodapie span {
    font-size: 12px;
    line-height: 14px;
    font-weight: 500;
}
.fotorama__thumb-border {
    border: 1px solid var(--color-primary) !important;
}
.product.info.detailed {
    margin-top: 60px;
}
.product.info.detailed .product.data.items .item.title {
    margin: 0;
    background: var(--color-bg);
    border: 1px solid #ccc;
    border-bottom: 0;
    border-left: 0;
}
.product.info.detailed .product.data.items .item.title:nth-child(1) {
    border-left: 1px solid #ccc;
}
.product.info.detailed .product.data.items .item.title .switch {
    padding: 0 30px;
    border: 0;
    line-height: 40px;
    height: 40px;
    font-weight: normal;
    color: inherit;
}
.product.info.detailed .product.data.items .item.title:hover {
    background: #fff;
}
.product.info.detailed .product.data.items .item.title.active {
    background: #fff;
    position: relative;
    z-index: 99;
}
.product.info.detailed .product.data.items .item.content {
    margin-top: 40px;
    border: 1px solid #ccc;
    z-index: 10;
    position: relative;
}
.product.attribute.description {
    font-size: 13px;
}
.additional-attributes {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    width: calc(100% + 60px) !important;
    margin: 0 -30px;
}
.additional-attributes .item {
    flex: 0 0 calc((100% / 3) - 60px);
    margin: 0 30px;
    border-bottom: 1px solid #ccc;
    margin-bottom: 10px;
    padding-bottom: 5px;
}
.additional-attributes .item .type,
.additional-attributes .item .value {
    flex: 0 0 50%;
}

/* CART */
.cart-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.cart-summary {
    order: 10;
    flex: 0 0 23%;
    width: 100% !important;
}
.form-cart {
    flex: 0 0 73%;
    width: 100% !important;
}
.cart-summary > .title {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 16px;
}
.cart-totals {
    font-size: 14px;
}
.cart-totals .grand .mark,
.cart-totals .grand .amount {
    padding: 8px 10px;
    padding-right: 4px;
    padding-left: 4px;
}
.cart-summary .checkout,
.checkout-payment-method .checkout {
    width: 100%;
}
.cart.table-wrapper .item .col {
    padding: 15px 10px !important;
}
.form-cart .action-delete {
    color: #ff0000;
}
.form-cart .cart.actions {
    display: flex;
    justify-content: space-between;
}
.cart-totals .amount {
    font-weight: bold;
}

/* REGISTER */
.login-container {
    display: flex;
    justify-content: space-between;
    /* align-items: flex-start; */
    margin: 30px 0;
    flex-wrap: wrap;
}
.login-container:after,
.login-container:before {
    display: none !important;
}
.login-container:after,
.login-container:before {
    display: none;
}
.login-container.account {
    margin: 0;
}
.login-container .customer-login {
    flex: 0 0 calc(50% - 30px);
    padding: 50px;
    background: var(--color-bg);
}
.login-container .customer-login.full {
    flex: 0 0 100%;
}
.login-container .block-title {
    font-weight: bold;
    text-transform: uppercase;
    font-size: 18px;
    margin-bottom: 15px;
    margin-top: 0;
    padding-bottom: 5px;
    border-bottom: 1px solid #ccc;
    color: var(--color-primary);
}
.login-container .block-title.second {
    margin-top: 30px;
}
.login-container .bottom {
    margin-bottom: 30px;
}

/* ACCOUNT */
.account-nav .content {
    margin-top: 30px;
}
.account-nav .item.current a,
.account-nav .item.current strong {
    border-color: var(--color-primary);
}
.account .block-title {
    position: relative;
}
.account .block-title strong {
    font-weight: bold !important;
    border-bottom: 1px solid #ccc;
    display: block;
    margin-top: 0;
    padding-bottom: 5px;
}
.account .block-title .edit,
.account .block-title .view {
    position: absolute;
    right: 0;
    top: 0;
}
.table-order-items.recent th:nth-child(1),
.table-order-items.recent td:nth-child(1) {
    padding-left: 0;
}
.table-order-items.recent th:nth-last-child(1),
.table-order-items.recent td:nth-last-child(1) {
    padding-right: 0;
}
.account .page.messages {
    margin-bottom: 0;
}

/* ORDER */
.order-details-items .order-title {
    display: none;
}
.table-order-items .col.name {
    padding-left: 0;
}
.page-main .block.block-order-details .order-date {
    padding-bottom: 15px;
}
.order-details-items tfoot th,
.order-details-items tfoot td {
    padding-top: 0;
    font-size: 14px;
}
.order-details-items tfoot th,
.order-details-items tfoot th * {
    font-weight: normal;
}
.order-details-items tfoot td,
.order-details-items tfoot td * {
    font-weight: bold;
}
.account .column.main .order-details-items {
    border-bottom: 0;
    margin-bottom: 0;
    background: var(--color-bg);
    padding: 15px;
}
#registration {
    border-color: var(--color-primary);
}
.sales-order-view .page-title-wrapper,
.sales-order-invoice .page-title-wrapper {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.sales-order-view .page-title-wrapper .page-title,
.sales-order-invoice .page-title-wrapper .page-title {
    flex: 0 0 100%;
}
.sales-order-view .order-status,
.sales-order-invoice .order-status {
    position: absolute;
    top: 30px;
    right: 0;
    margin: 0;
    line-height: 27px;
    padding: 0 10px;
    background: var(--color-primary);
    color: #fff;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 14px;
}
.sales-order-view .order-date,
.sales-order-view .order-actions-toolbar,
.sales-order-invoice .order-date,
.sales-order-invoice .order-actions-toolbar {
    padding: 15px 0;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.sales-order-view .order-actions-toolbar,
.sales-order-invoice .order-actions-toolbar {
    flex: auto;
    width: auto;
    display: flex;
    justify-content: flex-end;
}
.sales-order-view .order-links,
.sales-order-invoice .order-links,
.block-order-details-view .block-title {
    margin-top: 30px;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.account .order-details-items .table-order-items .items-qty .title {
    display: none;
}

/* CHECKOUT */
.opc-estimated-wrapper {
    display: none;
}
.checkout-index-index #checkout.am-checkout,
.checkout-index-index .checkout-header {
    margin: 0;
    padding: 0;
    background: none;
}
.checkout-index-index .checkout-header .title {
    font-size: 25px;
    line-height: 35px;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 30px;
    margin-top: 30px;
    display: inline-block;
    margin-right: 150px;
}
.checkout-index-index .checkout-header .title span {
    border-bottom: 2px solid var(--color-primary);
}
.checkout-header .description {
    display: none;
}
.checkout-index-index .checkout-block {
    margin: 0;
    background: var(--color-bg);
    box-shadow: none !important;
}
@media (min-width: 900px) {
    .checkout-index-index .opc-wrapper.am-opc-wrapper.layout-3-columns .checkout-column {
        flex: 0 0 calc((100% / 3) - 10px);
    }
    .checkout-index-index .opc-wrapper.am-opc-wrapper.layout-2-columns .checkout-column {
        flex: 0 0 calc((100% / 2) - 10px);
    }
}
.opc-wrapper .form-login {
    margin-bottom: 0;
    margin-top: 10px;
}
.opc-wrapper .form-shipping-address {
    margin-top: 0;
}
.table-checkout-shipping-method .col-carrier,
.table-checkout-shipping-method .col-price:nth-last-child(1) {
    display: none;
}
.checkout-shipping-address .form .field.street,
.billing-new-address-form .field.street {
    margin-bottom: 0 !important;
}
.checkout-index-index .opc-wrapper.am-opc-wrapper .discount-code .payment-option-title {
    display: none;
}
.checkout-payment-method .payment-option .payment-option-content {
    padding-left: 0;
    padding-right: 0;
    display: block !important;
}
.checkout-payment-method .payment-option,
.checkout-payment-method .payment-methods {
    margin: 0 !important;
}
.checkout-payment-method .step-title,
.checkout-payment-method .payment-method-title {
    padding-left: 0;
    padding-right: 0;
}
.checkout-payment-method .payment-option-inner {
    margin: 0 0 10px;
}
.form-discount .action-apply {
    margin-right: 0 !important;
}
.action-auth-toggle {
    padding: 5px 10px;
    background: whitesmoke;
    border: 1px solid #cccccc;
    border-radius: 5px;
    color: var(--color-primary);
    text-decoration: none !important;
    font-weight: bold;
    transition: all 0.3s;
}
.action-auth-toggle:hover {
    background: var(--color-primary);
    border: 1px solid var(--color-primary);
    color: #fff;
}
.checkout-payment-method .payment-methods .actions-toolbar .primary .action-cancel {
    order: -1;
}
.checkout-payment-method .payment-method._active .payment-method-content {
    padding: 0;
}
.checkout-billing-address {
    display: none;
}
.block-authentication .block-customer-login .actions-toolbar .secondary {
    order: -1;
    padding: 0;
}
.block-authentication .block-customer-login .actions-toolbar .secondary .action-remind {
    margin-top: 0;
    font-size: 14px;
}
.form-discount .actions-toolbar {
    justify-content: flex-end;
    margin-top: 5px !important;
}
.opc-wrapper .shipping-address-item.selected-item {
    border-color: var(--color-primary);
}
.opc-wrapper .shipping-address-item.selected-item:after {
    background: var(--color-primary);
}
.checkout-shipping-address .form-login .actions-toolbar {
    margin-top: 0 !important;
    margin-bottom: 30px !important;
}
.opc-block-summary .table-totals th,
.opc-block-summary .table-totals td {
    font-weight: normal !important;
    padding-top: 0 !important;
    padding-bottom: 10px !important;
    font-size: 14px;
    border: 0 !important;
}
.opc-block-summary .table-totals .totals-tax-details {
    border: 0;
}
.opc-block-summary .table-totals th,
.opc-block-summary .table-totals th * {
    font-weight: normal;
}
.opc-block-summary .table-totals td,
.opc-block-summary .table-totals td * {
    font-weight: bold;
}
.opc-block-summary .table-totals tr.shipping th .value {
    display: none;
}
.checkout-index-index #opc-shipping_method #checkout-shipping-method-load .table-checkout-shipping-method {
    max-width: none;
}

/* CMS */
.catalogos {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.catalogo {
    display: flex;
    align-items: flex-start;
    padding: 30px;
    background: #efefef;
    margin-bottom: 20px;
    flex: 0 0 calc(50% - 10px);
}
.catalogo img {
    width: 80px;
    height: auto;
    margin-right: 30px;
}
.catalogo .datos {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.catalogo .name {
    font-weight: bold;
}
.catalogo .texto {
    margin-top: 30px;
}
.login-container.nosotros,
.login-container .banner {
    margin-top: 0;
}
.login-container.nosotros .customer-login {
    margin: 30px 0;
}
.nosotros ul {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    margin-top: 30px;
}
.nosotros ul > li {
    flex: 0 0 calc(50% - 60px);
    margin: 0 30px 15px 30px;
}
.contact-index-index .icon {
    font-size: 14px;
    vertical-align: middle;
    margin-right: 5px;
    color: var(--color-primary);
}
.contact-index-index .top {
    margin-top: 30px;
}
.contact-index-index iframe {
    margin-top: 30px;
}

.page-product-configurable .message.notice {
    font-size: 30px;
}
.page-product-configurable .message.notice > *:first-child:before {
    font-size: 45px;
    top: 27px;
}
.elige-opciones {
    font-weight: bold;
    text-transform: uppercase;
    font-size: 16px;
    margin-top: 30px;
}
.elige-opciones + .swatch-opt .swatch-attribute {
    margin-top: 15px;
}
.fieldset {
    box-shadow: none !important;
}

#maincontent a#contentarea,
#gallery-next-area,
#shopping-cart-table .col.price,
#block-shipping {
    display: none !important;
}

/* Fix: tema Rufete .form .field .label pisa el hide de Magento → sale "Tooltip" */
.checkout-index-index .form .field .field-tooltip > .label,
.checkout-index-index .field-tooltip > .label {
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
}

/* Checkout: no subir "Iniciar sesión" encima del minicart (core usa margin-top:-60px) */
.checkout-index-index .authentication-wrapper {
    float: none !important;
    margin-top: 0 !important;
    margin-bottom: 12px;
    max-width: 100%;
    width: 100%;
    text-align: right;
    position: relative;
    z-index: 2;
}
.checkout-index-index .authentication-wrapper .action-auth-toggle {
    display: inline-block;
}


/* Rufete: ficha producto qty + tocart (Blank 2.4 override) */
.product-info-main .box-tocart,
.product-options-bottom .box-tocart {
    display: flex !important;
    align-items: flex-end !important;
    flex-wrap: wrap;
}
.product-info-main .box-tocart .field.qty,
.product-options-bottom .box-tocart .field.qty {
    padding-right: 15px;
    margin-bottom: 0 !important;
}
.product-info-main .box-tocart .actions,
.product-options-bottom .box-tocart .actions {
    display: block !important;
    padding-top: 0 !important;
    text-align: left !important;
}
.product-info-main .box-tocart .action.tocart,
.product-options-bottom .box-tocart .action.tocart,
.box-tocart .actions .tocart {
    width: 300px;
    height: 50px !important;
    max-width: 100%;
    padding: 0 20px !important;
    line-height: 50px !important;
    font-size: 18px !important;
    box-sizing: border-box;
    border-radius: 5px;
}
.productos .qty .control {
    margin-top: 5px;
    display: flex;
    align-items: stretch;
}
.productos .qty .control #qty,
.product-info-main .box-tocart .input-text.qty,
.product-options-bottom .box-tocart .input-text.qty {
    -moz-appearance: textfield;
    appearance: textfield;
    line-height: 48px;
    height: 50px !important;
    width: 50px !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 1px solid #c2c2c2;
    border-bottom: 1px solid #c2c2c2;
    border-radius: 0;
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    padding: 0 !important;
    box-sizing: border-box;
    margin: 0;
}
.productos .qty .control #qty::-webkit-outer-spin-button,
.productos .qty .control #qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.productos .btn-qty {
    height: 50px;
    width: 50px;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 0;
    color: #fff;
    background: #666666;
    cursor: pointer;
    font-size: 22px;
    font-weight: 700;
    line-height: 50px;
    text-align: center;
    box-sizing: border-box;
    flex-shrink: 0;
}
.productos .btn-qty:hover,
.productos .btn-qty:focus {
    background: #555;
    color: #fff;
}
