.nymobil-section.nymobil-section--personal-info,
.nymobil-section.nymobil-section-number {
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 20px;
    border: 1px solid #e0e0e0;
}

.nymobil-section.nymobil-section--personal-info input,
.nymobil-section.nymobil-section-number input {
    background: #F5F5F5;
}

.nymobil-phone-number-options {
    display: inline-flex;
    padding-bottom: 24px;
    width: 100%;
}

/* Section styling */
.nymobil-section-number {
    margin-bottom: 20px;
}

.nymobil-subheading {
    margin: 0 0 12px 0;
    font-size: 16px;
    font-weight: 600;
    color: #333;
}

.nymobil-phone-option {
    position: relative;
    margin: 0;
    cursor: pointer;
    transition: all 0.3s ease;
}

.nymobil-phone-option input[type="radio"] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.nymobil-phone-option span {
    display: block;
    padding: 12px 24px;
    font-size: 14px;
    font-weight: 500;
    color: #666;
    background: #f5f5f5;
    transition: all 0.3s ease;
    white-space: nowrap;
    border: 1px solid transparent;
}

/* Left button - rounded left corners */
.nymobil-phone-option:first-child span {
    border-radius: 25px 0 0 25px;
}

/* Right button - rounded right corners */
.nymobil-phone-option:last-child span {
    border-radius: 0 25px 25px 0;
}

/* Active/Checked state */
.nymobil-phone-option input[type="radio"]:checked+span {
    background: #f5f5f5;
    color: #333;
    border: 2px solid #37BCF4;
}

/* Hover effect */
.nymobil-phone-option:hover span {
    background: #e8e8e8;
}

.nymobil-phone-option input[type="radio"]:checked+span:hover {
    background: #f5f5f5;
    border-color: #37BCF4;
}

/* Focus state for accessibility */
.nymobil-phone-option input[type="radio"]:focus+span {
    /* outline: 2px solid #333; */
    outline-offset: 2px;
}

p.nymobil-personal-input-example,
p.nymobil-phone-input-example {
    font-size: 14px;
}

span.stag {
    font-size: .875rem;
    display: block;
}

.nymobil-section.nymobil-section-number {
    padding-top: 0px;
    padding-bottom: 0px;
}

.nymobil-section.nymobil-section-number label,
.nymobil-section.nymobil-section--personal-info label {
    font-size: 16px;
    font-weight: 700;
    width: 50%;
    text-align: center;
}

span.nymobil-device-price {
    font-weight: 700;
}

span.nymobil-base-price {
    font-size: 24px;
    font-weight: 700;
    color: #333;
    line-height: 1;
}

span.nymobil-base-price span.woocommerce-Price-amount.amount {
    margin-top: 40px !important;
    display: block;
}

section.related.products span.nymobil-base-price span.woocommerce-Price-amount.amount {
    margin-top: 0px !important;
}