/* Rhein 1905 — KYC front styles
 * Brand palette: gold #A1885A, ink #2B1F17, ivory #F5EFE3
 */

/* ============================================================ *
 *  Upload page
 * ============================================================ */
.rhein-kyc-page {
  padding: 4rem 0 6rem;
  background: #F5EFE3;
}
.rhein-kyc-page .container { max-width: 720px; }

.rhein-kyc-head {
  margin-bottom: 2.5rem;
  text-align: center;
}
.rhein-kyc-head h1 {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 2.4rem;
  color: #2B1F17;
  margin: 0 0 .75rem;
  letter-spacing: .01em;
}
.rhein-kyc-head .lead {
  color: #6b5f54;
  line-height: 1.55;
  font-size: 1rem;
  max-width: 56ch;
  margin: 0 auto;
}

.rhein-kyc-alert {
  border-radius: 4px;
  padding: 1rem 1.25rem;
  margin-bottom: 1.5rem;
  border: 1px solid;
}
.rhein-kyc-alert ul { margin: 0; padding-left: 1.25rem; }
.rhein-kyc-alert--error  { background: #fdecea; border-color: #f5c2bd; color: #8a1f15; }
.rhein-kyc-alert--ok     { background: #ecf6ed; border-color: #b9dfc0; color: #17612a; }

.rhein-kyc-status {
  border-left: 4px solid #A1885A;
  padding: 1rem 1.25rem;
  background: #fff;
  margin-bottom: 1.5rem;
  font-weight: 600;
  color: #2B1F17;
}
.rhein-kyc-status--verified { border-left-color: #2e7d32; }
.rhein-kyc-status--pending  { border-left-color: #c5973b; }
.rhein-kyc-status--rejected { border-left-color: #b62b1f; }

.rhein-kyc-form {
  background: #fff;
  padding: 2rem;
  border: 1px solid #e6decf;
  border-radius: 4px;
}
.rhein-kyc-form fieldset {
  border: none;
  padding: 0;
  margin: 0 0 1.5rem;
}
.rhein-kyc-form legend {
  font-weight: 600;
  color: #2B1F17;
  font-size: .95rem;
  margin-bottom: .5rem;
  border: none;
}
.rhein-kyc-radio {
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .5rem 0;
  cursor: pointer;
}
.rhein-kyc-row {
  margin-bottom: 1.25rem;
}
.rhein-kyc-row label {
  display: block;
  font-weight: 600;
  color: #2B1F17;
  margin-bottom: .35rem;
  font-size: .9rem;
}
.rhein-kyc-row input[type="date"],
.rhein-kyc-row input[type="file"] {
  width: 100%;
  padding: .55rem .75rem;
  border: 1px solid #d4c8b3;
  border-radius: 3px;
  font: inherit;
  background: #fff;
}
.rhein-kyc-note {
  font-size: .85rem;
  color: #6b5f54;
  margin: .5rem 0;
}
.rhein-kyc-note--warn {
  color: #8a1f15;
  font-weight: 500;
}
.rhein-kyc-submit {
  margin-top: 1rem;
  background: #2B1F17;
  border-color: #2B1F17;
  color: #F5EFE3;
  padding: .75rem 2rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: .9rem;
}
.rhein-kyc-submit:hover {
  background: #A1885A;
  border-color: #A1885A;
}

/* ============================================================ *
 *  Customer-account tile
 * ============================================================ */
.rhein-kyc-tile { text-decoration: none; }
.rhein-kyc-tile .link-item {
  display: block;
  padding: 1.25rem;
  border: 1px solid #e6decf;
  border-radius: 4px;
  background: #fff;
  text-align: center;
  color: #2B1F17;
  transition: border-color .15s, box-shadow .15s;
}
.rhein-kyc-tile:hover .link-item {
  border-color: #A1885A;
  box-shadow: 0 4px 14px rgba(43,31,23,.08);
}
.rhein-kyc-tile .material-icons {
  font-size: 2rem;
  color: #A1885A;
  display: block;
  margin: 0 auto .5rem;
}
.rhein-kyc-tile__title {
  display: block;
  font-weight: 600;
  margin-bottom: .25rem;
}
.rhein-kyc-tile__cta {
  display: block;
  font-size: .85rem;
  color: #6b5f54;
}
.rhein-kyc-tile--s2 .material-icons { color: #2e7d32; }
.rhein-kyc-tile--s1 .material-icons { color: #c5973b; }
.rhein-kyc-tile--s3 .material-icons { color: #b62b1f; }

/* ============================================================ *
 *  Cart banner
 * ============================================================ */
.rhein-kyc-cart-banner {
  margin: 1.5rem 0;
  background: #fff;
  border: 1px solid #A1885A;
  border-left-width: 4px;
  border-radius: 3px;
  padding: 1.25rem;
}
.rhein-kyc-cart-banner__inner {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}
.rhein-kyc-cart-banner__icon {
  color: #A1885A;
  font-size: 2rem;
  flex: 0 0 auto;
}
.rhein-kyc-cart-banner__text {
  flex: 1 1 240px;
  min-width: 240px;
}
.rhein-kyc-cart-banner__text strong {
  display: block;
  color: #2B1F17;
  margin-bottom: .25rem;
}
.rhein-kyc-cart-banner__text p {
  margin: 0;
  color: #6b5f54;
  font-size: .9rem;
}
.rhein-kyc-cart-banner__cta {
  flex: 0 0 auto;
  background: #2B1F17;
  border-color: #2B1F17;
  color: #F5EFE3;
}
.rhein-kyc-cart-banner__cta:hover {
  background: #A1885A;
  border-color: #A1885A;
}
