#calculateur-volume {
  margin-bottom: 100px; }
  #calculateur-volume .col-cat {
    background: #353535; }
  #calculateur-volume .title {
    font-family: "Roboto", Sans-serif;
    font-size: 1.875rem;
    font-weight: 400;
    line-height: 1.15; }
    @media (max-width: 1199px) {
      #calculateur-volume .title {
        font-size: 3.3vw; } }
    @media (max-width: 767px) {
      #calculateur-volume .title {
        font-size: 8vw; } }
    #calculateur-volume .title .blue-text {
      color: #f89b2b; }
    #calculateur-volume .title.left {
      color: white;
      padding: 68px 103px 55px 20px;
      text-align: right; }
      @media (max-width: 1199px) {
        #calculateur-volume .title.left {
          padding: 68px 3vw 30px; } }
      @media (max-width: 767px) {
        #calculateur-volume .title.left {
          margin-top: 0;
          padding: 50px 30px 30px;
          text-align: left; } }
    #calculateur-volume .title.right {
      padding: 68px 30px 55px 6.5vw;
      background: white;
      color: #434343; }
      @media (max-width: 1199px) {
        #calculateur-volume .title.right {
          padding-bottom: 30px; } }
      @media (max-width: 767px) {
        #calculateur-volume .title.right {
          padding: 30px; } }
  #calculateur-volume .pieces {
    font-family: "Roboto", Sans-serif;
    padding-bottom: 42px;
    text-align: right; }
    @media (min-width: 767px) {
      #calculateur-volume .pieces.mobile {
        display: none; } }
    #calculateur-volume .pieces.mobile img.input {
      right: 10%; }
    #calculateur-volume .pieces.mobile .piece {
      width: 90%;
      margin: 0 5% 30px 5%; }
    #calculateur-volume .pieces.mobile select {
      width: 90%;
      margin: 0 5% 0 5%;
      color: white;
      text-transform: uppercase;
      font-weight: 300;
      font-size: 18px;
      height: 55px;
      border: none;
      border-radius: 0;
      outline: 0px;
      scroll-behavior: smooth;
      background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='%23FFFFFF'><polygon points='0,0 100,0 50,50'/></svg>") no-repeat;
      background-size: 12px;
      background-position: calc(100% - 20px) 55%;
      -moz-appearance: none;
      -webkit-appearance: none;
      appearance: none;
      background-color: #0156a3; }
      #calculateur-volume .pieces.mobile select option {
        background: rgba(251, 200, 107, 0.9);
        color: white;
        text-transform: uppercase;
        font-weight: 300;
        height: 55px;
        font-size: 18px;
        border: none; }
        #calculateur-volume .pieces.mobile select option:not(:checked) {
          background: #184b73; }
    @media (max-width: 767px) {
      #calculateur-volume .pieces.nomobile {
        display: none; } }
    #calculateur-volume .pieces .piece {
      display: inline-block;
      width: 387px;
      max-width: 90%;
      text-align: left;
      font-size: 17px;
      line-height: 55px;
      padding-left: 36px;
      margin-bottom: 2px;
      cursor: pointer;
      color: white;
      text-transform: uppercase;
      font-weight: 300;
      background: rgba(255, 255, 255, 0.075); }
      #calculateur-volume .pieces .piece:hover {
        background: rgba(255, 255, 255, 0.15); }
      #calculateur-volume .pieces .piece.selected {
        color: #353535;
        font-weight: 500;
        background: rgba(248, 156, 42, 0.9); }
      #calculateur-volume .pieces .piece.input {
        background: #0156a3;
        border: none;
        text-transform: none; }
        @media (max-width: 1199px) {
          #calculateur-volume .pieces .piece.input {
            font-size: 1.4vw; } }
        @media (max-width: 767px) {
          #calculateur-volume .pieces .piece.input {
            font-size: 4vw; } }
        #calculateur-volume .pieces .piece.input.selected {
          font-weight: 300;
          color: white; }
        #calculateur-volume .pieces .piece.input:hover {
          font-weight: 300;
          color: white; }
        #calculateur-volume .pieces .piece.input::placeholder {
          color: white; }
      @media (max-width: 1199px) {
        #calculateur-volume .pieces .piece {
          padding-left: 2vw;
          font-size: 1.8vw; } }
      @media (max-width: 767px) {
        #calculateur-volume .pieces .piece {
          font-size: 4.5vw; } }
    #calculateur-volume .pieces img.input {
      position: absolute;
      right: 25px;
      margin-top: 15px;
      color: white; }
      @media (max-width: 1199px) {
        #calculateur-volume .pieces img.input {
          right: 2vw;
          margin-top: 19px;
          width: 2vw; } }
      @media (max-width: 767px) {
        #calculateur-volume .pieces img.input {
          right: 20px;
          width: 20px; } }
  #calculateur-volume .col-obj {
    background: #f89b2b; }
  #calculateur-volume .objets {
    text-align: center;
    padding: 55px 10%; }
    @media (max-width: 767px) {
      #calculateur-volume .objets {
        padding: 10vw 30px 25vw; } }
    #calculateur-volume .objets .objet {
      display: flex;
      flex-direction: row;
      position: relative;
      height: 100%; }
      #calculateur-volume .objets .objet > div.infos {
        width: 70%;
        margin-right: 2px;
        background: white;
        min-height: 108px;
        padding: 0 7px 15px; }
        #calculateur-volume .objets .objet > div.infos .name {
          font-family: "Roboto", Sans-serif;
          font-size: 14px;
          line-height: 1;
          font-weight: 300;
          margin: 11px 0 10px 0; }
        #calculateur-volume .objets .objet > div.infos .picto {
          opacity: 0.8; }
          #calculateur-volume .objets .objet > div.infos .picto svg {
            width: 60px;
            height: 60px;
            fill: #434343;
            cursor: pointer; }
          @media (min-width: 991px) {
            #calculateur-volume .objets .objet > div.infos .picto {
              opacity: 0.4;
              transition: 300ms all; } }
      #calculateur-volume .objets .objet > div.actions {
        flex-grow: 1;
        display: flex;
        flex-direction: column; }
        #calculateur-volume .objets .objet > div.actions > div {
          background: rgba(255, 255, 255, 0.4);
          cursor: pointer;
          flex: 1;
          display: flex;
          align-items: center;
          justify-content: center;
          transition: 300ms all; }
          #calculateur-volume .objets .objet > div.actions > div:hover {
            background: rgba(255, 255, 255, 0.6); }
          #calculateur-volume .objets .objet > div.actions > div.qte-plus {
            margin-bottom: 2px; }
      #calculateur-volume .objets .objet > div.qty {
        display: none;
        position: absolute;
        left: 0;
        bottom: 0;
        font-family: Oswald;
        font-size: 14px;
        font-weight: bold;
        line-height: 25px;
        padding: 0 10px;
        background: #0156a3;
        color: white; }
      #calculateur-volume .objets .objet:hover > div.infos .picto {
        opacity: 0.8; }

#calculateur-volume-conclusion {
  position: fixed;
  text-align: center;
  width: 100%;
  left: 0;
  bottom: 0;
  background: #0156a3;
  z-index: 10; }
  #calculateur-volume-conclusion .title {
    font-family: "Roboto Slab", Sans-serif;
    font-size: 34px;
    font-weight: 700;
    line-height: 1.35;
    text-align: right;
    color: white;
    padding: 34px 50px 34px 20px; }
    @media (max-width: 1600px) and (min-width: 1200px) {
      #calculateur-volume-conclusion .title {
        padding: 24px 50px 24px 20px;
        font-size: 34px;
        line-height: 1.5; } }
    @media (max-width: 1199px) {
      #calculateur-volume-conclusion .title {
        font-size: 3.2vw;
        line-height: 1.8;
        padding-right: 3.5vw; } }
    @media (max-width: 767px) {
      #calculateur-volume-conclusion .title {
        text-align: center;
        font-size: 7vw;
        padding: 3vw 5vw 4vw;
        order: 1; } }
    #calculateur-volume-conclusion .title.toggle-selected-objets {
      cursor: pointer; }
    #calculateur-volume-conclusion .title .open-selected-objets, #calculateur-volume-conclusion .title .close-selected-objets {
      max-height: 0;
      opacity: 0;
      visibility: hidden;
      cursor: pointer;
      width: 0px;
      display: inline-block;
      transition: max-height 0.2s ease, opacity 0.2s ease, visibility 0.2s ease; }
      #calculateur-volume-conclusion .title .open-selected-objets.close-selected-objets, #calculateur-volume-conclusion .title .close-selected-objets.close-selected-objets {
        margin-left: -8px; }
      #calculateur-volume-conclusion .title .open-selected-objets.active, #calculateur-volume-conclusion .title .close-selected-objets.active {
        width: 29px;
        max-height: 100px;
        opacity: 1;
        visibility: visible;
        transition-delay: 0.2s; }
        @media (max-width: 991px) {
          #calculateur-volume-conclusion .title .open-selected-objets.active, #calculateur-volume-conclusion .title .close-selected-objets.active {
            width: 2.6vw; } }
        @media (max-width: 767px) {
          #calculateur-volume-conclusion .title .open-selected-objets.active, #calculateur-volume-conclusion .title .close-selected-objets.active {
            width: 6vw; } }
    #calculateur-volume-conclusion .title .white-text {
      margin-right: 20px;
      color: #f89b2b; }
  @media (max-width: 767px) {
    #calculateur-volume-conclusion .actions-container {
      margin: 0;
      padding: 20px 20px 0; } }
  #calculateur-volume-conclusion .actions {
    background: white;
    padding: 27px 0 27px 3.2vw;
    text-align: left; }
    @media (max-width: 1600px) and (min-width: 1200px) {
      #calculateur-volume-conclusion .actions {
        padding: 17px 0 17px 3.2vw; } }
    @media (max-width: 1199px) {
      #calculateur-volume-conclusion .actions {
        padding: 3vw 0 3vw 4vw; } }
    #calculateur-volume-conclusion .actions.right {
      text-align: right;
      padding-left: 0;
      padding-right: 3vw; }
    #calculateur-volume-conclusion .actions .volume-total {
      font-family: Oswald;
      font-size: 40px;
      font-weight: bold; }
      @media (max-width: 1199px) {
        #calculateur-volume-conclusion .actions .volume-total {
          font-size: 2.9vw;
          line-height: 2.4; } }
      @media (max-width: 767px) {
        #calculateur-volume-conclusion .actions .volume-total {
          font-size: 6vw;
          line-height: 1.7; } }
      #calculateur-volume-conclusion .actions .volume-total .unite {
        font-weight: 300; }
    #calculateur-volume-conclusion .actions form {
      display: inline; }
    #calculateur-volume-conclusion .actions .remove-all {
      display: inline-block;
      vertical-align: top;
      background: rgba(3, 56, 71, 0.2);
      width: 60px;
      height: 60px;
      border-radius: 50%;
      text-align: center;
      line-height: 55px;
      cursor: pointer;
      transition: transform 0.3s ease, background 0.3s ease; }
      #calculateur-volume-conclusion .actions .remove-all:hover {
        background: rgba(3, 56, 71, 0.4);
        transform: scale(1.1); }
      @media (max-width: 1199px) {
        #calculateur-volume-conclusion .actions .remove-all {
          width: 7vw;
          height: 7vw;
          line-height: 6.5vw; }
          #calculateur-volume-conclusion .actions .remove-all img {
            width: 3vw; } }
      @media (max-width: 767px) {
        #calculateur-volume-conclusion .actions .remove-all {
          width: 10vw;
          height: 10vw;
          line-height: 8.75vw; }
          #calculateur-volume-conclusion .actions .remove-all img {
            width: 4.4vw; } }
    #calculateur-volume-conclusion .actions .ask-devis {
      display: inline-block;
      vertical-align: top;
      border-radius: 30px;
      line-height: 60px;
      background: #e70018;
      padding: 0 30px;
      font-family: "Roboto", Sans-serif;
      font-size: 20px;
      font-weight: 900;
      color: white;
      margin-left: 10px;
      cursor: pointer;
      transition: transform 0.3s ease; }
      #calculateur-volume-conclusion .actions .ask-devis:hover {
        transform: scale(1.1); }
      #calculateur-volume-conclusion .actions .ask-devis.disabled {
        opacity: 0.1;
        cursor: auto; }
        #calculateur-volume-conclusion .actions .ask-devis.disabled:hover {
          transform: scale(1); }
      @media (max-width: 1199px) {
        #calculateur-volume-conclusion .actions .ask-devis {
          font-size: 2.1vw;
          padding: 0 2.5vw;
          line-height: 6.5vw;
          margin-left: 0;
          border-radius: 5vw; } }
      @media (max-width: 767px) {
        #calculateur-volume-conclusion .actions .ask-devis {
          font-size: 3.7vw;
          padding: 0 4vw;
          line-height: 10vw;
          margin-left: 1vw;
          border-radius: 5vw; } }
  #calculateur-volume-conclusion .selected-objets {
    background: white;
    padding: 0 20px;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    transition: max-height 0.5s ease, opacity 0.5s ease, visibility 0.5s ease, padding 0.5s ease; }
    #calculateur-volume-conclusion .selected-objets.open {
      opacity: 1;
      visibility: visible;
      padding: 22px 20px;
      max-height: 76vh;
      overflow: auto; }
    #calculateur-volume-conclusion .selected-objets .row-striped > div .objet {
      background: rgba(3, 56, 71, 0.02); }
    #calculateur-volume-conclusion .selected-objets .row-striped > div:nth-child(even) .objet {
      background: rgba(3, 56, 71, 0.06); }
    @media (min-width: 576px) {
      #calculateur-volume-conclusion .selected-objets .row-striped > div:nth-child(even) .objet {
        background: rgba(3, 56, 71, 0.02); }
      #calculateur-volume-conclusion .selected-objets .row-striped > div:nth-child(4n+3) .objet, #calculateur-volume-conclusion .selected-objets .row-striped > div:nth-child(4n+4) .objet {
        background: rgba(3, 56, 71, 0.06); } }
    @media (min-width: 1200px) {
      #calculateur-volume-conclusion .selected-objets .row-striped > div:nth-child(4n+3) .objet, #calculateur-volume-conclusion .selected-objets .row-striped > div:nth-child(4n+4) .objet {
        background: rgba(3, 56, 71, 0.02); }
      #calculateur-volume-conclusion .selected-objets .row-striped > div:nth-child(8n) .objet, #calculateur-volume-conclusion .selected-objets .row-striped > div:nth-child(8n-1) .objet, #calculateur-volume-conclusion .selected-objets .row-striped > div:nth-child(8n-2) .objet, #calculateur-volume-conclusion .selected-objets .row-striped > div:nth-child(8n-3) .objet {
        background: rgba(3, 56, 71, 0.06); } }
    #calculateur-volume-conclusion .selected-objets .row-striped .objet {
      height: 38px;
      margin-bottom: 2px;
      font-family: "Roboto", Sans-serif;
      font-size: 14px;
      font-weight: 300;
      color: rgba(3, 56, 71, 0.8); }
      #calculateur-volume-conclusion .selected-objets .row-striped .objet > div {
        line-height: 38px;
        padding: 0 10px; }
        #calculateur-volume-conclusion .selected-objets .row-striped .objet > div.nom {
          text-align: left;
          flex: auto; }
        #calculateur-volume-conclusion .selected-objets .row-striped .objet > div.qte {
          width: 28px;
          padding: 0 5px; }
        #calculateur-volume-conclusion .selected-objets .row-striped .objet > div.qte-moins, #calculateur-volume-conclusion .selected-objets .row-striped .objet > div.qte-plus {
          background: rgba(255, 255, 255, 0.5);
          color: #0156a3;
          font-size: 20px;
          font-weight: 900;
          cursor: pointer;
          width: auto; }

@media print {
  html {
    height: 100%;
    padding: 0 !important;
    margin: 0 !important; }
  body {
    font-family: "Roboto", Sans-serif;
    height: 100%;
    padding: 0 !important;
    margin: 0 !important;
    -webkit-print-color-adjust: exact !important; } }

#devis {
  width: 1200px;
  background: white !important;
  font-size: 18px;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden; }
  #devis .page {
    page-break-after: always;
    position: relative;
    height: 100%;
    padding: 0 !important;
    margin: 0 !important;
    width: 100%; }
    #devis .page .header {
      background: #16414e !important;
      height: 150px;
      position: relative; }
      #devis .page .header .logo {
        display: inline-block;
        padding: 20px;
        height: 100%;
        background: white !important; }
        #devis .page .header .logo img {
          height: 100%; }
    #devis .page .content {
      padding: 20px 40px; }
      #devis .page .content .title {
        margin: 20px 0;
        font-family: "Roboto", Sans-serif;
        font-size: 40px;
        font-weight: 900;
        line-height: 1.15; }
