
/*
--------------------------------------------------
Estimate Form Stylesheet
© Office Blind Systems Ltd

This stylesheet and associated code are proprietary
to Office Blind Systems Ltd and are provided for use
on authorised websites only.

Unauthorised use, copying, modification or distribution,
in whole or in part, is strictly prohibited.

This codebase contains hidden code and is monitored for unauthorised use.
Any infringement will result in legal action.

All rights reserved.
--------------------------------------------------
*/

 .estimate-page * {
    box-sizing: border-box;
  }

  .estimate-page {
    background: #f1f1f1;
    padding: 40px 0;
  }

  .estimate-page .page-wrap {
    max-width: 980px;
    margin: 0 auto;
    padding: 20px;
  }

  .estimate-page .intro-box,
  .estimate-page #regForm {
    background: #fff;
    border-radius: 4px;
    box-shadow: 0 1px 6px rgba(0,0,0,0.08);
  }

  .estimate-page .intro-box {
    padding: 28px;
    margin-bottom: 24px;
    line-height: 1.6;
  }

  .estimate-page .intro-box h1 {
    margin: 0 0 18px;
    font-size: 30px;
    color: #E84F08;
    text-align: center;
  }

  .estimate-page #regForm {
    margin: 0 auto;
    padding: 30px;
    width: 100%;
  }

  .estimate-page .tab {
    display: none;
  }

  .estimate-page .stepheading {
    font-weight: bold;
    text-align: center;
    color: #E84F08;
    font-size: 20px;
    margin-bottom: 18px;
  }

  .estimate-page .center {
    margin: auto;
    max-width: 760px;
    text-align: center;
  }

  .estimate-page h2 {
    margin: 0 0 20px;
    text-align: center;
    color: #E84F08;
    font-size: 28px;
  }

  .estimate-page p {
    margin: 0 0 14px;
  }

  .estimate-page label {
    display: inline-block;
    margin-bottom: 6px;
    font-weight: 600;
  }

  .estimate-page input:not([type=checkbox]):not([type=radio]),
  .estimate-page select,
  .estimate-page textarea {
    width: 100%;
    padding: 10px 12px;
    font-size: 14px;
    border: 1px solid #bbb;
    border-radius: 3px;
    font-family: Arial, Helvetica, sans-serif;
  }

  .estimate-page textarea {
    min-height: 110px;
    resize: vertical;
  }

  .estimate-page input.invalid,
  .estimate-page select.invalid,
  .estimate-page textarea.invalid {
    background-color: #fff0f0;
    border-color: #d9534f;
  }

  .estimate-page .inputerror {
    display: none;
    margin-top: 6px;
    color: #c62828;
    font-size: 13px;
    text-align: left;
  }

  .estimate-page .button-row {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-top: 28px;
  }

  .estimate-page button {
    background-color: #E84F08;
    color: #fff;
    border: none;
    padding: 12px 22px;
    font-size: 14px;
    border-radius: 3px;
    cursor: pointer;
  }

  .estimate-page button:hover {
    opacity: 0.9;
  }

  .estimate-page #prevBtn {
    background-color: #888;
  }

  .estimate-page .button-center {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 18px;
  }

  .estimate-page .steps-wrap {
    text-align: center;
    margin-top: 28px;
  }

  .estimate-page .step {
    height: 15px;
    width: 15px;
    margin: 0 3px;
    background-color: #bbb;
    border: none;
    border-radius: 50%;
    display: inline-block;
    opacity: 0.5;
  }

  .estimate-page .step.active {
    opacity: 1;
    background-color: #E84F08;
  }

  .estimate-page .step.finish {
    background-color: #bbbbbb;
  }

  .estimate-page .sizes-note {
    margin: 18px 0 10px;
    font-weight: bold;
  }

  .estimate-page .measure-row {
    margin: 12px 0 18px;
    text-align: center;
  }

  .estimate-page .measure-row label {
    margin-right: 14px;
    font-weight: normal;
  }

  .estimate-page .blind-size-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 12px;
    text-align: left;
  }

  .estimate-page .blind-size-title {
    min-width: 72px;
    padding-top: 11px;
    font-weight: bold;
    color: #444;
  }

  .estimate-page .blind-size-col {
    flex: 1;
  }

  .estimate-page .section-title {
    text-align: center;
    margin: 0 0 20px;
    font-size: 20px;
    color: #E84F08;
  }

  .estimate-page .info-note {
    color: #c62828;
    font-weight: bold;
  }

  .estimate-page .hidden {
    display: none !important;
  }

  @media (max-width: 700px) {
    .estimate-page .page-wrap {
      padding: 12px;
    }

    .estimate-page #regForm,
    .estimate-page .intro-box {
      padding: 20px;
    }

    .estimate-page .blind-size-row {
      flex-direction: column;
      gap: 8px;
    }

    .estimate-page .blind-size-title {
      min-width: auto;
      padding-top: 0;
    }

    .estimate-page .button-row {
      flex-direction: column;
    }

    .estimate-page .button-row button {
      width: 100%;
    }
  }
