/* Shared by the storefront and admin. Only font families and sizes belong here. */
:root {
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-heading: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

    /* The homepage supplies the scale for equivalent content on every page. */
    --font-size-page-title: clamp(30px, 3.4vw, 46px);
    --font-size-section-title: clamp(28px, 3vw, 38px);
    --font-size-card-title: 17px;
    --font-size-body: 14px;
    --font-size-description: 14px;
    --font-size-copy: 14px;
    --font-size-control: 14px;
    --font-size-button: 14px;
    --font-size-button-small: 14px;
    --font-size-menu: 14px;
    --font-size-small: 14px;
    --font-size-caption: 14px;
    --font-size-product-name: 14px;
    --font-size-product-action: 14px;
    --font-size-price: 21px;
    --font-size-old-price: 14px;
}

body,
input,
select,
textarea,
label,
legend,
p,
.eyebrow,
.catalog-filter-panel,
.catalog-sort-form,
.catalog-active-filters {
    font-family: var(--font-body);
}

h1, h2, h3, h4, h5, h6,
th,
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
[role="button"],
.btn,
.btn-cancel,
.text-button,
.account-nav .account-signout,
nav,
.topbar a,
.header-link,
.logo-word,
.category-panel-account,
.category-panel-offer,
.category-chip-label,
.category-shortcut,
.collection-link-row,
.checkout-steps,
.footer-col a,
.footer-bottom a,
.footer-explore,
.hero-secondary,
.hero-tile-badge:not(.hero-tile-badge-sale),
.product-category-link,
.catalog-note-link,
.summary-heading > a,
.cart-feedback a,
.hero-tile-sale-content strong,
.service-strip strong,
.benefit strong,
.footer-perk strong,
.brand-strip-heading .eyebrow,
.catalog-sidebar-note > p,
.payment-section legend,
.product-accordions summary,
.product-name,
.product-title,
.order-items-table td[data-label="Ürün"] > strong,
.price,
.old-price,
.price-fmt {
    font-family: var(--font-heading);
}

html { overflow-x: hidden; }
body { font-size: var(--font-size-body); }

/* Main page titles follow the homepage hero; sections follow its product rails. */
.hero-tile-content h1,
.collection-heading h1,
.catalog-heading h1,
.product-detail-info h1,
.commerce-heading h1,
.commerce-empty h1,
.catalog-empty h1,
.success-card h1 {
    font-size: var(--font-size-page-title);
}

.section-title,
.related-heading .section-title,
.auth-content h1,
.empty-state h2,
.catalog-empty h2,
.commerce-empty h2,
.account-empty h2 {
    font-size: var(--font-size-section-title);
}

/* Keep compact panels at the scale of the homepage service headings. */
.commerce-summary h2,
.account-card h2,
.account-empty h3,
.form-section h2,
.payment-section legend {
    font-size: var(--font-size-card-title);
}

.auth-editorial-copy h2 { font-size: var(--font-size-page-title); }

.section-heading p,
.collection-heading p,
.catalog-heading p,
.commerce-heading p,
.success-card > p {
    font-size: var(--font-size-description);
}

.hero-tile-content p,
.auth-description,
.auth-editorial-copy p,
.empty-state p,
.catalog-empty p,
.commerce-empty p,
.account-empty p,
.summary-note,
.form-section-heading p,
.payment-intro {
    font-size: var(--font-size-copy);
}

.product-description,
.product-accordions details > p,
.profile-details dd,
.order-address {
    font-size: var(--font-size-body);
}

/* Field text stays Inter, even inside a navigation or a heading. */
.search-form input,
.footer-newsletter-form input,
.catalog-filter-form select,
.catalog-price-filter input,
.catalog-sort-form select,
.catalog-sort-form label,
.catalog-filter-label,
.catalog-stock-filter,
.product-quantity > label,
.product-specs,
.account-form label,
.account-form input::placeholder,
.account-form textarea::placeholder {
    font-size: var(--font-size-control);
}

.account-form input:not([type="radio"]):not([type="hidden"]),
.account-form select,
.account-form textarea {
    font-size: var(--font-size-control);
}

.main-nav,
.header-link,
.category-menu-btn,
.catalog-category-list > a,
.account-nav a,
.account-nav .account-signout {
    font-size: var(--font-size-menu);
}

.catalog-sidebar-title,
.catalog-filter-panel > summary,
.product-accordions summary {
    font-size: var(--font-size-body);
}

.catalog-toolbar > p,
.catalog-active-filters > a,
.catalog-filter-reset,
.summary-heading > a,
.field-hint,
.profile-details dt,
.order-info-list dt,
.order-info-list dd {
    font-size: var(--font-size-small);
}

.catalog-heading .eyebrow,
.collection-heading .eyebrow,
.commerce-heading .eyebrow,
.account-card-heading .eyebrow {
    font-size: var(--font-size-caption);
}

/* Product cards retain exactly the homepage sizes at each breakpoint. */
.product-name,
.related-products .product-name,
.summary-products h3,
.order-items-table td[data-label="Ürün"] > strong {
    font-size: var(--font-size-product-name);
}

/* Cart line items get more breathing room than a compact product-grid card. */
.cart-item-detail h2 { font-size: var(--font-size-card-title); }
.cart-unit-price,
.cart-remove,
.cart-stock-warning,
.cart-variant-label,
.cart-item .qty-label {
    font-size: var(--font-size-description);
}
.cart-item .qty-form input { font-size: var(--font-size-body); }

.price,
.related-products .price,
.cart-item-amount > strong,
.summary-grand-total dd,
.order-detail-total > strong {
    font-size: var(--font-size-price);
}

.old-price { font-size: var(--font-size-old-price); }
/* Product-detail prices keep their existing larger emphasis from catalog.css. */

/* Inline totals stay compact in order tables and checkout summaries. */
.summary-totals > div:not(.summary-grand-total) > dd,
.summary-products .price-fmt,
.recent-orders .price-fmt,
.order-table .price-fmt,
.success-details .price-fmt {
    font-size: var(--font-size-product-name);
}

.btn,
.btn-cancel,
.text-button,
.cart-item .qty-form button,
.cart-bottom-actions .text-button,
.catalog-filter-submit {
    font-size: var(--font-size-button);
}

.btn-sm,
.account-card-heading .btn-sm {
    font-size: var(--font-size-button-small);
}

.product-add,
.add-to-cart-form > .btn {
    font-size: var(--font-size-product-action);
}

@media (max-width: 991px) {
    :root { --font-size-card-title: 14px; }
}

@media (max-width: 767px) {
    :root {
        --font-size-page-title: 32px;
        --font-size-section-title: 28px;
        --font-size-price: 20px;
    }
}

@media (max-width: 600px) {
    /* Retain the existing mobile field size that avoids focus zoom on iOS. */
    .account-form input:not([type="radio"]):not([type="hidden"]),
    .account-form textarea {
        font-size: 16px;
    }
}

@media (max-width: 374px) {
    :root {
        --font-size-page-title: 28px;
        --font-size-price: 18px;
    }
}
