
/* ITNETCOM_GLOBAL_TYPOGRAPHY_SYSTEM_V1_1_BEGIN */

/*
 * ITNETCOM GLOBAL TYPOGRAPHY
 *
 * TITLE       Arial / Helvetica / 700
 * SUBTITLE    Arial / Helvetica / 600
 * TEXT        Arial / Helvetica / 400
 * EMPHASIS    Arial / Helvetica / 600
 *
 * Font-size, color, margin, padding and layout remain page-specific.
 */

:root {
    --itn-font:
        Arial,
        Helvetica,
        sans-serif;

    --itn-title-weight: 700;
    --itn-subtitle-weight: 600;
    --itn-text-weight: 400;
}


/* =========================================================
   COMMON FONT FAMILY
   ========================================================= */

html,
body,
body p,
body li,
body dt,
body dd,
body th,
body td,
body label,
body legend,
body input,
body textarea,
body select,
body option,
body button,
body a,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body strong,
body b {
    font-family:
        var(--itn-font) !important;
}


/* =========================================================
   NORMAL TEXT
   ========================================================= */

body {
    font-weight:
        var(--itn-text-weight);
}

body p,
body dt,
body dd,
body td,
body address,
body blockquote,
body figcaption,
body small,
body textarea,
body select,
body option,
body input:not([type="button"]):not([type="submit"]):not([type="reset"]) {
    font-weight:
        var(--itn-text-weight) !important;
}


/* Product description = body reference */

body .product-short-description,
body .product-short-description p,
body .product-short-description li,
body .product-description,
body .product-description p,
body .product-description li,
body .product-description-content,
body .product-description-content p,
body .product-description-content li {
    font-family:
        var(--itn-font) !important;

    font-weight:
        var(--itn-text-weight) !important;
}


/* =========================================================
   TITLES
   Reference = shop product title
   ========================================================= */

body h1,
body h2,
body h3,
body .page-title,
body .section-title,
body .card-title,
body .product-title,
body .shop-product-name,
body .latest-product-name,
body #product-title,
body #product-main-title,
body .product-related-name,
body .product-related-title,
body .product-description-title {
    font-family:
        var(--itn-font) !important;

    font-weight:
        var(--itn-title-weight) !important;
}


/* Account title hierarchy */

body .account-page .account-hero h1,
body .account-page .account-panel-heading h2,
body .account-page .account-order-card h3,
body .account-page .account-empty h3,
body .account-page .account-rma-side h3,
body .account-page .account-login-card h1 {
    font-family:
        var(--itn-font) !important;

    font-weight:
        var(--itn-title-weight) !important;
}


/* =========================================================
   SUBTITLES / LABELS
   ========================================================= */

body h4,
body h5,
body h6,
body label,
body legend,
body th,
body .subtitle,
body .section-subtitle,
body .page-subtitle,
body .eyebrow,
body .kicker,
body .account-kicker,
body .account-panel-heading p,
body .account-order-label,
body .account-field {
    font-family:
        var(--itn-font) !important;

    font-weight:
        var(--itn-subtitle-weight) !important;
}


/* =========================================================
   HEADER / NAVIGATION / UI
   ========================================================= */

body header a,
body header button,
body nav a,
body nav button,
body .main-nav a,
body .main-navigation a,
body .main-nav-desktop-level1-item a,
body .main-nav-subcat-title,
body .main-nav-subcat-title a {
    font-family:
        var(--itn-font) !important;

    font-weight:
        var(--itn-subtitle-weight) !important;
}


/* Deeper navigation = normal text */

body .main-nav-subcat-links a,
body .main-nav-l4-links a {
    font-weight:
        var(--itn-text-weight) !important;
}


/* =========================================================
   BUTTONS / CTA
   ========================================================= */

body button,
body input[type="button"],
body input[type="submit"],
body input[type="reset"],
body .btn,
body .button,
body .account-primary-btn,
body .account-secondary-btn,
body .account-logout,
body .account-order-actions a {
    font-family:
        var(--itn-font) !important;

    font-weight:
        var(--itn-subtitle-weight) !important;
}


/* =========================================================
   CONTROLLED EMPHASIS
   ========================================================= */

body strong,
body b {
    font-weight:
        var(--itn-subtitle-weight) !important;
}


/* Customer values remain normal text */

body .account-page .account-data-grid strong,
body .account-page .account-rma-card strong {
    font-weight:
        var(--itn-text-weight) !important;
}


/* =========================================================
   FOOTER
   ========================================================= */

body footer p,
body footer li,
body footer a,
body footer address,
body footer small {
    font-family:
        var(--itn-font) !important;

    font-weight:
        var(--itn-text-weight) !important;
}

body footer h1,
body footer h2,
body footer h3,
body footer h4,
body footer h5,
body footer h6 {
    font-family:
        var(--itn-font) !important;

    font-weight:
        var(--itn-title-weight) !important;
}


/* =========================================================
   ICON FONT PROTECTION
   ========================================================= */

body .material-symbols-outlined {
    font-family:
        "Material Symbols Outlined" !important;

    font-weight:
        normal !important;
}

body .material-icons,
body .material-icons-outlined {
    font-family:
        "Material Icons" !important;

    font-weight:
        normal !important;
}


/* =========================================================
   CODE FONT PROTECTION
   ========================================================= */

body code,
body pre,
body kbd,
body samp {
    font-family:
        ui-monospace,
        SFMono-Regular,
        Menlo,
        Monaco,
        Consolas,
        "Liberation Mono",
        monospace !important;
}

/* ITNETCOM_GLOBAL_TYPOGRAPHY_SYSTEM_V1_1_END */


/* =========================================================
   ITNETCOM_GLOBAL_TYPOGRAPHY_REFINEMENT_V1_2_BEGIN

   Refinement only:
   - normal header navigation 500
   - active navigation / CTA 600
   - consistent micro-label tracking
   - customer/product data 400
   - product title line-height 1.12
   - visible product prices 700
   ========================================================= */


/* ---------------------------------------------------------
   HEADER NAVIGATION
   Normal navigation is quieter than titles and CTAs.
   --------------------------------------------------------- */

body header a,
body .main-nav a,
body .main-navigation a {
    font-weight: 500 !important;
    letter-spacing: .01em !important;
}


/* Buttons/triggers such as category CTA remain secondary-bold. */

body header button,
body .main-nav button,
body .main-navigation button {
    font-weight: 600 !important;
    letter-spacing: .01em !important;
}


/* Current / active navigation. */

body header a[aria-current="page"],
body .main-nav a[aria-current="page"],
body .main-navigation a[aria-current="page"],
body .main-nav .is-active > a,
body .main-nav .active > a,
body .main-navigation .is-active > a,
body .main-navigation .active > a {
    font-weight: 600 !important;
}


/* Deep category links remain reading-weight. */

body .main-nav-subcat-links a,
body .main-nav-l4-links a {
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}


/* ---------------------------------------------------------
   ACCOUNT SIDEBAR
   --------------------------------------------------------- */

body .account-page aside a,
body .account-page .account-sidebar a,
body .account-page .account-side-nav a,
body .account-page .account-menu a {
    font-weight: 500 !important;
    letter-spacing: 0 !important;
}

body .account-page aside a.is-active,
body .account-page aside a.active,
body .account-page aside a[aria-current="page"],
body .account-page .account-sidebar a.is-active,
body .account-page .account-sidebar a.active,
body .account-page .account-sidebar a[aria-current="page"],
body .account-page .account-side-nav a.is-active,
body .account-page .account-side-nav a.active,
body .account-page .account-side-nav a[aria-current="page"],
body .account-page .account-menu a.is-active,
body .account-page .account-menu a.active,
body .account-page .account-menu a[aria-current="page"] {
    font-weight: 600 !important;
}


/* ---------------------------------------------------------
   MICRO LABELS
   Same visual rhythm across account, commerce and editorial UI.
   --------------------------------------------------------- */

body .account-kicker,
body .account-panel-heading p,
body .account-order-label,
body .account-field,
body .account-data-grid span,
body .account-rma-card p,
body .latest-product-tag,
body .shop-product-tag,
body .eyebrow,
body .kicker,
body [class*="-eyebrow"],
body [class*="-kicker"] {
    font-weight: 600 !important;
    letter-spacing: .05em !important;
}


/* ---------------------------------------------------------
   PRODUCT METADATA / CUSTOMER VALUES
   Data is information, not a heading.
   --------------------------------------------------------- */

body .latest-product-brand,
body .latest-product-code,
body .latest-product-tech,
body .shop-product-brand,
body .shop-product-code,
body .shop-product-tech {
    font-weight: 400 !important;
    letter-spacing: .03em !important;
}

body .account-page .account-data-grid strong,
body .account-page .account-rma-card strong {
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}


/* ---------------------------------------------------------
   PRODUCT TITLES
   Preserve 700 while improving multi-line rhythm.
   No size change.
   --------------------------------------------------------- */

body .shop-product-name,
body .latest-product-name,
body .product-title,
body #product-title,
body #product-main-title,
body .product-related-name,
body .product-related-title {
    font-weight: 700 !important;
    line-height: 1.12 !important;
}


/* ---------------------------------------------------------
   PRODUCT PRICES
   Important commercial information stays strong.
   --------------------------------------------------------- */

body .latest-product-price:not(.product-related-price-locked),
body .shop-product-price:not(.product-related-price-locked),
body .product-price:not(.product-related-price-locked) {
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}


/* ---------------------------------------------------------
   BUTTON / CTA TRACKING
   Remove aggressive legacy spacing.
   --------------------------------------------------------- */

body button,
body input[type="button"],
body input[type="submit"],
body input[type="reset"],
body .btn,
body .button,
body .account-primary-btn,
body .account-secondary-btn,
body .account-logout,
body .account-order-actions a {
    letter-spacing: .01em !important;
}


/* ---------------------------------------------------------
   NORMAL CONTENT
   Do not introduce decorative tracking into reading text.
   --------------------------------------------------------- */

body .product-short-description,
body .product-short-description p,
body .product-description,
body .product-description p,
body .product-description-content,
body .product-description-content p {
    letter-spacing: normal !important;
}


/* ITNETCOM_GLOBAL_TYPOGRAPHY_REFINEMENT_V1_2_END */


/* ITNETCOM_PRODUCT_TITLE_TYPOGRAPHY_V1_2_1_BEGIN */

@media (min-width: 1200px) {

    body #product-main-title,
    body .product-main .product-title {
        font-family:
            Arial,
            Helvetica,
            sans-serif !important;

        font-size:
            clamp(18px, 1.35vw, 24px) !important;

        font-weight:
            700 !important;

        line-height:
            1.06 !important;

        letter-spacing:
            -.025em !important;

        text-transform:
            uppercase !important;

        white-space:
            nowrap !important;

        overflow:
            hidden !important;

        text-overflow:
            ellipsis !important;

        display:
            block !important;

        width:
            100% !important;

        max-width:
            100% !important;
    }

}

/* ITNETCOM_PRODUCT_TITLE_TYPOGRAPHY_V1_2_1_END */


/* ITNETCOM_PRODUCT_TITLE_REAL_SELECTOR_V1_2_2_BEGIN */

/*
 * Runtime H1 proof:
 * <h1 id="product-title">...</h1>
 *
 * Desktop only.
 */

@media (min-width: 1200px) {

    body #product-title {
        font-family:
            Arial,
            Helvetica,
            sans-serif !important;

        font-size:
            clamp(18px, 1.35vw, 24px) !important;

        font-weight:
            700 !important;

        line-height:
            1.06 !important;

        letter-spacing:
            -.025em !important;

        text-transform:
            uppercase !important;

        white-space:
            nowrap !important;

        overflow:
            hidden !important;

        text-overflow:
            ellipsis !important;

        display:
            block !important;

        width:
            100% !important;

        max-width:
            100% !important;
    }

}

/* ITNETCOM_PRODUCT_TITLE_REAL_SELECTOR_V1_2_2_END */


/* ==============================================================
   ITNETCOM_GLOBAL_TYPOGRAPHY_RENDERING_V1_3_BEGIN

   Global typography normalization.

   Roles:
   - title:       700
   - subtitle/UI: 600
   - text/data:   400

   Main rendering strategy:
   - remove visual dependency on legacy 750/800/850/900/950
   - increase undersized readable text
   - prefer integer pixel sizes for compact UI/product typography
   - preserve layout, colors, carousel transforms and image effects
   ============================================================== */

:root {
    --itn-type-family: Arial, Helvetica, sans-serif;
    --itn-type-title: 700;
    --itn-type-subtitle: 600;
    --itn-type-text: 400;
}


/* --------------------------------------------------------------
   FAMILY
   -------------------------------------------------------------- */

html,
body,
input,
textarea,
select,
option,
button {
    font-family: var(--itn-type-family) !important;
}


/* --------------------------------------------------------------
   CORE READING TYPOGRAPHY
   -------------------------------------------------------------- */

body main p,
body main li,
body main dd,
body main blockquote,
body main figcaption {
    font-size: 15px !important;
    line-height: 1.60 !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
}

body main dt {
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

body main small {
    font-size: 12px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
}


/* --------------------------------------------------------------
   GLOBAL HEADINGS

   #product-title is explicitly excluded because its desktop
   contract is handled separately below.
   -------------------------------------------------------------- */

body main h1:not(#product-title) {
    font-size: 36px !important;
    line-height: 1.12 !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
}

body main h2 {
    font-size: 30px !important;
    line-height: 1.16 !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
}

body main h3 {
    font-size: 22px !important;
    line-height: 1.20 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}

body main h4 {
    font-size: 18px !important;
    line-height: 1.28 !important;
    font-weight: 600 !important;
}

body main h5,
body main h6 {
    font-size: 16px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}


/* Legacy title classes: normalize weight only, not size. */

body main [class*="title"] {
    font-weight: 700 !important;
}

body main [class*="subtitle"] {
    font-weight: 600 !important;
}

body main [class*="kicker"],
body main [class*="eyebrow"] {
    font-size: 12px !important;
    line-height: 1.30 !important;
    font-weight: 600 !important;
    letter-spacing: 0.05em !important;
}


/* --------------------------------------------------------------
   EMPHASIS
   -------------------------------------------------------------- */

body strong,
body b {
    font-weight: 600 !important;
}


/* --------------------------------------------------------------
   FORMS / UI / TABLES
   -------------------------------------------------------------- */

body main label,
body main legend {
    font-size: 13px !important;
    line-height: 1.40 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

body main input,
body main textarea,
body main select,
body main option {
    font-size: 14px !important;
    line-height: 1.40 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

body main button,
body main input[type="button"],
body main input[type="submit"],
body main input[type="reset"],
body main .btn,
body main .button {
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
}

body main th {
    font-size: 13px !important;
    line-height: 1.40 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

body main td {
    font-size: 14px !important;
    line-height: 1.50 !important;
    font-weight: 400 !important;
}


/* --------------------------------------------------------------
   BREADCRUMBS
   -------------------------------------------------------------- */

body [class*="breadcrumb"],
body [class*="breadcrumb"] a {
    font-size: 13px !important;
    line-height: 1.40 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}


/* --------------------------------------------------------------
   HEADER

   Keep navigation clear without legacy 800/900.
   -------------------------------------------------------------- */

body header a,
body header button,
body .main-nav a,
body .main-nav button,
body .main-navigation a,
body .main-navigation button {
    font-size: 13px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

body header input[type="search"],
body header input[type="text"] {
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}


/* --------------------------------------------------------------
   HOME PRODUCT CARDS
   -------------------------------------------------------------- */

body .latest-products-header h2,
body .home-product-section h2 {
    font-size: 30px !important;
    line-height: 1.16 !important;
    font-weight: 700 !important;
}

body .latest-products-intro {
    font-size: 15px !important;
    line-height: 1.55 !important;
    font-weight: 400 !important;
}

body .latest-product-card .latest-product-name {
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}

body .latest-product-card .latest-product-brand,
body .latest-product-card .latest-product-code,
body .latest-product-card .latest-product-tech {
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

body .latest-product-card .latest-product-tag {
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
}

body .latest-product-card .latest-product-stock {
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

body .latest-product-card .latest-product-price:not(.product-related-price-locked) {
    font-size: 17px !important;
    line-height: 1.20 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}

body .latest-product-card .b2b-price-reserved-title,
body .latest-product-card .b2b-price-reserved-action,
body .latest-product-card .product-related-price-lock {
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}


/* --------------------------------------------------------------
   SHOP / CATALOG
   -------------------------------------------------------------- */

body .shop-page .shop-kicker,
body .shop-page .shop-filter-kicker,
body .shop-page .shop-results-kicker {
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    letter-spacing: 0.05em !important;
}

body .shop-page .shop-filter-heading h2 {
    font-size: 18px !important;
    line-height: 1.20 !important;
    font-weight: 700 !important;
}

body .shop-page .shop-results-toolbar h2 {
    font-size: 20px !important;
    line-height: 1.20 !important;
    font-weight: 700 !important;
}

body .shop-page .shop-results-toolbar p {
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
}

body .shop-filter-panel .shop-field {
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

body .shop-filter-panel .shop-field input,
body .shop-filter-panel .shop-field select,
body .shop-sort-form select {
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
}

body .shop-category-panel,
body .shop-category-panel a {
    font-size: 13px !important;
    line-height: 1.40 !important;
    font-weight: 400 !important;
}

body .shop-product-card .shop-product-name {
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}

body .shop-product-card .shop-product-brand,
body .shop-product-card .shop-product-code,
body .shop-product-card .shop-product-tech {
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

body .shop-product-card .shop-product-tag {
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
}

body .shop-product-card .shop-product-stock {
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

body .shop-product-card .shop-product-price:not(.product-related-price-locked) {
    font-size: 16px !important;
    line-height: 1.20 !important;
    font-weight: 700 !important;
}

body .shop-product-card .b2b-price-reserved-title,
body .shop-product-card .b2b-price-reserved-action,
body .shop-product-card .product-related-price-lock {
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

body .shop-pagination a,
body .shop-pagination button {
    font-size: 13px !important;
    font-weight: 600 !important;
}


/* --------------------------------------------------------------
   PRODUCT PAGE

   Use integer desktop values instead of vw interpolation.
   This specifically replaces fractional computed sizes from V1.2.2.
   -------------------------------------------------------------- */

@media (min-width: 1440px) {
    body #product-title {
        font-size: 24px !important;
        line-height: 1.08 !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        text-transform: uppercase !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
}

@media (min-width: 1200px) and (max-width: 1439px) {
    body #product-title {
        font-size: 22px !important;
        line-height: 1.08 !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        text-transform: uppercase !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
}

body .product-short-description,
body .product-short-description p,
body .product-description,
body .product-description p,
body .product-description li,
body .product-description-content,
body .product-description-content p,
body .product-description-content li {
    font-size: 15px !important;
    line-height: 1.60 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

body .product-description-title,
body .product-page h2,
body .product-page h3:not(.product-related-name):not(.product-related-title) {
    font-weight: 700 !important;
}

body .product-related-name,
body .product-related-title {
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}

body .product-related-price-lock,
body .b2b-price-reserved-title,
body .b2b-price-reserved-action {
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
}


/* --------------------------------------------------------------
   ACCOUNT
   -------------------------------------------------------------- */

body .account-page h1 {
    font-size: 32px !important;
    line-height: 1.12 !important;
    font-weight: 700 !important;
}

body .account-page h2 {
    font-size: 24px !important;
    line-height: 1.18 !important;
    font-weight: 700 !important;
}

body .account-page h3 {
    font-size: 18px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

body .account-kicker,
body .account-panel-heading p,
body .account-order-label,
body .account-field {
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    letter-spacing: 0.05em !important;
}

body .account-tabs a,
body .account-primary-btn,
body .account-secondary-btn,
body .account-logout,
body .account-order-actions a {
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
}

body .account-data-grid span {
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
}

body .account-data-grid strong,
body .account-order-card strong,
body .account-rma-card strong {
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

body .account-order-card p,
body .account-rma-card p {
    font-size: 13px !important;
    line-height: 1.50 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

body .account-hero p,
body .account-login-copy {
    font-size: 15px !important;
    line-height: 1.55 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}


/* --------------------------------------------------------------
   SECONDARY / EDITORIAL / LEGAL PAGES
   -------------------------------------------------------------- */

body.itn-secondary-page main p,
body.itn-secondary-page main li {
    font-size: 16px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

body.itn-secondary-page main h1 {
    font-size: 36px !important;
    line-height: 1.12 !important;
    font-weight: 700 !important;
}

body.itn-secondary-page main h2 {
    font-size: 28px !important;
    line-height: 1.18 !important;
    font-weight: 700 !important;
}

body.itn-secondary-page main h3 {
    font-size: 21px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}


/* --------------------------------------------------------------
   PLACEHOLDERS
   -------------------------------------------------------------- */

body .itn-placeholder-title {
    font-size: 12px !important;
    line-height: 1.30 !important;
    font-weight: 700 !important;
}

body .itn-placeholder-subtitle {
    font-size: 12px !important;
    line-height: 1.30 !important;
    font-weight: 400 !important;
}


/* --------------------------------------------------------------
   FOOTER
   -------------------------------------------------------------- */

body .site-footer p,
body .site-footer li,
body .site-footer a,
body .site-footer .footer-text,
body .site-footer [class*="footer-description"] {
    font-size: 13px !important;
    line-height: 1.55 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

body .site-footer h2,
body .site-footer h3,
body .site-footer h4,
body .site-footer .footer-title,
body .site-footer [class*="footer-title"],
body .site-footer [class*="footer-heading"] {
    font-size: 13px !important;
    line-height: 1.30 !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
}

body .site-footer [class*="footer-bottom"],
body .site-footer [class*="footer-legal"],
body .site-footer [class*="footer-copy"],
body .site-footer [class*="footer-bottom"] a,
body .site-footer [class*="footer-legal"] a,
body .site-footer [class*="footer-copy"] a {
    font-size: 12px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
}


/* --------------------------------------------------------------
   MATERIAL ICON PROTECTION
   -------------------------------------------------------------- */

body .material-symbols-outlined,
body .material-symbols-rounded,
body .material-symbols-sharp {
    font-family: "Material Symbols Outlined" !important;
    font-weight: normal !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    white-space: nowrap !important;
}

body .material-icons,
body .material-icons-outlined {
    font-family: "Material Icons" !important;
    font-weight: normal !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}


/* --------------------------------------------------------------
   MONOSPACE PROTECTION
   -------------------------------------------------------------- */

body code,
body pre,
body kbd,
body samp {
    font-family:
        ui-monospace,
        SFMono-Regular,
        Menlo,
        Monaco,
        Consolas,
        "Liberation Mono",
        monospace !important;
}


/* --------------------------------------------------------------
   MOBILE

   Keep density but remove 8.5 / 9.5 / 10.5px readable text.
   -------------------------------------------------------------- */

@media (max-width: 820px) {

    body main p,
    body main li,
    body main dd {
        font-size: 15px !important;
        line-height: 1.60 !important;
    }

    body main h1:not(#product-title) {
        font-size: 28px !important;
    }

    body main h2 {
        font-size: 24px !important;
    }

    body main h3 {
        font-size: 20px !important;
    }

    body .latest-product-card .latest-product-name,
    body .shop-product-card .shop-product-name,
    body .product-related-name,
    body .product-related-title {
        font-size: 13px !important;
        line-height: 1.28 !important;
    }

    body .latest-product-card .latest-product-brand,
    body .latest-product-card .latest-product-code,
    body .latest-product-card .latest-product-tech,
    body .shop-product-card .shop-product-brand,
    body .shop-product-card .shop-product-code,
    body .shop-product-card .shop-product-tech,
    body .latest-product-card .latest-product-stock,
    body .shop-product-card .shop-product-stock,
    body .latest-product-card .latest-product-tag,
    body .shop-product-card .shop-product-tag {
        font-size: 12px !important;
    }

    body.itn-secondary-page main p,
    body.itn-secondary-page main li {
        font-size: 15px !important;
    }

    body .site-footer p,
    body .site-footer li,
    body .site-footer a,
    body .site-footer .footer-text {
        font-size: 13px !important;
    }

}


/* ITNETCOM_GLOBAL_TYPOGRAPHY_RENDERING_V1_3_END */


/* ==============================================================
   ITNETCOM_GLOBAL_TYPOGRAPHY_LAYOUT_V1_3_1_BEGIN
   ============================================================== */


/* --------------------------------------------------------------
   PRODUCT H1
   -------------------------------------------------------------- */

@media (min-width: 1800px) {

    body #product-title {
        font-size: 22px !important;
        line-height: 1.08 !important;
        font-weight: 700 !important;
        letter-spacing: -0.03em !important;

        text-transform: uppercase !important;

        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

}

@media (min-width: 1200px) and (max-width: 1799px) {

    body #product-title {
        font-size: 20px !important;
        line-height: 1.08 !important;
        font-weight: 700 !important;
        letter-spacing: -0.03em !important;

        text-transform: uppercase !important;

        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

}


/* --------------------------------------------------------------
   HOME PRODUCT CARDS
   -------------------------------------------------------------- */

body .latest-product-card .latest-product-name {
    font-size: 15px !important;
    line-height: 1.28 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}

body .latest-product-card .latest-product-brand,
body .latest-product-card .latest-product-code,
body .latest-product-card .latest-product-tech {
    font-size: 13px !important;
    line-height: 1.38 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}


/* --------------------------------------------------------------
   RELATED PRODUCTS
   -------------------------------------------------------------- */

body .product-related-name,
body .product-related-title {
    font-size: 15px !important;
    line-height: 1.28 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}

body .product-related-brand,
body .product-related-code,
body .product-related-tech,
body .product-related-meta {
    font-size: 13px !important;
    line-height: 1.38 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}


/* --------------------------------------------------------------
   LEGAL DOCUMENT PAGES

   Conditions / Returns / Privacy.
   Registration itself is excluded because .legal-document
   must exist inside the page.
   -------------------------------------------------------------- */

body.itn-secondary-page
main.registration-page:has(.legal-document) {
    background: #fff !important;
}

body.itn-secondary-page
main.registration-page:has(.legal-document)
.registration-hero {
    padding: 44px 0 36px !important;

    border-bottom: 1px solid #e5e7eb !important;
}

body.itn-secondary-page
main.registration-page:has(.legal-document)
.registration-hero-inner {
    width: min(1120px, calc(100% - 48px)) !important;
    max-width: 1120px !important;

    margin-left: auto !important;
    margin-right: auto !important;
}

body.itn-secondary-page
main.registration-page:has(.legal-document)
.registration-hero-inner > p:last-child {
    max-width: 820px !important;

    margin-top: 14px !important;

    font-size: 16px !important;
    line-height: 1.60 !important;
    font-weight: 400 !important;
}

body.itn-secondary-page
main.registration-page:has(.legal-document)
.registration-section {
    padding: 0 0 68px !important;
}

body.itn-secondary-page .legal-document {
    width: min(1120px, calc(100% - 48px)) !important;
    max-width: 1120px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-top: 42px !important;
}

body.itn-secondary-page .legal-document > h2,
body.itn-secondary-page .legal-document > p,
body.itn-secondary-page .legal-document > ul,
body.itn-secondary-page .legal-document > ol {
    max-width: 960px !important;

    margin-left: auto !important;
    margin-right: auto !important;
}

body.itn-secondary-page .legal-document > h2 {
    margin-top: 42px !important;
    margin-bottom: 16px !important;

    padding-top: 28px !important;

    border-top: 1px solid #e5e7eb !important;

    font-size: 23px !important;
    line-height: 1.24 !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
}

body.itn-secondary-page .legal-document > h2:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;

    border-top: 0 !important;
}

body.itn-secondary-page .legal-document p,
body.itn-secondary-page .legal-document li {
    font-size: 16px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

body.itn-secondary-page .legal-document p {
    margin-top: 0 !important;
    margin-bottom: 16px !important;
}

body.itn-secondary-page .legal-document ul,
body.itn-secondary-page .legal-document ol {
    margin-top: 12px !important;
    margin-bottom: 24px !important;

    padding-left: 24px !important;
}

body.itn-secondary-page .legal-document li + li {
    margin-top: 8px !important;
}

body.itn-secondary-page .legal-document strong,
body.itn-secondary-page .legal-document b {
    font-weight: 600 !important;
}

body.itn-secondary-page .legal-document a {
    font-weight: 500 !important;

    text-decoration-thickness: 1px !important;
    text-underline-offset: 3px !important;
}


/* --------------------------------------------------------------
   CHI SIAMO
   -------------------------------------------------------------- */

body.itn-secondary-page main.about-simple
.about-simple__hero {
    padding: 44px 0 48px !important;
}

body.itn-secondary-page main.about-simple
.about-simple__hero .container,
body.itn-secondary-page main.about-simple
.about-simple__section .container {
    width: min(1120px, calc(100% - 48px)) !important;
    max-width: 1120px !important;

    margin-left: auto !important;
    margin-right: auto !important;
}

body.itn-secondary-page main.about-simple
.about-simple__lead {
    max-width: 800px !important;

    margin-top: 16px !important;

    font-size: 16px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

body.itn-secondary-page main.about-simple
.about-simple__section {
    padding: 48px 0 !important;

    border-top: 1px solid #e5e7eb !important;
}

body.itn-secondary-page main.about-simple
.about-simple__row {
    display: grid !important;
    grid-template-columns: 170px minmax(0, 1fr) !important;

    gap: 56px !important;
    align-items: start !important;
}

body.itn-secondary-page main.about-simple
.about-simple__label {
    margin: 4px 0 0 !important;

    font-size: 12px !important;
    line-height: 1.30 !important;
    font-weight: 600 !important;

    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
}

body.itn-secondary-page main.about-simple
.about-simple__content {
    max-width: 820px !important;
}

body.itn-secondary-page main.about-simple
.about-simple__content h2 {
    margin-top: 0 !important;
    margin-bottom: 18px !important;

    font-size: 28px !important;
    line-height: 1.18 !important;
    font-weight: 700 !important;
}

body.itn-secondary-page main.about-simple
.about-simple__content p {
    font-size: 16px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

body.itn-secondary-page main.about-simple
.about-simple__list {
    margin-top: 24px !important;
    padding-left: 0 !important;

    list-style: none !important;

    border-top: 1px solid #e5e7eb !important;
}

body.itn-secondary-page main.about-simple
.about-simple__list li {
    position: relative !important;

    margin: 0 !important;
    padding: 16px 0 16px 28px !important;

    border-bottom: 1px solid #e5e7eb !important;

    font-size: 15px !important;
    line-height: 1.50 !important;
    font-weight: 600 !important;
}

body.itn-secondary-page main.about-simple
.about-simple__list li::before {
    content: "" !important;

    position: absolute !important;
    top: 27px !important;
    left: 0 !important;

    width: 12px !important;
    height: 2px !important;

    background: #ff171f !important;
}


/* --------------------------------------------------------------
   COOKIE / INFO PAGE
   -------------------------------------------------------------- */

body.itn-secondary-page main.info-page
.info-page__hero {
    padding: 44px 0 46px !important;
}

body.itn-secondary-page main.info-page
.info-page__hero .container,
body.itn-secondary-page main.info-page
.info-page__section .container {
    width: min(1120px, calc(100% - 48px)) !important;
    max-width: 1120px !important;

    margin-left: auto !important;
    margin-right: auto !important;
}

body.itn-secondary-page main.info-page
.info-page__lead {
    max-width: 820px !important;

    margin-top: 16px !important;

    font-size: 16px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

body.itn-secondary-page main.info-page
.info-page__section {
    padding: 44px 0 !important;

    border-top: 1px solid #e5e7eb !important;
}

body.itn-secondary-page main.info-page
.info-page__row {
    display: grid !important;
    grid-template-columns: 170px minmax(0, 1fr) !important;

    gap: 56px !important;
    align-items: start !important;
}

body.itn-secondary-page main.info-page
.info-page__label {
    margin: 4px 0 0 !important;

    font-size: 12px !important;
    line-height: 1.30 !important;
    font-weight: 600 !important;

    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
}

body.itn-secondary-page main.info-page
.info-page__content {
    max-width: 820px !important;
}

body.itn-secondary-page main.info-page
.info-page__content h2 {
    margin-top: 0 !important;
    margin-bottom: 18px !important;

    font-size: 26px !important;
    line-height: 1.20 !important;
    font-weight: 700 !important;
}

body.itn-secondary-page main.info-page
.info-page__content p,
body.itn-secondary-page main.info-page
.info-page__content li,
body.itn-secondary-page main.info-page
.info-page__content dd {
    font-size: 16px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

body.itn-secondary-page main.info-page
.info-page__facts {
    display: grid !important;
    grid-template-columns: 1fr !important;

    gap: 12px !important;

    margin-top: 24px !important;
    margin-bottom: 28px !important;
}

body.itn-secondary-page main.info-page
.info-page__fact {
    padding: 16px 18px !important;

    border: 1px solid #e5e7eb !important;
    border-radius: 10px !important;

    background: #fafafa !important;
}

body.itn-secondary-page main.info-page
.info-page__fact dt {
    margin-bottom: 6px !important;

    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

body.itn-secondary-page main.info-page
.info-page__fact dd {
    margin: 0 !important;
}


/* --------------------------------------------------------------
   SPEDIZIONI / MERCHANT SHIPPING

   Dedicated runtime structure:
   main.merchant-shipping
   .merchant-shipping__intro
   .merchant-shipping__section
   -------------------------------------------------------------- */

body main.merchant-shipping {
    width: min(1120px, calc(100% - 48px)) !important;
    max-width: 1120px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-top: 44px !important;
    padding-bottom: 68px !important;
}

body main.merchant-shipping
.merchant-shipping__intro,
body main.merchant-shipping
.merchant-shipping__section {
    width: 100% !important;
    max-width: 960px !important;

    margin-left: auto !important;
    margin-right: auto !important;
}

body main.merchant-shipping
.merchant-shipping__intro {
    padding-bottom: 34px !important;
}

body main.merchant-shipping
.merchant-shipping__intro > p:first-child {
    margin: 0 0 14px !important;

    font-size: 12px !important;
    line-height: 1.30 !important;
    font-weight: 600 !important;

    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;

    color: #e30613 !important;
}

body main.merchant-shipping h1 {
    margin-top: 0 !important;
    margin-bottom: 18px !important;

    font-size: 36px !important;
    line-height: 1.12 !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
}

body main.merchant-shipping
.merchant-shipping__intro p:not(:first-child) {
    margin-top: 0 !important;
    margin-bottom: 14px !important;

    font-size: 16px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

body main.merchant-shipping
.merchant-shipping__intro strong {
    font-weight: 600 !important;
}

body main.merchant-shipping
.merchant-shipping__section {
    margin-top: 0 !important;

    padding-top: 28px !important;
    padding-bottom: 28px !important;

    border-top: 1px solid #e5e7eb !important;
}

body main.merchant-shipping
.merchant-shipping__section h2 {
    margin-top: 0 !important;
    margin-bottom: 16px !important;

    font-size: 23px !important;
    line-height: 1.24 !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
}

body main.merchant-shipping
.merchant-shipping__section p,
body main.merchant-shipping
.merchant-shipping__section li {
    font-size: 16px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

body main.merchant-shipping
.merchant-shipping__section p {
    margin-top: 0 !important;
    margin-bottom: 14px !important;
}

body main.merchant-shipping
.merchant-shipping__section ul,
body main.merchant-shipping
.merchant-shipping__section ol {
    margin-top: 12px !important;
    margin-bottom: 16px !important;

    padding-left: 24px !important;
}

body main.merchant-shipping
.merchant-shipping__section strong {
    font-weight: 600 !important;
}

body main.merchant-shipping
.merchant-shipping__section a {
    font-weight: 500 !important;

    text-decoration-thickness: 1px !important;
    text-underline-offset: 3px !important;
}


/* --------------------------------------------------------------
   CHECKOUT ONLY
   -------------------------------------------------------------- */

body .checkout-page label,
body .checkout-form label,
body [class*="checkout-"] label {
    font-size: 13px !important;
    line-height: 1.40 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

body .checkout-page input,
body .checkout-page textarea,
body .checkout-page select,
body .checkout-form input,
body .checkout-form textarea,
body .checkout-form select,
body [class*="checkout-"] input,
body [class*="checkout-"] textarea,
body [class*="checkout-"] select {
    font-size: 14px !important;
    line-height: 1.40 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

body .checkout-page small,
body .checkout-page .checkout-help,
body .checkout-page .checkout-note,
body .checkout-page .checkout-field-help,
body .checkout-page .checkout-method p,
body .checkout-page .checkout-method small,
body .checkout-form small,
body [class*="checkout-"] small {
    font-size: 13px !important;
    line-height: 1.50 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}


/* --------------------------------------------------------------
   FOOTER
   -------------------------------------------------------------- */

body footer p,
body footer li,
body footer a,
body footer address {
    font-size: 14px !important;
    line-height: 1.55 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

body footer h2,
body footer h3,
body footer h4,
body footer .footer-title,
body footer [class*="footer-heading"] {
    font-size: 14px !important;
    line-height: 1.30 !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
}

body footer [class*="footer-bottom"],
body footer [class*="footer-bottom"] a,
body footer [class*="footer-copy"],
body footer [class*="footer-copy"] a,
body footer [class*="footer-legal"],
body footer [class*="footer-legal"] a {
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}


/* --------------------------------------------------------------
   MOBILE SECONDARY LAYOUTS
   -------------------------------------------------------------- */

@media (max-width: 820px) {

    body.itn-secondary-page
    main.registration-page:has(.legal-document)
    .registration-hero-inner,

    body.itn-secondary-page .legal-document,

    body.itn-secondary-page main.about-simple
    .about-simple__hero .container,

    body.itn-secondary-page main.about-simple
    .about-simple__section .container,

    body.itn-secondary-page main.info-page
    .info-page__hero .container,

    body.itn-secondary-page main.info-page
    .info-page__section .container,

    body main.merchant-shipping {
        width: min(100% - 36px, 1120px) !important;
    }

    body.itn-secondary-page .legal-document {
        padding-top: 30px !important;
    }

    body.itn-secondary-page .legal-document > h2 {
        margin-top: 34px !important;
        padding-top: 24px !important;

        font-size: 21px !important;
    }

    body.itn-secondary-page .legal-document p,
    body.itn-secondary-page .legal-document li {
        font-size: 15px !important;
    }

    body.itn-secondary-page main.about-simple
    .about-simple__row,

    body.itn-secondary-page main.info-page
    .info-page__row {
        display: block !important;
    }

    body.itn-secondary-page main.about-simple
    .about-simple__label,

    body.itn-secondary-page main.info-page
    .info-page__label {
        margin-bottom: 12px !important;
    }

    body.itn-secondary-page main.about-simple
    .about-simple__section,

    body.itn-secondary-page main.info-page
    .info-page__section {
        padding-top: 34px !important;
        padding-bottom: 34px !important;
    }

    body main.merchant-shipping {
        padding-top: 30px !important;
        padding-bottom: 46px !important;
    }

    body main.merchant-shipping h1 {
        font-size: 28px !important;
    }

    body main.merchant-shipping
    .merchant-shipping__intro p:not(:first-child),

    body main.merchant-shipping
    .merchant-shipping__section p,

    body main.merchant-shipping
    .merchant-shipping__section li {
        font-size: 15px !important;
        line-height: 1.65 !important;
    }

    body main.merchant-shipping
    .merchant-shipping__section h2 {
        font-size: 21px !important;
    }

}


/* ITNETCOM_GLOBAL_TYPOGRAPHY_LAYOUT_V1_3_1_END */


/* ITNETCOM_ABOUT_LIST_LAYOUT_FIX_V1_3_1A_BEGIN */

/*
 * Chi siamo > Cosa facciamo ogni giorno
 * Neutralize legacy grid and restore normal text flow.
 */

body.itn-secondary-page main.about-simple
.about-simple__list {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

body.itn-secondary-page main.about-simple
.about-simple__list li {
    display: block !important;

    position: relative !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    box-sizing: border-box !important;

    grid-template-columns: none !important;
    grid-template-rows: none !important;
    grid-auto-flow: row !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;

    margin: 0 !important;
    padding: 16px 0 16px 28px !important;
}

body.itn-secondary-page main.about-simple
.about-simple__list li::before {
    position: absolute !important;

    left: 0 !important;
    top: 27px !important;

    width: 12px !important;
    height: 2px !important;

    margin: 0 !important;
}

@media (max-width: 820px) {

    body.itn-secondary-page main.about-simple
    .about-simple__list li {
        display: block !important;

        width: 100% !important;
        min-width: 0 !important;

        padding-left: 24px !important;

        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
    }

}

/* ITNETCOM_ABOUT_LIST_LAYOUT_FIX_V1_3_1A_END */
