/* Customer enquiry pages: navy/white corporate styling, isolated from homepage styles. */
.replay-flow{max-width:1080px;margin:0 auto;padding:24px 20px 48px;color:#13243a}
.replay-flow *{box-sizing:border-box}
.flow-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0 28px;border-bottom:1px solid #e4e9f0}
.flow-brand{font-weight:800;letter-spacing:.03em;color:#102c50;text-decoration:none;font-size:18px}
.flow-brand span{display:block;font-size:10px;letter-spacing:.14em;margin-top:4px;color:#52647a}
.flow-back,.flow-footer a{color:#183b66;text-decoration:none;font-weight:600}
.flow-hero{padding:38px 0 24px;max-width:760px}
.flow-eyebrow{font-size:12px;letter-spacing:.16em;font-weight:800;color:#486b93}
.flow-hero h1{font-size:clamp(30px,5vw,46px);line-height:1.12;margin:10px 0 14px;color:#102c50}
.flow-hero p{font-size:16px;line-height:1.7;color:#52647a;margin:0}
.flow-card{max-width:780px;background:#fff;border:1px solid #e1e7ef;border-radius:16px;padding:clamp(18px,4vw,32px);box-shadow:0 12px 36px rgba(16,44,80,.06);display:grid;gap:18px}
.flow-card label{display:grid;gap:8px;font-weight:650;color:#18314e;font-size:14px}
.flow-card input:not([type=checkbox]),.flow-card select,.flow-card textarea{width:100%;min-height:48px;border:1px solid #cbd5e1;border-radius:9px;padding:12px 13px;font:inherit;color:#14243a;background:#fff}
.flow-card textarea{resize:vertical;min-height:120px}
.flow-card input:focus,.flow-card select:focus,.flow-card textarea:focus{outline:3px solid rgba(45,103,164,.18);border-color:#326ca7}
.flow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.flow-check{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:10px!important;font-weight:500!important;line-height:1.5}
.flow-check input{margin-top:4px}
.flow-check a{color:#174f85}
.flow-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:0;border-radius:9px;background:#12365f;color:#fff;text-decoration:none;font:inherit;font-weight:750;cursor:pointer}
.flow-button:hover{background:#1a4b7d}
.flow-small{font-size:12px;line-height:1.6;color:#66778c;margin:0}
.flow-notice{max-width:780px;border-radius:12px;padding:20px;margin:0 0 18px;line-height:1.6}
.flow-success{background:#f0f7f3;border:1px solid #b9dfc7;color:#194e30}
.flow-error{background:#fff5f4;border:1px solid #f0c3be;color:#7e2520}
.flow-notice h2{margin:0 0 8px}
.flow-notice ul{margin-bottom:0}
.flow-footer{display:flex;flex-wrap:wrap;gap:18px;padding-top:26px;font-size:13px}
@media(max-width:640px){.replay-flow{padding:14px 14px 32px}.flow-header{align-items:flex-start}.flow-brand{font-size:16px}.flow-back{font-size:13px;padding-top:4px}.flow-grid{grid-template-columns:1fr}.flow-card{border-radius:12px}.flow-hero{padding-top:28px}}

/* REPLAY premium customer flow enhancement */
.replay-flow {
  max-width: 1160px;
  padding: 30px 24px 56px;
  color: #142b46;
}

.flow-header {
  padding: 16px 0 26px;
  border-bottom-color: #dce5ef;
}

.flow-brand {
  font-size: 20px;
  letter-spacing: .045em;
}

.flow-back,
.flow-footer a {
  transition: color .2s ease;
}

.flow-back:hover,
.flow-footer a:hover {
  color: #3976b8;
}

.flow-hero {
  max-width: 850px;
  padding: 46px 0 30px;
}

.flow-eyebrow {
  display: inline-block;
  color: #376b9f;
  background: #edf4fb;
  border: 1px solid #dce9f7;
  border-radius: 999px;
  padding: 7px 12px;
  font-size: 11px;
}

.flow-hero h1 {
  font-size: clamp(34px, 5vw, 52px);
  letter-spacing: -.035em;
  line-height: 1.08;
  margin: 18px 0 16px;
}

.flow-hero p {
  max-width: 740px;
  font-size: 16px;
  line-height: 1.8;
}

.flow-card {
  max-width: 900px;
  gap: 22px;
  padding: clamp(22px, 4vw, 38px);
  border-color: #dce5ef;
  border-radius: 18px;
  box-shadow: 0 18px 48px rgba(16, 44, 80, .085);
}

.flow-card input:not([type=checkbox]),
.flow-card select,
.flow-card textarea {
  border-color: #c8d5e4;
  border-radius: 10px;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.flow-card input:focus,
.flow-card select:focus,
.flow-card textarea:focus {
  outline: none;
  border-color: #3976b8;
  box-shadow: 0 0 0 4px rgba(57, 118, 184, .13);
}

.flow-button {
  min-height: 50px;
  border-radius: 10px;
  padding: 13px 24px;
  background: linear-gradient(135deg, #163b66, #24558a);
  box-shadow: 0 6px 15px rgba(18, 54, 95, .16);
  transition: transform .2s ease, box-shadow .2s ease;
}

.flow-button:hover {
  background: linear-gradient(135deg, #204d7e, #326da7);
  box-shadow: 0 9px 20px rgba(18, 54, 95, .22);
  transform: translateY(-1px);
}

.flow-notice {
  max-width: 900px;
  padding: 26px;
  border-radius: 16px;
}

.flow-success {
  background: #f1f8f4;
  border-color: #c4e3d0;
}

.flow-error {
  background: #fff6f5;
}

.flow-footer {
  max-width: 900px;
  gap: 20px;
  padding-top: 30px;
  border-top: 1px solid #e6ebf2;
  margin-top: 30px;
}

@media (max-width: 640px) {
  .replay-flow {
    padding: 16px 16px 34px;
  }

  .flow-header {
    padding-bottom: 20px;
    gap: 12px;
  }

  .flow-brand {
    font-size: 17px;
  }

  .flow-hero {
    padding: 32px 0 24px;
  }

  .flow-hero h1 {
    font-size: 35px;
  }

  .flow-card {
    padding: 20px 16px;
    gap: 19px;
    border-radius: 14px;
  }

  .flow-notice {
    padding: 20px 17px;
  }

  .flow-footer {
    gap: 14px 18px;
  }
}
