html.pack, html.pack body {
  overflow: hidden;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0;
  padding: 0;
  height: 100%; }

.select2-selection__rendered {
    line-height: 43px !important;
}
.select2-container .select2-selection--single {
    height: 47px !important;
	border-radius: 0;
}
.select2-selection__arrow {
    height: 46px !important;
}

body .caritas-checkout, body .blockUI {
  display: none; }

body.woocommerce-order-received .caritas-checkout {
  display: block; }

#top-bar ul {
  display: none; }

#shopping {
  font-family: 'Muli', sans-serif; }
  #shopping .header {
    background-position: center center;
    background-color: transparent;
    background-repeat: no-repeat;
    background-size: cover;
    height: 232px;
    position: relative;
    margin-top: -98px;
    z-index: 10; }
    #shopping .header .logo {
      position: relative;
      top: 44px;
      left: 67px; }
  #shopping .header-texts {
    padding: 0 50px;
    margin: 50px 0 25px;
    display: inline-block; }
    #shopping .header-texts .title {
      margin: 0 0 25px; }
      #shopping .header-texts .title span {
        font-size: 40px;
        font-weight: 800;
        line-height: 40px;
        color: #cc242d; }
  #shopping h2 {
    font-size: 24px;
    color: #cc242d; }
  #shopping h3 {
    font-size: 20px;
    color: #404040; }
  #shopping a {
    font-weight: 700;
    text-decoration: none;
    color: #cc242d; }
    #shopping a:hover {
      color: #424242;
      text-decoration: underline; }
  #shopping b, #shopping strong {
    font-weight: 800; }
  #shopping span {
    font-family: 'Muli', sans-serif;
    font-size: 14px; }
  #shopping label {
    font-family: 'Muli', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #9f9f9f; }
    #shopping label.selected {
      color: #404040;
      background-color: #cc242d !important; }
    #shopping label.checkbox.selected {
      background-color: transparent !important; }
  #shopping textarea {
    resize: none; }
  #shopping input, #shopping label {
    overflow: hidden;
    -webkit-transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
    -moz-transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
    -o-transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
    transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out; }
  #shopping label, #shopping .sentence {
    margin-top: 10px; }
    #shopping label.error, #shopping .sentence.error {
      color: #cc242d; }
  #shopping .sentence span {
    font-size: 16px; }
  #shopping .sub-sentence {
    margin-top: 5px; }
    #shopping .sub-sentence span {
      font-size: 14px; }
  #shopping input[type="radio"] {
    display: none; }
  #shopping input[type="submit"] {
    font-size: 14px;
    font-weight: 900;
    font-family: 'Muli', sans-serif;
    color: #ffffff;
    border: none;
    background-color: transparent;
    width: 100%;
    padding: 17px 10px; }
  #shopping input[type="text"], #shopping input[type="date"], #shopping input[type="email"], #shopping input[type="password"], #shopping input[type="number"], #shopping input[type="tel"], #shopping textarea, #shopping select, #shopping .ui-autocomplete-input {
    position: relative;
    z-index: 11;
    width: 100%;
    display: block;
    background: transparent;
    color: #404040;
    outline: rgba(255, 255, 255, 0);
    padding: 15px 26px;
    font-family: 'Muli', sans-serif;
    font-weight: 700;
    font-size: 14px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: solid 1px #9f9f9f;
    border-radius: 0; }
    #shopping input[type="text"].error, #shopping input[type="date"].error, #shopping input[type="email"].error, #shopping input[type="password"].error, #shopping input[type="number"].error, #shopping input[type="tel"].error, #shopping textarea.error, #shopping select.error, #shopping .ui-autocomplete-input.error {
      border-color: #cc242d; }
  #shopping input::-webkit-input-placeholder, #shopping textarea::-webkit-input-placeholder {
    color: #9f9f9f;
    font-weight: 700; }
  #shopping input:-moz-placeholder, #shopping textarea:-moz-placeholder {
    color: #9f9f9f;
    font-weight: 700; }
  #shopping input::-moz-placeholder, #shopping textarea::-moz-placeholder {
    color: #9f9f9f;
    font-weight: 700; }
  #shopping input:-ms-input-placeholder, #shopping textarea:-ms-input-placeholder {
    color: #9f9f9f;
    font-weight: 700; }
  #shopping .separator, #shopping .separator-little {
    clear: both; }
  #shopping .separator {
    height: 45px; }
  #shopping .separator-little {
    height: 15px; }
  #shopping .button {
    display: table;
    font-size: 12px;
    font-weight: 800;
    background-color: #e8e6e6;
    text-transform: Uppercase;
    text-align: center;
    padding: 15px 10px;
    color: #404040; }
    #shopping .button:hover, #shopping .button.selected {
      background-color: #cc242d;
      cursor: pointer; }
      #shopping .button:hover span, #shopping .button:hover .name, #shopping .button.selected span, #shopping .button.selected .name {
        color: #ffffff; }
    #shopping .button.submit {
      padding: 0; }
      #shopping .button.submit:hover {
        background-color: #404040 !important; }
    #shopping .button span {
      font-size: 12px;
      color: #404040; }
  #shopping .label-legal a, #shopping .label-legal a:visited {
    text-decoration: underline;
    color: #9f9f9f; }
  #shopping .label-legal a:hover {
    color: #424242; }
  #shopping .label-legal.error a, #shopping .label-legal.error a:visited {
    color: #cd222d; }
  #shopping .label-legal.error a:hover {
    color: #424242; }
  #shopping .label-legal.selected a, #shopping .label-legal.selected a:visited {
    color: #424242; }
  #shopping .label-legal.selected a:hover {
    color: #9f9f9f; }
  #shopping .label-mass {
    width: 33% !important; }
  #shopping .checker {
    background: transparent;
    border: none;
    width: 25px;
    height: 25px; }
    #shopping .checker div.checker {
      border: solid 1px #9f9f9f; }
  #shopping .radio {
    background-color: transparent;
    border: 1px solid;
    width: 20px;
    height: 20px; }
    #shopping .radio .checked {
      width: 11px;
      height: 11px;
      margin-top: -5px;
      margin-left: -5px; }
  #shopping .loader {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    max-width: 750px;
    height: 100%;
    z-index: 1003; }
    #shopping .loader .background {
      position: absolute;
      top: 0;
      left: 0;
      background-color: white;
      width: 100%;
      height: 100%; }
    #shopping .loader .animation {
      position: absolute;
      width: 90%;
      max-width: 440px;
      text-align: center;
      padding: 80px;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      -webkit-transform: translateY(-50%, -50%); }
      #shopping .loader .animation img {
        width: 100px;
        height: 100px; }
    #shopping .loader.transparent .background {
      background-color: rgba(255, 255, 255, 0.8); }
  #shopping .cart-alert {
    display: none;
    position: fixed;
    font-size: 14px;
    z-index: 1001;
    padding: 15px 30px;
    right: 20px;
    top: 200px;
    max-width: 430px;
    background-color: rgba(64, 64, 64, 0.9);
    color: #ffffff; }
    #shopping .cart-alert a, #shopping .cart-alert a:visited {
      color: #ffffff;
      text-decoration: none; }
      #shopping .cart-alert a a:hover, #shopping .cart-alert a:visited a:hover {
        cursor: pointer;
        text-decoration: underline; }
    #shopping .cart-alert .icon {
      font-size: 12px; }
      #shopping .cart-alert .icon:before {
        display: inline-block;
        content: 's';
        font-family: 'caritas';
        font-size: 16px;
        margin: 0 3px 0 8px;
        position: relative;
        top: 3px; }
  #shopping .shopping-container {
    display: none;
    z-index: 1000;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(255, 255, 255, 0.5);
    padding: 0;
    margin: 0; }
    #shopping .shopping-container .shopping-container-wrapper {
      position: absolute;
      height: 100%;
      width: 100%; }
      #shopping .shopping-container .shopping-container-wrapper .container-steps {
        width: 100%;
        height: 100%;
        max-width: 750px;
        position: absolute;
        right: -750px;
        -webkit-transition: right 0.6s ease-out;
        -moz-transition: right 0.6s ease-out;
        -o-transition: right 0.6s ease-out;
        transition: right 0.6s ease-out;
        -webkit-box-shadow: -1px 0px 8px 1px rgba(0, 0, 0, 0.1);
        -moz-box-shadow: -1px 0px 8px 1px rgba(0, 0, 0, 0.1);
        box-shadow: -1px 0px 8px 1px rgba(0, 0, 0, 0.1);
        background-color: #ffffff;
        overflow: hidden; }
        #shopping .shopping-container .shopping-container-wrapper .container-steps.expand {
          max-width: 100%; }
          #shopping .shopping-container .shopping-container-wrapper .container-steps.expand .steps .step {
            max-width: 100%; }
        #shopping .shopping-container .shopping-container-wrapper .container-steps.opened {
          overflow-x: hidden;
          overflow-y: scroll;
          -webkit-overflow-scrolling: touch;
          right: 0; }
        #shopping .shopping-container .shopping-container-wrapper .container-steps.loading {
          overflow-y: hidden !important; }
        #shopping .shopping-container .shopping-container-wrapper .container-steps .steps .step {
          width: 100%;
          max-width: 750px;
          padding: 69px;
          position: absolute;
          background-color: #ffffff;
          right: 0;
          -webkit-transition: right 0.3s ease-out, max-width 0.3s ease-out;
          -moz-transition: right 0.3s ease-out, max-width 0.3s ease-out;
          -o-transition: right 0.3s ease-out, max-width 0.3s ease-out;
          transition: right 0.3s ease-out, max-width 0.3s ease-out; }
          #shopping .shopping-container .shopping-container-wrapper .container-steps .steps .step.closed {
            right: -100%; }
        #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation {
          position: relative;
          overflow: hidden;
          width: 100%;
          padding: 40px 30px 20px;
          z-index: 11; }
          #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation .prev, #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation .close {
            display: inline-block;
            color: #cc242d;
            float: right;
            text-transform: Uppercase;
            font-size: 14px;
            font-weight: 800;
            width: 40px;
            height: 40px;
            position: relative;
            text-align: center; }
            #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation .prev:hover, #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation .close:hover {
              cursor: pointer;
              color: #424242; }
            #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation .prev:before, #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation .prev:after, #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation .close:before, #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation .close:after {
              position: absolute;
              text-transform: none;
              font-family: 'caritas';
              font-size: 25px;
              line-height: 35px;
              top: 3px;
              left: 7px; }
          #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation .prev {
            display: none;
            margin-right: 34px;
            width: 100px;
            padding-right: 10px;
            text-align: right;
            line-height: 40px; }
            #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation .prev:before {
              content: 'y';
              right: auto;
              left: 4px;
              width: 23px;
              line-height: 40px; }
          #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation .close {
            background-color: #ffffff; }
            #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation .close:before {
              content: 'D'; }
        #shopping .shopping-container .shopping-container-wrapper .container-steps .form-error, #shopping .shopping-container .shopping-container-wrapper .container-steps .account-exists, #shopping .shopping-container .shopping-container-wrapper .container-steps .dni-exists {
          display: none;
          position: fixed;
          top: 0;
          right: 0;
          width: 100%;
          max-width: 750px;
          height: 100%;
          z-index: 50; }
          #shopping .shopping-container .shopping-container-wrapper .container-steps .form-error .background, #shopping .shopping-container .shopping-container-wrapper .container-steps .account-exists .background, #shopping .shopping-container .shopping-container-wrapper .container-steps .dni-exists .background {
            position: absolute;
            top: 0;
            left: 0;
            background-color: rgba(255, 255, 255, 0.8);
            width: 100%;
            height: 100%; }
          #shopping .shopping-container .shopping-container-wrapper .container-steps .form-error .message, #shopping .shopping-container .shopping-container-wrapper .container-steps .account-exists .message, #shopping .shopping-container .shopping-container-wrapper .container-steps .dni-exists .message {
            position: absolute;
            width: 90%;
            max-width: 440px;
            text-align: center;
            background-color: #ffffff;
            padding: 80px;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            -webkit-transform: translateY(-50%, -50%);
            -webkit-box-shadow: 0px 0px 20px 1px rgba(0, 0, 0, 0.1);
            -moz-box-shadow: 0px 0px 20px 1px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 0px 20px 1px rgba(0, 0, 0, 0.1); }
        #shopping .shopping-container .shopping-container-wrapper .container-steps .account-exists, #shopping .shopping-container .shopping-container-wrapper .container-steps .dni-exists {
          z-index: 49; }
          #shopping .shopping-container .shopping-container-wrapper .container-steps .account-exists .message, #shopping .shopping-container .shopping-container-wrapper .container-steps .dni-exists .message {
            padding: 10px 10px 30px; }
            #shopping .shopping-container .shopping-container-wrapper .container-steps .account-exists .message .navigation, #shopping .shopping-container .shopping-container-wrapper .container-steps .dni-exists .message .navigation {
              padding: 10px;
              margin: 0 0 20px; }
              #shopping .shopping-container .shopping-container-wrapper .container-steps .account-exists .message .navigation .close:before, #shopping .shopping-container .shopping-container-wrapper .container-steps .dni-exists .message .navigation .close:before {
                font-size: 25px; }
            #shopping .shopping-container .shopping-container-wrapper .container-steps .account-exists .message .button, #shopping .shopping-container .shopping-container-wrapper .container-steps .dni-exists .message .button {
              display: inline-block;
              padding: 15px 20px;
              margin-top: 20px; }
              #shopping .shopping-container .shopping-container-wrapper .container-steps .account-exists .message .button:hover, #shopping .shopping-container .shopping-container-wrapper .container-steps .dni-exists .message .button:hover {
                color: #ffffff; }
        #shopping .shopping-container .shopping-container-wrapper .container-steps .dni-exists .message .button {
          display: block !important; }

@media screen and (max-width: 768px) {
  #shopping input[type="text"], #shopping input[type="date"], #shopping input[type="email"], #shopping input[type="password"], #shopping input[type="number"], #shopping input[type="tel"], #shopping textarea {
    font-size: 16px; }
  #shopping .button:hover {
    color: #404040 !important;
    background-color: #e8e6e6 !important; }
    #shopping .button:hover span, #shopping .button:hover .name {
      color: #404040 !important; }
  #shopping .button.submit:hover {
    color: #404040 !important;
    background-color: #cc242d !important; }
  #shopping .button.selected:hover {
    color: #404040 !important;
    background-color: #cc242d !important; }
    #shopping .button.selected:hover span, #shopping .button.selected:hover .name {
      color: #ffffff !important; }
  #shopping .separator {
    height: 15px; }
  #shopping .separator-little {
    height: 5px; }
  #shopping .shopping-container .shopping-container-wrapper .container-steps .navigation {
    padding: 20px 30px 10px; }
  #shopping .shopping-container .shopping-container-wrapper .container-steps .steps .step {
    padding: 20px; }
  #shopping label {
    position: relative; }
    #shopping label.checkbox {
      height: 41px; }
      #shopping label.checkbox > span {
        margin-left: 5px;
        position: absolute;
        top: -1px; } }

#shopping #form-cart {
  display: none;
  padding: 0 69px 20px; }
  #shopping #form-cart .header-texts {
    margin: 10px 0 0;
    display: inline-block; }
    #shopping #form-cart .header-texts .title {
      margin: 0 0 25px; }
      #shopping #form-cart .header-texts .title span {
        font-size: 40px;
        font-weight: 800;
        line-height: 40px;
        color: #cc242d; }
  #shopping #form-cart .container-donations, #shopping #form-cart .container-products {
    clear: both;
    margin: 43px 0 0; }
    #shopping #form-cart .container-donations .title, #shopping #form-cart .container-products .title {
      color: #cc242d;
      font-size: 24px;
      font-weight: 800;
      line-height: 31px;
      padding: 0 0 0 15px;
      margin: 0 0 10px; }
    #shopping #form-cart .container-donations ul, #shopping #form-cart .container-products ul {
      list-style: none;
      padding: 0;
      margin: 0; }
      #shopping #form-cart .container-donations ul li, #shopping #form-cart .container-products ul li {
        border-bottom: 1px solid #cecece;
        overflow: hidden;
        padding: 22px 0 7px 10px;
        max-height: 200px;
        -webkit-transition: max-height 0.7s ease-out, opacity 0.3s ease-out;
        -moz-transition: max-height 0.7s ease-out, opacity 0.3s ease-out;
        -o-transition: max-height 0.7s ease-out, opacity 0.3s ease-out;
        transition: max-height 0.7s ease-out, opacity 0.3s ease-out; }
        #shopping #form-cart .container-donations ul li.removed, #shopping #form-cart .container-products ul li.removed {
          max-height: 0; }
        #shopping #form-cart .container-donations ul li h3, #shopping #form-cart .container-products ul li h3 {
          margin: 0 0 3px; }
          #shopping #form-cart .container-donations ul li h3 span.periodicity, #shopping #form-cart .container-products ul li h3 span.periodicity {
            font-weight: 400;
            font-size: 13px; }
        #shopping #form-cart .container-donations ul li p, #shopping #form-cart .container-products ul li p {
          margin: 0;
          min-height: 20px; }
        #shopping #form-cart .container-donations ul li .item-amount, #shopping #form-cart .container-products ul li .item-amount {
          text-align: right;
          font-size: 34px;
          font-weight: 700;
          line-height: 36px; }
          #shopping #form-cart .container-donations ul li .item-amount .quantity, #shopping #form-cart .container-products ul li .item-amount .quantity {
            font-size: 15px;
            font-weight: 100;
            margin: 0 10px 0 0; }
            #shopping #form-cart .container-donations ul li .item-amount .quantity .number, #shopping #form-cart .container-products ul li .item-amount .quantity .number {
              font-size: 20px; }
          #shopping #form-cart .container-donations ul li .item-amount .amount, #shopping #form-cart .container-products ul li .item-amount .amount {
            font-size: 30px; }
        #shopping #form-cart .container-donations ul li .item-delete, #shopping #form-cart .container-products ul li .item-delete {
          display: inline-block;
          text-align: center;
          font-family: 'caritas';
          font-size: 20px;
          line-height: 35px;
          color: #424242; }
          #shopping #form-cart .container-donations ul li .item-delete:hover, #shopping #form-cart .container-products ul li .item-delete:hover {
            cursor: pointer;
            color: #cc242d; }
          #shopping #form-cart .container-donations ul li .item-delete:after, #shopping #form-cart .container-products ul li .item-delete:after {
            content: 'D'; }
  #shopping #form-cart .disclaimer {
    display: none;
    clear: both;
    padding: 17px 0;
    font-size: 14px; }

@media screen and (max-width: 768px) {
  #shopping .separator {
    height: 15px; }
  #shopping .separator-little {
    height: 5px; }
  #shopping #form-cart {
    padding: 0 10px 20px; }
    #shopping #form-cart .container-donations,
    #shopping #form-cart .container-products {
      margin: 20px 0 0; }
      #shopping #form-cart .container-donations .title,
      #shopping #form-cart .container-products .title {
        padding: 0 0 0 5px;
        margin: 0; }
      #shopping #form-cart .container-donations ul li,
      #shopping #form-cart .container-products ul li {
        position: relative;
        padding: 20px 0 7px 5px; }
        #shopping #form-cart .container-donations ul li h3,
        #shopping #form-cart .container-products ul li h3 {
          font-size: 16px; }
        #shopping #form-cart .container-donations ul li .item-delete,
        #shopping #form-cart .container-products ul li .item-delete {
          position: absolute;
          text-align: right;
          right: 3px;
          top: 23px; }
        #shopping #form-cart .container-donations ul li .item-amount,
        #shopping #form-cart .container-products ul li .item-amount {
          font-size: 20px; }
          #shopping #form-cart .container-donations ul li .item-amount .quantity,
          #shopping #form-cart .container-products ul li .item-amount .quantity {
            font-size: 10px; }
            #shopping #form-cart .container-donations ul li .item-amount .quantity .number,
            #shopping #form-cart .container-products ul li .item-amount .quantity .number {
              font-size: 15px; }
        #shopping #form-cart .container-donations ul li .default-module-grid--twelve__a-7,
        #shopping #form-cart .container-products ul li .default-module-grid--twelve__a-7 {
          width: calc(60% - 6px);
          margin: 3px 0 0 3px; }
        #shopping #form-cart .container-donations ul li .default-module-grid--twelve__a-3,
        #shopping #form-cart .container-products ul li .default-module-grid--twelve__a-3 {
          width: calc(30% - 6px);
          margin: 3px 0 0 3px; } }

input[type="date"]:not(.hasDatepicker):before {
  content: attr(placeholder) !important;
  color: #aaa;
  margin-right: 0.5em; }

input[type="date"]:not(.hasDatepicker):focus:before,
input[type="date"]:not(.hasDatepicker):valid:before {
  content: ""; }

.ui-autocomplete {
  z-index: 10000 !important;
  position: relative !important;
  top: 0 !important;
  left: 0 !important; }

.ui-autocomplete-input {
  width: 100%; }

.ui-menu {
  padding: 10px 0 !important; }
  .ui-menu .ui-menu-item {
    font-family: 'Muli', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px;
    padding: 3px 25px;
    color: #404040; }

.blockUI.blockOverlay {
  opacity: 1 !important; }

.blockUI.blockMsg {
  display: none !important; }

#shopping #form-checkout {
  display: none;
  padding: 20px 69px; }
  #shopping #form-checkout .treatment > span {
    font-size: 13px;
    display: block;
    top: 24px;
    position: relative;
    color: #9f9f9f; }
  #shopping #form-checkout .treatment > label {
    top: 14px;
    position: relative; }
  #shopping #form-checkout .login {
    position: relative;
    z-index: 12;
    display: none;
    text-align: right;
    font-size: 14px;
    margin: -64px 0 0px;
    float: left; }
    #shopping #form-checkout .login:before {
      content: 'z';
      display: inline-block;
      font-family: 'caritas';
      font-size: 25px;
      color: #424242;
      vertical-align: -7px;
      padding: 0 8px 0; }
  #shopping #form-checkout form .user-data {
    display: none; }
    #shopping #form-checkout form .user-data .whoami-container-particular, #shopping #form-checkout form .user-data .whoami-container-company {
      display: none; }
  #shopping #form-checkout form .relief {
    width: 100%;
    overflow: hidden; }
    #shopping #form-checkout form .relief.hide-address {
      display: none !important; }
  #shopping #form-checkout form .label-account_password, #shopping #form-checkout form .label-relief_state {
    display: none;
    max-height: 0; }
  #shopping #form-checkout form .label-extra-billing_position {
    position: relative; }
    #shopping #form-checkout form .label-extra-billing_position:after {
      content: 'C';
      font-family: "caritas" !important;
      font-style: normal !important;
      font-weight: normal !important;
      font-variant: normal !important;
      text-transform: none !important;
      speak: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      position: absolute;
      right: 15px;
      top: 20px;
      z-index: 10; }
  #shopping #form-checkout form .user-bank-account {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.3s ease-out, opacity 0.3s ease-out;
    -moz-transition: max-height 0.3s ease-out, opacity 0.3s ease-out;
    -o-transition: max-height 0.3s ease-out, opacity 0.3s ease-out;
    transition: max-height 0.3s ease-out, opacity 0.3s ease-out; }
  #shopping #form-checkout form .billing .social-action-header {
    display: none; }
  #shopping #form-checkout form .responsability {
    clear: both; }
    #shopping #form-checkout form .responsability p {
      line-height: 13px;
      font-size: 11px;
      padding: 5px;
      position: relative;
      top: 20px;
      text-align: center; }

@media screen and (max-width: 768px) {
  #shopping #form-checkout {
    padding: 20px 10px; }
    #shopping #form-checkout .login {
      margin: 15px 0; }
    #shopping #form-checkout .form .button.label-payment_method {
      display: block;
      padding: 0;
      height: 59px; }
      #shopping #form-checkout .form .button.label-payment_method span {
        position: relative;
        top: 50%;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        text-align: center;
        font-family: 'Muli', sans-serif;
        font-weight: 800;
        font-size: 12px;
        display: block; }
    #shopping #form-checkout .form .button.default-module-grid--twelve__a-6 {
      width: calc(50% - 7.5px);
      float: left;
      margin-left: 5px; }
    #shopping #form-checkout .form .default-module-grid--twelve__a-4 {
      width: calc(33.33333% - 6.66667px);
      float: left;
      margin-left: 5px; }
    #shopping #form-checkout .treatment {
      height: 55px; } }

#shopping #form-donate {
  display: none;
  padding: 0 0 30px; }
  #shopping #form-donate .header .logo {
    width: 140px;
    height: 140px;
    background-color: #cd222d; }
  #shopping #form-donate .form {
    padding: 0 50px; }
    #shopping #form-donate .form .label-donation_amount, #shopping #form-donate .form .label-donation_periodicity, #shopping #form-donate .form .label-donation_purpose {
      text-align: center;
      color: #3d3d3d;
      background-color: #e8e6e7;
      height: 81px;
      display: inline-block;
      padding: 0 15px; }
      #shopping #form-donate .form .label-donation_amount > span, #shopping #form-donate .form .label-donation_periodicity > span, #shopping #form-donate .form .label-donation_purpose > span {
        display: block;
        width: 100%;
        position: relative;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        text-align: center;
        font-family: 'Muli', sans-serif;
        font-weight: 800;
        font-size: 12px;
        display: block; }
        #shopping #form-donate .form .label-donation_amount > span .number, #shopping #form-donate .form .label-donation_periodicity > span .number, #shopping #form-donate .form .label-donation_purpose > span .number {
          display: block;
          font-size: 40px;
          font-weight: 700;
          line-height: 34px; }
      #shopping #form-donate .form .label-donation_amount.checked, #shopping #form-donate .form .label-donation_amount:hover, #shopping #form-donate .form .label-donation_periodicity.checked, #shopping #form-donate .form .label-donation_periodicity:hover, #shopping #form-donate .form .label-donation_purpose.checked, #shopping #form-donate .form .label-donation_purpose:hover {
        color: white;
        background-color: #ce222e; }
    #shopping #form-donate .form .label-donation_periodicity.hazte-socio.default-module-grid--twelve__a-4 {
      width: calc(50% - 8px);
      margin-left: 5px; }
    #shopping #form-donate .form .label-donation_periodicity.hazte-socio.default-module-grid--twelve__a-3 {
      width: calc(33.33333% - 6.66667px);
      margin-left: 5px; }
    #shopping #form-donate .form .label-donation_purpose {
      padding: 0;
      height: 140px; }
      #shopping #form-donate .form .label-donation_purpose .image {
        background-size: cover;
        background-position: center center;
        background-color: transparent;
        height: 83px;
        display: block; }
      #shopping #form-donate .form .label-donation_purpose .name-container {
        position: relative;
        height: 56px; }
        #shopping #form-donate .form .label-donation_purpose .name-container .name {
          position: relative;
          font-weight: 800;
          line-height: initial;
          top: 50%;
          transform: translateY(-50%);
          -webkit-transform: translateY(-50%);
          padding: 0 10px; }
    #shopping #form-donate .form .label-donation_custom_amount, #shopping #form-donate .form .label-donation_custom_periodicity {
      max-height: 0;
      overflow: hidden;
      -webkit-transition: max-height 0.5s ease-out, opacity 0.3s ease-out;
      -moz-transition: max-height 0.5s ease-out, opacity 0.3s ease-out;
      -o-transition: max-height 0.5s ease-out, opacity 0.3s ease-out;
      transition: max-height 0.5s ease-out, opacity 0.3s ease-out; }
    #shopping #form-donate .form .label-donation_custom_periodicity {
      position: relative; }
      #shopping #form-donate .form .label-donation_custom_periodicity:after {
        content: 'C';
        font-family: "caritas" !important;
        font-style: normal !important;
        font-weight: normal !important;
        font-variant: normal !important;
        text-transform: none !important;
        speak: none;
        line-height: 1;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        position: absolute;
        right: 15px;
        top: 20px; }
    #shopping #form-donate .form .purpose-containers {
      position: relative;
      overflow: hidden; }
      #shopping #form-donate .form .purpose-containers .purpose-container-select {
        position: relative;
        max-height: 0;
        margin-top: -140px;
        overflow: hidden;
        -webkit-transition: max-height 0.7s ease-out, margin-top 0.7s ease-out, opacity 0.3s ease-out;
        -moz-transition: max-height 0.7s ease-out, margin-top 0.7s ease-out, opacity 0.3s ease-out;
        -o-transition: max-height 0.7s ease-out, margin-top 0.7s ease-out, opacity 0.3s ease-out;
        transition: max-height 0.7s ease-out, margin-top 0.7s ease-out, opacity 0.3s ease-out; }
        #shopping #form-donate .form .purpose-containers .purpose-container-select:after {
          content: 'C';
          font-family: "caritas" !important;
          font-style: normal !important;
          font-weight: normal !important;
          font-variant: normal !important;
          text-transform: none !important;
          speak: none;
          line-height: 1;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          position: absolute;
          right: 15px;
          top: 20px; }
        #shopping #form-donate .form .purpose-containers .purpose-container-select.search_postalcode_input:after {
          content: ''; }
        #shopping #form-donate .form .purpose-containers .purpose-container-select.search_postalcode_input input, #shopping #form-donate .form .purpose-containers .purpose-container-select.search_postalcode_input button {
          display: inline-block; }
        #shopping #form-donate .form .purpose-containers .purpose-container-select.search_postalcode_input input {
          width: 60%;
          float: left;
          margin-left: 0;
          margin-right: 5px; }
        #shopping #form-donate .form .purpose-containers .purpose-container-select.search_postalcode_input .button {
          width: calc( 40% - 5px); }
        #shopping #form-donate .form .purpose-containers .purpose-container-select.search_postalcode_list {
          display: none; }
        #shopping #form-donate .form .purpose-containers .purpose-container-select.open {
          max-height: 140px;
          margin-top: 0; }
        #shopping #form-donate .form .purpose-containers .purpose-container-select .sub-selector-container {
          position: relative; }
          #shopping #form-donate .form .purpose-containers .purpose-container-select .sub-selector-container:before {
            content: 'C';
            font-family: "caritas" !important;
            font-style: normal !important;
            font-weight: normal !important;
            font-variant: normal !important;
            text-transform: none !important;
            speak: none;
            line-height: 1;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            position: absolute;
            right: 15px;
            z-index: 1;
            top: 20px; }
          #shopping #form-donate .form .purpose-containers .purpose-container-select .sub-selector-container .sub-selector {
            position: relative;
            margin-top: -70px;
            -webkit-transition: max-height 0.5s ease-out, margin-top 0.5s ease-out, opacity 0.3s ease-out;
            -moz-transition: max-height 0.5s ease-out, margin-top 0.5s ease-out, opacity 0.3s ease-out;
            -o-transition: max-height 0.5s ease-out, margin-top 0.5s ease-out, opacity 0.3s ease-out;
            transition: max-height 0.5s ease-out, margin-top 0.5s ease-out, opacity 0.3s ease-out; }
            #shopping #form-donate .form .purpose-containers .purpose-container-select .sub-selector-container .sub-selector.open {
              margin-top: 0; }

@media screen and (max-width: 768px) {
  #shopping #form-donate .header {
    height: 150px; }
    #shopping #form-donate .header .logo {
      position: relative;
      width: 75px;
      height: auto;
      top: 50px;
      left: 20px; }
  #shopping #form-donate .header-texts {
    padding: 0 10px;
    margin: 20px 0 10px; }
    #shopping #form-donate .header-texts .title {
      width: 100%;
      margin: 0 0 5px; }
      #shopping #form-donate .header-texts .title span {
        font-size: 25px;
        line-height: 29px; }
    #shopping #form-donate .header-texts .sentence {
      display: none;
      margin: 5px 0 0; }
  #shopping #form-donate .form {
    padding: 0 10px; }
    #shopping #form-donate .form .default-module-grid--twelve__a-cols-five,
    #shopping #form-donate .form .default-module-grid--twelve__a-3 {
      width: calc(50% - 6px);
      margin: 3px 0 0 3px; }
    #shopping #form-donate .form .label-donation_periodicity {
      height: 56px;
      padding: 0 5px; }
      #shopping #form-donate .form .label-donation_periodicity .name {
        font-size: 10px; }
    #shopping #form-donate .form .label-donation_purpose {
      height: auto; }
      #shopping #form-donate .form .label-donation_purpose .image {
        display: none; }
    #shopping #form-donate .form .purpose-containers .purpose-container-select.search_postalcode_input input {
      width: 70%;
      margin-right: 5px;
      font-size: 14px; }
    #shopping #form-donate .form .purpose-containers .purpose-container-select.search_postalcode_input .button {
      width: calc( 30% - 5px); } }

#shopping #form-login {
  display: none; }
  #shopping #form-login .sentence.lost-password, #shopping #form-login .sentence.register {
    text-align: right; }

#shopping #form-payment {
  display: none;
  height: 100%;
  overflow: hidden;
  padding: 0;
  top: 0; }
  #shopping #form-payment iframe {
    width: 100%;
    height: 100%;
    border: none; }

#shopping #form-register {
  display: none;
  padding: 20px 69px; }
  #shopping #form-register .header-texts {
    display: block;
    padding: 0; }
    #shopping #form-register .header-texts .title {
      padding: 0 0 0 5px; }
  #shopping #form-register .treatment > span {
    font-size: 13px;
    display: block;
    top: 24px;
    position: relative;
    color: #9f9f9f; }
  #shopping #form-register .treatment > label {
    top: 14px;
    position: relative; }
  #shopping #form-register .label-communications {
    margin-bottom: 30px; }
  #shopping #form-register .g-recaptcha {
    clear: both;
    margin: 10px auto;
    max-width: 303px; }

@media screen and (max-width: 768px) {
  #shopping #form-register {
    padding: 20px 10px; }
    #shopping #form-register .treatment {
      height: 55px; } }

#shopping #form-resetpassword {
  display: none;
  padding: 0 0 30px; }
  #shopping #form-resetpassword .header .logo {
    width: 140px;
    height: 140px;
    background-color: #cd222d; }
  #shopping #form-resetpassword .header-texts {
    display: block; }
    #shopping #form-resetpassword .header-texts .title {
      padding: 0 0 0 5px; }
  #shopping #form-resetpassword .form {
    padding: 0 50px; }

@media screen and (max-width: 768px) {
  #shopping #form-resetpassword {
    padding: 20px 10px; }
    #shopping #form-resetpassword .treatment {
      height: 55px; } }
