:root{
      --orange:#ff5a1f;
      --orange-dark:#f04d12;
      --text:#0b1736;
      --muted:#6d7285;
      --line:#e8e8ec;
      --bg:#f7f7f9;
      --card:#ffffff;
      --soft:#fdf7f2;
      --radius:18px;
      --shadow:0 8px 24px rgba(11, 23, 54, 0.06);
    }

    *{box-sizing:border-box}
    body{
      margin:0;
      font-family:Arial, Helvetica, sans-serif;
      background:var(--bg);
      color:var(--text);
    }

    .page{
      max-width:1440px;
      margin:0 auto;
      padding:24px;
    }

    .stockist-wrap{
      background:#fff;
      border:1px solid var(--line);
      border-radius:20px;
      padding:28px;
      box-shadow:var(--shadow);
    }

    .top-row{
      display:grid;
      grid-template-columns:1.2fr 1fr;
      gap:24px;
      align-items:start;
      margin-bottom:18px;
    }

    .page-title{
      font-size:64px;
      line-height:0.95;
      letter-spacing:-2px;
      margin:0 0 8px;
      font-weight:900;
    }

    .page-subtitle{
      margin:0;
      color:var(--muted);
      font-size:18px;
      line-height:1.5;
    }

    .mini-features{
      display:grid;
      grid-template-columns:repeat(4, 1fr);
      border:1px solid var(--line);
      border-radius:16px;
      overflow:hidden;
      background:#fff;
    }

    .mini-feature{
      padding:20px 16px 18px;
      text-align:center;
      border-right:1px solid var(--line);
    }

    .mini-feature:last-child{
      border-right:none;
    }

    .mini-feature .icon{
      width:34px;
      height:34px;
      margin:0 auto 10px;
      color:var(--orange);
    }

    .mini-feature span{
      display:block;
      font-size:14px;
      line-height:1.3;
      color:#33384a;
      font-weight:700;
    }

    .content-grid{
      display:grid;
      grid-template-columns:2.2fr 0.95fr;
      gap:20px;
      align-items:start;
    }

    .form-panel{
      border:1px solid var(--line);
      border-radius:18px;
      padding:24px;
      background:#fff;
    }

    .form-grid{
      display:grid;
      grid-template-columns:repeat(12, 1fr);
      gap:18px 18px;
    }

    .field{
      display:flex;
      flex-direction:column;
      gap:8px;
    }

    .field label{
      font-weight:800;
      font-size:15px;
      color:#1a213b;
    }

    .required{
      color:var(--orange);
    }

    .input,
    .select,
    .textarea{
      width:100%;
      border:1px solid #d7d9e1;
      border-radius:8px;
      background:#fff;
      padding:14px 16px;
      font-size:15px;
      color:#22283b;
      outline:none;
      transition:0.2s ease;
    }

    .input:focus,
    .select:focus,
    .textarea:focus{
      border-color:var(--orange);
      box-shadow:0 0 0 3px rgba(255,90,31,0.08);
    }

    .textarea{
      min-height:110px;
      resize:vertical;
      font-family:inherit;
    }

    .with-icon{
      position:relative;
    }

    .with-icon .input{
      padding-left:44px;
    }

    .input-icon{
      position:absolute;
      left:14px;
      top:50%;
      transform:translateY(-50%);
      width:18px;
      height:18px;
      color:#7b8092;
    }

    .col-12{grid-column:span 12}
    .col-8{grid-column:span 8}
    .col-6{grid-column:span 6}
    .col-4{grid-column:span 4}
    .col-3{grid-column:span 3}

    .interest-row{
      display:grid;
      grid-template-columns:repeat(4, 1fr);
      gap:12px;
    }

    .interest-option{
      display:flex;
      align-items:center;
      gap:12px;
      border:1px solid var(--line);
      border-radius:10px;
      padding:14px 14px;
      background:#fff;
      min-height:58px;
    }

    .interest-option input{
      width:18px;
      height:18px;
      accent-color:var(--orange);
      margin:0;
      flex-shrink:0;
    }

    .interest-option .option-icon{
      width:20px;
      height:20px;
      color:var(--orange);
      flex-shrink:0;
    }

    .interest-option span{
      font-size:14px;
      font-weight:700;
      color:#2d3449;
    }

    .consent-row{
      display:flex;
      align-items:flex-start;
      gap:12px;
      margin-top:4px;
    }

    .consent-row input{
      width:19px;
      height:19px;
      margin-top:2px;
      accent-color:var(--orange);
      flex-shrink:0;
    }

    .consent-row label{
      margin:0;
      font-size:14px;
      line-height:1.5;
      color:#293048;
      font-weight:600;
    }

    .consent-row a{
      color:var(--orange);
      text-decoration:none;
      font-weight:700;
    }

    .submit-row{
      display:flex;
      justify-content:flex-end;
      margin-top:8px;
    }

    .submit-btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:12px;
      min-width:310px;
      padding:16px 24px;
      background:var(--orange);
      color:#fff;
      border:none;
      border-radius:8px;
      font-size:16px;
      font-weight:800;
      cursor:pointer;
      transition:0.2s ease;
    }

    .submit-btn:hover{
      background:var(--orange-dark);
    }

    .secure-note{
      display:flex;
      justify-content:center;
      align-items:center;
      gap:8px;
      margin-top:14px;
      color:#707588;
      font-size:12px;
      text-align:center;
    }

    .secure-note svg{
      width:14px;
      height:14px;
    }

    .success-message{
      display:none;
      margin-bottom:18px;
      border:1px solid #9de7bd;
      border-radius:12px;
      background:#ecfff4;
      color:#087443;
      padding:14px 16px;
      font-size:15px;
      font-weight:700;
      line-height:1.45;
    }

.success-message.is-visible{
  display:block;
}

.error-message{
  display:none;
  margin-bottom:18px;
  border:1px solid #f2aaa5;
  border-radius:12px;
  background:#fff1f0;
  color:#a12820;
  padding:14px 16px;
  font-size:15px;
  font-weight:700;
  line-height:1.45;
}

.error-message.is-visible{
  display:block;
}

.honeypot-field{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}

    .side-panel{
      border:1px solid #f0e6dd;
      background:var(--soft);
      border-radius:18px;
      padding:24px;
    }

    .side-top-icon{
      width:74px;
      height:74px;
      margin:0 auto 18px;
      border-radius:50%;
      background:#fff;
      border:1px solid #f0e6dd;
      display:flex;
      align-items:center;
      justify-content:center;
      color:var(--orange);
      box-shadow:0 4px 12px rgba(0,0,0,0.03);
    }

    .side-title{
      margin:0 0 12px;
      font-size:24px;
      line-height:1.2;
      text-align:center;
      font-weight:900;
    }

    .side-copy{
      margin:0 0 20px;
      text-align:center;
      color:#5f6577;
      font-size:15px;
      line-height:1.6;
    }

    .side-divider{
      height:1px;
      background:#eedfd2;
      margin:0 0 18px;
    }

    .benefits{
      display:grid;
      gap:14px;
      margin-bottom:22px;
    }

    .benefit{
      display:flex;
      align-items:flex-start;
      gap:12px;
    }

    .tick{
      width:22px;
      height:22px;
      border:1.5px solid var(--orange);
      border-radius:50%;
      display:flex;
      align-items:center;
      justify-content:center;
      color:var(--orange);
      flex-shrink:0;
      margin-top:1px;
      background:#fff8f4;
    }

    .benefit p{
      margin:0;
      color:#4b5266;
      font-size:14px;
      line-height:1.5;
    }

    .question-box{
      border:1px solid #f0d8c7;
      border-radius:14px;
      background:rgba(255,255,255,0.45);
      padding:18px;
      display:grid;
      grid-template-columns:40px 1fr;
      gap:12px;
      align-items:start;
    }

    .question-box .q-icon{
      width:40px;
      height:40px;
      color:var(--orange);
    }

    .question-box h4{
      margin:0 0 4px;
      font-size:14px;
      font-weight:900;
    }

    .question-box p{
      margin:0 0 10px;
      color:#646a7b;
      font-size:13px;
      line-height:1.5;
    }

    .question-box a{
      display:block;
      color:var(--orange);
      text-decoration:none;
      font-size:13px;
      font-weight:800;
      margin-bottom:4px;
    }

    .question-box a:last-child{
      margin-bottom:0;
    }

    @media (max-width: 1180px){
      .page-title{
        font-size:52px;
      }

      .content-grid{
        grid-template-columns:1fr;
      }
    }

    @media (max-width: 980px){
      .top-row{
        grid-template-columns:1fr;
      }

      .mini-features{
        grid-template-columns:repeat(2, 1fr);
      }

      .mini-feature:nth-child(2){
        border-right:none;
      }

      .mini-feature:nth-child(1),
      .mini-feature:nth-child(2){
        border-bottom:1px solid var(--line);
      }

      .col-8,
      .col-6,
      .col-4,
      .col-3{
        grid-column:span 12;
      }

      .interest-row{
        grid-template-columns:repeat(2, 1fr);
      }

      .submit-btn{
        width:100%;
        min-width:0;
      }
    }

    @media (max-width: 640px){
      .page{
        padding:14px;
      }

      .stockist-wrap{
        padding:18px;
      }

      .page-title{
        font-size:40px;
        letter-spacing:-1px;
      }

      .page-subtitle{
        font-size:16px;
      }

      .mini-features{
        grid-template-columns:1fr;
      }

      .mini-feature{
        border-right:none;
        border-bottom:1px solid var(--line);
      }

      .mini-feature:last-child{
        border-bottom:none;
      }

      .form-panel,
      .side-panel{
        padding:16px;
      }

      .interest-row{
        grid-template-columns:1fr;
      }

      .question-box{
        grid-template-columns:1fr;
      }

      .submit-row{
        justify-content:stretch;
      }
    }
