@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500&family=Playfair+Display:wght@500&display=swap');

body{
    background:#F7F2ED;
    font-family:'Inter',sans-serif;
    margin:0;
}

.container{
    width:360px;
    margin:80px auto;
    background:#fff;
    padding:30px;
    border-radius:14px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

h1{
    text-align:center;
    font-family:'Playfair Display',serif;
    color:#2F2F2F;
}

input,select,textarea{
    width:100%;
    padding:12px;
    margin-top:12px;
    border:1px solid #D6CFC7;
    border-radius:8px;
    font-size:14px;
}

button{
    width:100%;
    background:#C7B8A3;
    border:none;
    padding:12px;
    margin-top:18px;
    border-radius:8px;
    color:#fff;
    font-size:15px;
    cursor:pointer;
}

button:hover{
    background:#B7A58F;
}
/*new inex*/
/* Background */
.ov-bg {
  background: #F6F2EC;
  font-family: 'Inter', system-ui, sans-serif;
  color: #2E2A26;
}

/* Phone frame feel */
.ov-phone-frame {
  width: 100%;
  max-width: 390px;
  background: #F6F2EC;
  padding: 24px 20px 32px;
}

/* Logo */
.ov-logo {
  font-family: 'Playfair Display', serif;
  font-size: 26px;
  margin-bottom: 4px;
  color: #2C2A27;
}

/* Program text */
.ov-program {
  font-size: 11px;
  letter-spacing: 1.5px;
  color: #9B9186;
  margin-bottom: 20px;
}

/* Content block */
.ov-content {
  background: #EFEAE2;
  border-radius: 16px;
  padding: 22px 18px 24px;
}

/* Headline */
.ov-headline {
  font-family: 'Playfair Display', serif;
  font-size: 22px;
  line-height: 1.35;
  color: #2E2A26;
  margin-bottom: 12px;
}

/* Description */
.ov-description {
  font-size: 13px;
  line-height: 1.6;
  color: #7D746A;
  margin-bottom: 18px;
}

/* Inputs */
.ov-input {
  width: 100%;
  background: #F7F4EF;
  border: 1px solid #DDD6CC;
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 14px;
  margin-bottom: 10px;
  color: #2E2A26;
}

.ov-input::placeholder {
  color: #A79F96;
}

.ov-input:focus {
  outline: none;
  border-color: #C6BDB2;
}

/* Button */
/* Continue button */
.ov-btn {
  width: 100%;
  background: #AC9362;
  border: none;
  border-radius: 10px;
  padding: 11px;
  font-size: 14px;
  color: #FFFFFF;
  margin-top: 6px;
}

.ov-btn:hover {
  background: #B89E6F;
}

/* Disabled state */
.ov-btn:disabled {
  background: #E4D8C3;
  color: #9C8A66;
  cursor: not-allowed;
}

/* Footnote text */
.ov-footnote {
  text-align: center;
  font-size: 11px;
  color: #AC9362;
  margin-top: 10px;
}

/* Radio buttons */
.ov-radio {
  font-size: 13px;
  color: #6F665D;
}

.ov-radio input {
  margin-right: 6px;
}

/* Range slider */
.ov-range {
  width: 100%;
  accent-color: #AC9362;
}

.ov-range-value {
  font-size: 12px;
  color: #8F877D;
  margin-bottom: 8px;
}

/* Radio buttons */
.ov-radio {
  font-size: 13px;
  color: #6F665D;
}

.ov-radio input {
  margin-right: 6px;
}

/* Range slider */
.ov-range {
  width: 100%;
  accent-color: #AC9362;
}

.ov-range-value {
  font-size: 12px;
  color: #8F877D;
  margin-bottom: 8px;
}
.ov-radio-item {
  display: flex;
  align-items: center;   /* THIS fixes vertical alignment */
  gap: 8px;
  font-size: 13px;
  color: #6F665D;
}

.ov-radio-item input[type="radio"] {
  margin: 0;
  transform: translateY(-1px); /* micro optical alignment */
}
