/* Product/Details typography aligned with Blog/Details. */
.pd-hero,
.pd-main,
.pd-help-wrap,
.pd-product-travel-tools,
#skyPlanDetailsModal,
.pd-mobile-order-widget {
    font-family: 'Be Vietnam Pro', system-ui, -apple-system, 'Segoe UI', sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.pd-main,
.pd-help-wrap {
    font-size: 18px;
    line-height: 1.72;
}

.pd-hero-title {
    font-size: clamp(2rem, 3.4vw, 2.75rem);
    line-height: 1.18;
}

.pd-hero-lead {
    font-size: 19px;
    line-height: 1.75;
}

.pd-eyebrow,
.pd-price-eyebrow {
    font-size: 15px;
}

.pd-hero-rating,
.pd-pill,
.pd-price-range,
.pd-price-features li,
.pd-hero-sim-options strong {
    font-size: 16px;
    line-height: 1.55;
}

.pd-hero-sim-options small,
.pd-price-card small {
    font-size: 15px;
    line-height: 1.55;
}

.pd-card-head h2,
.pd-help-heading h2 {
    font-size: clamp(1.55rem, 2.6vw, 2rem);
    line-height: 1.3;
}

.pd-card-head h6,
.pd-step-header,
.pd-filter-msg,
.pd-order-row,
.pd-support-head strong,
.pd-carrier-info strong {
    font-size: 17px;
    line-height: 1.55;
}

.pd-coverage-option strong,
.pd-day-pill small,
.pd-data-option .data-label,
.pd-data-option .plan-count,
.pd-data-option .unlimited-badge,
.pd-plan-data small,
.pd-plan-features,
.pd-plan-price-old,
.pd-plan-detail-link,
.pd-order-selection-label,
.pd-order-total span:first-child,
.pd-trust small,
.pd-support-head small,
.pd-support-actions .btn {
    font-size: 15px;
}

.pd-coverage-option small {
    font-size: 15px;
    line-height: 1.5;
}

.pd-coverage-option strong,
.pd-plan-data strong {
    font-size: 17px;
}

.pd-plan-data-copy > span,
.pd-plan-data-copy small,
.pd-plan-duration small,
.pd-plan-feature small,
.pd-plan-speed,
.pd-plan-footer .pd-plan-price > small,
.pd-plan-footer .pd-plan-price-old,
.pd-plan-footer .pd-plan-discount,
.pd-plan-badge {
    font-size: 14px;
    line-height: 1.45;
}

.pd-plan-data-copy strong {
    font-size: 19px;
}

.pd-plan-duration strong {
    font-size: 18px;
}

.pd-plan-feature strong,
.pd-plan-footer .pd-plan-detail-link,
.pd-plan-actions .btn {
    font-size: 15px;
    line-height: 1.45;
}

.pd-plan-footer .pd-plan-price-main {
    font-size: 23px;
}

.pd-plan-footer .pd-plan-price-main span {
    font-size: 16px;
}

.pd-step-card h4,
.pd-country-guide h3,
.pd-device-head h3,
.pd-support-checklist h3,
.pd-rev-empty h4 {
    font-size: 20px;
    line-height: 1.4;
}

.pd-step-card p,
.pd-country-guide > p,
.pd-country-list li,
.pd-seo-body,
.pd-faq .accordion-body,
.pd-rev-comment,
.pd-rev-empty p,
.pd-help-intro > p:last-of-type {
    font-size: 18px;
    line-height: 1.75;
}

.pd-seo-body h3 {
    font-size: 1.4rem;
    line-height: 1.4;
}

.pd-seo-intro {
    margin: 0 0 1.35rem;
    padding: 1rem 1.1rem;
    border-left: 4px solid var(--c-primary, #4f46e5);
    border-radius: 0 12px 12px 0;
    color: #334155;
    background: #f5f7ff;
    font-size: 18px;
    line-height: 1.75;
}

.pd-faq .accordion-button,
.pd-trouble-faq summary {
    font-size: 17px;
    line-height: 1.55;
}

.pd-device-head span,
.pd-help-wrap small,
.pd-support-warning,
.pd-rev-score-meta,
.pd-rev-bar-row,
.pd-rev-sort label,
.pd-rev-date,
.pd-rev-stars,
.pd-rev-verified,
.pd-related-pill,
.pd-tool-link small {
    font-size: 15px;
    line-height: 1.55;
}

.pd-tool-link strong,
.pd-rev-head,
.pd-rev-title {
    font-size: 17px;
}

/* Related articles remain compact, but no longer use sub-15px reading text. */
.pd-blog-meta,
.pd-blog-read {
    font-size: 15px;
}

.pd-blog-content h3 {
    font-size: 20px;
    line-height: 1.45;
}

.pd-blog-content p {
    font-size: 16px;
    line-height: 1.65;
}

/* Package details modal: readable labels and values on desktop and mobile. */
.pd-plan-modal-heading small,
.pd-plan-modal-overview small,
.pd-plan-modal-section-head p,
#skyPlanDetailsModal .pd-coverage-country,
.pd-plan-modal-network small,
.pd-plan-modal-network em,
.pd-plan-modal-detail small,
.pd-plan-modal-footer > span {
    font-size: 14px;
    line-height: 1.45;
}

.pd-plan-modal-heading .modal-title {
    font-size: clamp(19px, 2vw, 23px);
}

.pd-plan-modal-overview strong,
.pd-plan-modal-network strong,
.pd-plan-modal-detail strong,
.pd-plan-modal-empty,
.pd-plan-modal-footer .btn {
    font-size: 15px;
    line-height: 1.5;
}

.pd-plan-modal-section-head h3 {
    font-size: 17px;
    line-height: 1.45;
}

.pd-plan-modal-overview .pd-plan-modal-price strong {
    font-size: 19px;
}

.pd-delivery-choice-head h2 {
    font-size: 20px;
}

.pd-delivery-choice-head p,
.pd-delivery-option strong,
.pd-delivery-option small,
.pd-delivery-total-note {
    font-size: 15px;
    line-height: 1.5;
}

@media (max-width: 767.98px) {
    .pd-main,
    .pd-help-wrap {
        font-size: 17px;
        line-height: 1.7;
    }

    .pd-hero-title {
        font-size: clamp(1.8rem, 8vw, 2.2rem);
    }

    .pd-hero-lead,
    .pd-step-card p,
    .pd-country-guide > p,
    .pd-country-list li,
    .pd-seo-body,
    .pd-faq .accordion-body,
    .pd-rev-comment,
    .pd-rev-empty p,
    .pd-help-intro > p:last-of-type {
        font-size: 17px;
        line-height: 1.72;
    }

    .pd-seo-intro {
        padding: .9rem 1rem;
        font-size: 17px;
        line-height: 1.72;
    }

    .pd-plan-modal-heading small,
    .pd-plan-modal-overview small,
    .pd-plan-modal-section-head p,
    #skyPlanDetailsModal .pd-coverage-country,
    .pd-plan-modal-network small,
    .pd-plan-modal-network em,
    .pd-plan-modal-detail small {
        font-size: 13px;
    }

    .pd-plan-modal-heading .modal-title {
        font-size: 18px;
    }

    .pd-plan-modal-overview strong,
    .pd-plan-modal-network strong,
    .pd-plan-modal-detail strong,
    .pd-plan-modal-section-head h3,
    .pd-plan-modal-footer .btn {
        font-size: 15px;
    }
}
