/* Közös tipográfia a teljes vásárlói felülethez. */
:root {
    --oev-text-body: 16px;
    --oev-text-note: 14px;
    --oev-text-control: 14px;
    --oev-title-small: 18px;
    --oev-title-card: 20px;
    --oev-title-panel: 24px;
    --oev-title-section: clamp(25px, 2.4vw, 28px);
    --oev-title-page: clamp(28px, 3vw, 32px);
    --oev-title-hero: clamp(34px, 4.4vw, 44px);
    --oev-weight-regular: 400;
    --oev-weight-medium: 500;
    --oev-weight-semibold: 600;
}

body {
    font-size: var(--oev-text-body);
    font-weight: var(--oev-weight-regular);
    line-height: 1.5;
}

:where(h1, h2, h3, h4, h5, h6) {
    font-weight: var(--oev-weight-semibold);
    line-height: 1.3;
}

:where(strong, b) { font-weight: var(--oev-weight-semibold); }

.hero-mini-pill,
.hero-kicker { font-size: 12px; }

/* Minden szöveges mező és választó azonos méretet használ. */
input,
textarea,
select,
.form-field input,
.form-field textarea,
.form-field select,
.catalog-request-field input,
.catalog-request-field textarea,
.hero-search-form input,
.catalog-search-form input,
.lang-switcher select,
.mobile-lang-switcher select,
.sort-select,
.catalog-category-select-wrap select,
.catalog-brand-select-wrap select,
.catalog-model-select-wrap select,
.vehicle-products-page .vehicle-category-select-wrap select {
    font-size: var(--oev-text-control);
    font-weight: var(--oev-weight-regular);
    line-height: 1.5;
}

input::placeholder,
textarea::placeholder,
.catalog-search-form input::placeholder {
    font-size: inherit;
    font-weight: var(--oev-weight-regular);
}

.lang-switcher select,
.mobile-lang-switcher select,
.catalog-category-select-wrap select,
.catalog-brand-select-wrap select,
.catalog-model-select-wrap select,
.vehicle-products-page .vehicle-category-select-wrap select {
    font-weight: var(--oev-weight-medium);
}

/* Mobilon minden mező, választó és placeholder egységesen 16 px-es. */
@media (max-width: 900px) {
    :root { --oev-text-control: 16px; }
}

.form-field label,
.radio-group-label,
.catalog-request-field label {
    font-size: var(--oev-text-note);
    font-weight: var(--oev-weight-medium);
    letter-spacing: 0;
    text-transform: none;
}

.hero-content h1,
.catalog-head h1,
.article-header h1,
.not-found-card h1,
.page-shell > h1 {
    line-height: 1.2;
    letter-spacing: -.5px;
}

.hero-content h1 {
    font-weight: 700;
}

.gallery-heading,
.story-heading,
.section-header h2,
.section-head h2,
.catalog-discovery-head h2,
.catalog-products-intro h2 {
    line-height: 1.3;
    letter-spacing: -.4px;
}

/* A hosszabb szövegeknek kényelmesebb sorköz jár. */
.content-flow,
.story-block p,
.story-lead,
.article-lead,
.product-faq-answer p {
    line-height: 1.65;
}

.order-item-name { font-size: var(--oev-text-body); }
.order-line-price { font-size: var(--oev-text-body); }
.product-faq-head h2,
.article-faq h2 { font-size: var(--oev-title-panel); }
.summary-total-lines .checkout-price-net { font-size: var(--oev-title-card); }
.checkout-price-gross { font-weight: var(--oev-weight-regular); }
.order-item-sku,
.product-modal-part-number,
.order-success-product-copy small,
.order-success-summary-grid dt,
.foxpost-locker-meta span,
.pickup-location-meta span {
    font-weight: var(--oev-weight-regular);
    letter-spacing: 0;
    text-transform: none;
}

.document-frame :is(h1, h2, h3, h4, strong, b) {
    font-weight: var(--oev-weight-semibold) !important;
}

.document-frame :is(p, li, td, th, blockquote) {
    font-size: var(--oev-text-body) !important;
}
