/* 3S Sistemas — light storefront palette */
:root {
    color-scheme: light;
    --bg-body: #f5f7fa;
    --bg-card: #ffffff;
    --bg-surface: #edf2f6;
    --bg-hover: #e5eef4;
    --primary: #087f9e;
    --secondary: #6554b8;
    --accent: #087f9e;
    --text-primary: #182534;
    --text-secondary: #506174;
    --text-muted: #718196;
    --border: #d8e1e9;
    --border-hover: #8bb8c7;
    --glass-bg: rgba(255, 255, 255, .92);
    --glass-border: #d8e1e9;
    --gradient: linear-gradient(135deg, #087f9e, #547fc5);
    --gradient-accent: linear-gradient(135deg, #087f9e, #27a590);
}

html, body { background-color: #f5f7fa; color: #182534; }
body { background: #f5f7fa; }
::selection { background: #bceaf1; color: #102432; }
:focus-visible { outline-color: #087f9e; }
a:hover { color: #075f78; }

/* Header and navigation */
.navbar, .navbar.scrolled, .page-home .navbar, .page-home .navbar.scrolled {
    background: linear-gradient(100deg, #a9d6e3 0%, #b5c1e8 100%);
    border-bottom-color: #8fb6ce;
    box-shadow: 0 4px 18px rgba(28, 49, 68, .055);
    backdrop-filter: blur(16px);
}
.navbar__brand-text, .page-home .navbar__brand-text { color: #182534; }
.navbar__link, .page-home .navbar__link { color: #526175; }
.navbar__link--active, .navbar__link[aria-current="page"], .page-home .navbar__link--active, .page-home .navbar__link[aria-current="page"] { color: #087f9e; background: transparent; }
.page-home .navbar__link[aria-current="page"], .page-home .navbar__link--active { color: #176e8b; }
.page-home .navbar__link:not(.navbar__link--active):not([aria-current="page"]):hover { color: #176e8b; }
.navbar__link--active::after, .navbar__link[aria-current="page"]::after { background: #087f9e; }
.navbar__link:not(.navbar__link--active):hover, .page-home .navbar__link:not(.navbar__link--active):hover { color: #087f9e; }
.navbar__search, .page-home .navbar__search, .navbar__search:focus-within, .page-home .navbar__search:focus-within { border-color: #cbd7e1; background: #f7f9fb; box-shadow: none; }
.navbar__search:focus-within, .page-home .navbar__search:focus-within { border-color: #087f9e; box-shadow: 0 0 0 3px rgba(8, 127, 158, .1); }
.navbar__search-input, .page-home .navbar__search-input { color: #182534; }
.navbar__search-input::placeholder, .page-home .navbar__search-input::placeholder { color: #78889a; }
.navbar__search-btn, .navbar__search .navbar__search-btn, .navbar__toggle, .page-home .navbar__search-btn, .page-home .navbar__toggle { color: #53667a; }
.navbar__search-btn:hover, .navbar__toggle:hover, .page-home .navbar__search-btn:hover, .page-home .navbar__toggle:hover { color: #087f9e; background: #e8f3f6; }
.navbar__filter-btn { color: #53667a; border-left-color: #d8e1e9; }
.navbar__filter-btn:hover, .navbar__filter-btn[aria-expanded="true"], .navbar__filter-btn.has-filters { color: #087f9e; background: #e8f3f6; }
.navbar__admin-btn, .page-home .navbar__admin-btn {
    color: #fff;
    border-color: #087f9e;
    background: linear-gradient(135deg, #087f9e, #176e9b);
    box-shadow: 0 4px 12px rgba(8, 91, 124, .2);
}
.navbar__admin-btn > i, .page-home .navbar__admin-btn > i { color: #fff; }
.navbar__admin-btn:hover, .page-home .navbar__admin-btn:hover { color: #fff; border-color: #075f78; background: #075f78; box-shadow: 0 6px 16px rgba(8, 91, 124, .25); }
.navbar__cart { color: #26384b; border-color: #cbd7e1; background: #fff; }
.navbar__cart:hover { color: #075f78; border-color: #087f9e; background: #f0f8fa; }
.navbar__dropdown-menu, .page-home .navbar__dropdown-menu { background: #fff; border-color: #d8e1e9; box-shadow: 0 16px 38px rgba(28, 49, 68, .13); }
.navbar__dropdown-item, .page-home .navbar__dropdown-item { color: #44566a; }
.navbar__dropdown-item:hover, .page-home .navbar__dropdown-item:hover { color: #087f9e; background: #eef6f8; }
.navbar__mobile-menu, .page-home .navbar__mobile-menu { background: #fff; border-color: #dce4eb; box-shadow: 0 16px 30px rgba(28, 49, 68, .11); }
.navbar__mobile-link, .page-home .navbar__mobile-link { color: #25374b; }
.navbar__mobile-link--sub { color: #53667a; }
.navbar__mobile-label { color: #087f9e; }
.navbar__filter-panel { color: #23364a; border-color: #d3dee7; background: #fff; box-shadow: 0 20px 50px rgba(27, 46, 63, .16); }
.navbar__filter-panel-head, .navbar__filter-fields label > span { color: #426173; }
.navbar__filter-panel-head button { border-color: #d2dce4; color: #596c7d; }
.navbar__filter-fields select { border-color: #ccd7e1; color: #223347; background: #f8fafc; color-scheme: light; }
.navbar__filter-extras label { color: #4b5e71; }
#headerFilterReset { color: #586b7d; }
#headerFilterApply { color: #fff; background: #087f9e; }
#headerFilterApply:hover { background: #076b85; }

/* Main hero: keep the animated product scene, brighten its canvas */
.page-home .hero--future {
    color: #182534;
    background:
        radial-gradient(ellipse at 76% 42%, rgba(34, 173, 198, .42), transparent 48%),
        radial-gradient(ellipse at 22% 82%, rgba(111, 91, 196, .3), transparent 48%),
        linear-gradient(112deg, #d7def2 0%, #bfe3eb 53%, #d9d7f1 100%);
}
.page-home .hero--future::after { background: linear-gradient(0deg, #f5f7fa, rgba(245, 247, 250, 0)); }
.hero__grid { opacity: .18; background-image: linear-gradient(rgba(44, 99, 125, .1) 1px, transparent 1px), linear-gradient(90deg, rgba(44, 99, 125, .1) 1px, transparent 1px); }
.hero__ambient--cyan { opacity: .25; }
.hero__ambient--violet { opacity: .13; }
.hero__light-sweep { opacity: .35; }
.page-home .hero__eyebrow { color: #426173; border-color: #c5dfe7; background: rgba(255, 255, 255, .68); }
.page-home .hero__title, .page-home .hero__title .hero__title-line { color: #172638; -webkit-text-fill-color: #172638; }
.page-home .hero__title .hero__title-line--glow { color: #087f9e; -webkit-text-fill-color: #087f9e; text-shadow: none; }
.page-home .hero__subtitle { color: #536579; }
.page-home .hero__actions .btn--primary { color: #fff; border-color: #087f9e; background: #087f9e; box-shadow: 0 8px 20px rgba(8, 127, 158, .16); }
.page-home .hero__actions .btn--primary:hover { color: #fff; border-color: #076b85; background: #076b85; box-shadow: 0 10px 24px rgba(8, 127, 158, .2); }
.page-home .hero__actions .btn--secondary { color: #4b3f8d; border-color: #c8c2e3; background: rgba(255, 255, 255, .72); }
.page-home .hero__actions .btn--secondary:hover { color: #44358e; border-color: #9d91cf; background: #f4f1ff; }
.hero__meta { color: #617387; }
.hero__meta-line { box-shadow: none; }
.hero__stage-core { opacity: .65; }
.hero__stage-ring--one { border-color: rgba(8, 127, 158, .2); box-shadow: none; }
.hero__stage-ring--two { border-color: rgba(101, 84, 184, .17); }
.hero__product-link, .hero__floating-card { color: #26384b; border-color: rgba(106, 148, 169, .45); background: rgba(255, 255, 255, .88); box-shadow: 0 14px 34px rgba(36, 66, 86, .14); }
.page-home .hero__product-link:hover, .page-home .hero__product-link:focus-visible { color: #26384b; background: rgba(255, 255, 255, .96); }
.page-home .hero__product-link strong { color: #26384b; }
.hero__product-link small, .hero__scene-tag { color: #516c80; }
.hero__floating-card strong, .hero__product-link i { color: #087f9e; }
.hero__scroll-cue, .hero__meta { color: #617387; }

/* Sections, categories and product catalogue */
.page-home #categorias, .page-home #productos, .page-home #destacados, #categorias, #productos, #destacados { background: #f5f7fa; }
.page-home #destacados, .page-home .catalog-shelf, .page-home .catalog-shelf:nth-of-type(even) { background: #edf2f6; }
.page-home #destacados { padding-bottom: 36px; }
.page-home .brand-showcase { position: relative; z-index: 1; padding: 24px 0 14px; background: linear-gradient(105deg, #edf6f8 0%, #f3f5fa 48%, #f2f0fa 100%); }
.brand-showcase__inner { display: grid; grid-template-columns: minmax(205px, .9fr) minmax(0, 3.1fr); align-items: center; gap: 28px; }
.brand-showcase__intro { min-width: 0; }
.brand-showcase__eyebrow { color: #087f9e; font: 600 .62rem 'IBM Plex Mono', monospace; letter-spacing: .11em; }
.brand-showcase__intro h2 { margin: 5px 0 0; color: #27394b; font-size: clamp(1rem, 1.4vw, 1.18rem); font-weight: 650; letter-spacing: -.035em; line-height: 1.25; }
.brand-showcase__carousel { display: flex; min-width: 0; align-items: center; gap: 12px; }
.brand-showcase__viewport { flex: 1 1 auto; min-width: 0; }
.brand-showcase__list { display: flex; align-items: center; gap: 9px; margin: 0; padding: 6px 2px 14px; list-style: none; }
.brand-showcase__item { display: grid; flex: 0 0 calc((100% - 36px) / 5); min-width: 0; min-height: 48px; place-items: center; padding: 5px 7px; border: 1px solid rgba(194, 211, 223, .74); border-radius: 9px; background: rgba(255, 255, 255, .66); box-shadow: 0 2px 7px rgba(39, 67, 88, .035); transition: border-color .18s ease, background-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.brand-showcase__item:hover { transform: translateY(-2px); border-color: #a9ced9; background: #fff; box-shadow: 0 6px 14px rgba(39, 67, 88, .08); }
.brand-showcase__logo { display: block; width: min(100%, 96px); height: 34px; object-fit: contain; }
.brand-showcase__mark { overflow: hidden; color: #53677b; font-size: clamp(.72rem, .86vw, .88rem); font-weight: 750; letter-spacing: -.035em; text-overflow: ellipsis; white-space: nowrap; }
.brand-showcase__mark--hp { color: #176ba8; font-size: 1.1rem; font-weight: 850; font-style: italic; }
.brand-showcase__mark--lenovo { color: #c5263c; font-size: .83rem; font-weight: 800; }
.brand-showcase__mark--samsung { color: #203c73; font-size: .76rem; font-weight: 800; letter-spacing: .035em; }
.brand-showcase__mark--epson { color: #176c9d; font-size: .82rem; font-weight: 800; letter-spacing: .065em; }
.brand-showcase__mark--tplink { color: #288051; font-size: .82rem; font-weight: 800; }
.brand-showcase__mark--redragon { color: #a8243d; font-size: .8rem; font-weight: 800; }
.brand-showcase__mark--amd { color: #34704e; font-size: .94rem; font-weight: 850; font-style: italic; }
.brand-showcase__mark--intel { color: #1476b8; font-size: .95rem; font-weight: 800; }
.page-home .catalog-shelf { padding: 12px 0 22px; border-top-color: #dce4eb; }
.page-home .catalog-shelf .section__header { margin-bottom: 12px; padding-top: 0; }
.page-home .catalog-shelf .featured-carousel__track { padding-bottom: 10px; }
.catalog-shelf__all {
    display: inline-flex;
    min-height: 36px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 11px;
    border: 1px solid #c6dfe5;
    border-radius: 5px;
    background: rgba(255, 255, 255, .72);
    color: #087f9e;
    font: 600 .76rem 'IBM Plex Sans', sans-serif;
    text-decoration: none;
    white-space: nowrap;
    transition: color .16s ease, border-color .16s ease, background .16s ease, box-shadow .16s ease;
}
.catalog-shelf__all i {
    display: grid;
    width: 20px;
    height: 20px;
    place-items: center;
    margin: 0;
    border-radius: 50%;
    background: #e7f4f6;
    color: #087f9e;
    font-size: .65rem;
    transition: color .16s ease, background .16s ease, transform .16s ease;
}
.catalog-shelf__all:hover {
    border-color: #087f9e;
    background: #087f9e;
    color: #fff;
    box-shadow: 0 4px 10px rgba(8, 127, 158, .14);
}
.catalog-shelf__all:hover i { transform: translate(1px, -1px); background: rgba(255, 255, 255, .18); color: #fff; }
.catalog-shelf__all:focus-visible { outline: 2px solid rgba(8, 127, 158, .55); outline-offset: 2px; }
.page-home #categorias { padding-top: 36px; }
.page-home #categorias > .container > .section__header { border-top: 0; padding-top: 0; }
.section__header { border-top-color: #d5dfe7; }
.section__eyebrow, .page-home .section__eyebrow { color: #087f9e; }
.section__title, .page-home .section__title { color: #192a3d; }
.section__subtitle, .page-home .section__subtitle { color: #586b7e; }
.page-home .category-carousel__track .category-card { border-color: #d7e1e8; background: linear-gradient(145deg, #fff, #f2f6f9 78%); box-shadow: 0 8px 22px rgba(35, 59, 77, .045); }
.page-home .category-carousel__track .category-card::before { color: #8191a1; }
.page-home .category-carousel__track .category-card::after { background: radial-gradient(ellipse at 78% 55%, rgba(8, 127, 158, .1), transparent 55%); }
.page-home .category-carousel__track .category-card:hover { border-color: #91c2d0; background: linear-gradient(145deg, #fff, #eef7f9 78%); box-shadow: 0 12px 28px rgba(35, 59, 77, .09); }
.page-home .category-card__icon { color: #087f9e; border-color: #c8e0e7; background: #e9f4f7; }
.page-home .category-card__preview::before { background: linear-gradient(90deg, #f7f9fb 0%, rgba(247, 249, 251, .25) 30%, transparent 75%); }
.page-home .category-card__preview-item { border-color: #d6e0e7; background: #fff; box-shadow: 0 6px 16px rgba(35, 59, 77, .12); }
.page-home .category-card__preview-empty { color: #087f9e; border-color: #c9dfe6; background: #eaf4f7; }
.page-home .category-card__name { color: #223449; }
.page-home .category-card__count { color: #65788a; }
.page-home .category-card__count-dot { background: #087f9e; box-shadow: none; }
.page-home .category-card__arrow { color: #477383; border-color: #d2dee6; background: rgba(255, 255, 255, .85); }
.page-home .category-card:hover .category-card__arrow { color: #fff; border-color: #087f9e; background: #087f9e; }
.page-home .category-carousel__button { color: #40566b; border-color: #cbd7e0; background: #fff; }
.page-home .product-card, .product-card { border-color: #d7e0e8; background: #fff; box-shadow: 0 6px 18px rgba(29, 52, 70, .055); }
.page-home .product-card:hover, .product-card:hover { border-color: #91c2d0; background: #fff; box-shadow: 0 12px 26px rgba(29, 52, 70, .1); }
.page-home .product-card__image, .product-card__image { border-bottom-color: #e1e8ed; background: #f1f5f8; }
.product-card__category, .page-home .product-card__category { color: #427c8b; }
.product-card__name, .page-home .product-card__name, .page-home .product-card__name a { color: #223449; }
.product-card__name a:hover { color: #087f9e; }
.product-card__price, .page-home .product-card__price { color: #182a3e; }
.product-card__old-price { color: #79899a; }
.product-card__discount, .page-home .product-card__discount { color: #177657; background: #e5f4ed; }
.product-card__badge--offer, .page-home .product-card__badge--offer { background: #087f9e !important; color: #fff !important; }
.product-card__badge--new, .page-home .product-card__badge--new { background: #e7e1fa !important; color: #51458e !important; }
.product-card__actions .product-card__btn.btn--outline { color: #fff; border-color: #087f9e; background: #087f9e; box-shadow: none; }
.product-card__actions .product-card__btn.btn--outline i { color: #d9f3f7; }
.product-card__actions .product-card__btn.btn--outline:hover { color: #fff; border-color: #076b85; background: #076b85; box-shadow: 0 5px 12px rgba(8, 127, 158, .15); }
.product-card__actions .product-card__btn.btn--whatsapp { color: #19744e; border-color: #c2e1d2; background: #eff8f3; }
.product-card__actions .product-card__btn.btn--whatsapp:hover { color: #fff; border-color: #21875e; background: #21875e; }
.product-card__actions { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 48px; gap: 8px; }
.product-card__cart-form { width: 100%; min-width: 0; height: 100%; margin: 0; }
.product-card__actions .product-card__btn { box-sizing: border-box; height: 48px; min-height: 48px; }
.product-card__actions .product-card__btn--cart {
    display: inline-flex;
    width: 100%;
    min-width: 0;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 9px;
    border: 1px solid #5b50ad;
    border-radius: 4px;
    background: linear-gradient(135deg, #7064c8, #594cae);
    color: #fff;
    font: 600 .76rem 'IBM Plex Sans', sans-serif;
    white-space: nowrap;
    cursor: pointer;
    box-shadow: 0 4px 11px rgba(89, 76, 174, .16);
    transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.product-card__actions .product-card__btn--cart i { color: #e9e6ff; font-size: .82rem; }
.product-card__actions .product-card__btn--cart:hover:not(:disabled) { border-color: #4b4199; background: linear-gradient(135deg, #6256b7, #4f449e); box-shadow: 0 6px 15px rgba(79, 68, 158, .24); transform: translateY(-1px); }
.product-card__actions .product-card__btn--cart:disabled { border-color: #cbd6de; background: #e8edf1; color: #718091; cursor: not-allowed; }
.catalog-results, .page-home .catalog-results { color: #637588; }
.catalog-results strong, .page-home .catalog-results strong { color: #203348; }
.catalog-empty, .page-home .catalog-empty, .catalogue-empty { border-color: #cbd9e2; background: #fff; color: #2d4054; }
.catalog-empty h3, .page-home .catalog-empty h3 { color: #23364a; }
.catalog-empty p, .page-home .catalog-empty p, .catalogue-empty p { color: #596d80; }
.page-home .catalog-access { padding-block: 14px 22px; border-top: 1px solid #dce4eb; background: #edf2f6; }
.catalog-access__link { border-color: #087f9e; background: #087f9e; color: #fff; box-shadow: 0 5px 15px rgba(8, 127, 158, .14); }
.catalog-access__link:hover { border-color: #076b85; background: #076b85; color: #fff; }
.page-home .catalog-access__link:focus-visible { outline-color: rgba(8, 127, 158, .48); outline-offset: 1px; }
.catalog-pagination a { border-color: #d2dce4; background: #fff; color: #3e5369; }
.catalog-pagination a:hover, .catalog-pagination a.is-current { border-color: #087f9e; background: #e9f5f7; color: #086b84; }
.catalogue-tabs { border-bottom-color: #d6e0e7; }
.catalogue-tabs__link { color: #596c7f; }
.catalogue-tabs__link:hover, .catalogue-tabs__link--active { color: #087f9e; }
.catalogue-tabs__link--active { border-color: #087f9e; }

/* Listing header: align the catalog and search pages with the light storefront. */
.listing-head {
    grid-template-columns: 64px minmax(0, 1fr);
    align-items: center;
    gap: 22px;
    margin-bottom: 24px;
    padding: 26px 30px;
    border: 1px solid #d5e3ea;
    border-left: 3px solid #0b91ad;
    border-radius: 8px;
    background: linear-gradient(112deg, #ffffff 0%, #f2f8fb 62%, #edf5fa 100%);
    box-shadow: 0 8px 22px rgba(37, 72, 96, .055);
}
.listing-head__icon {
    width: 64px;
    height: 64px;
    border: 1px solid #c4e1e9;
    border-radius: 8px;
    background: #e8f5f8;
    color: #087f9e;
    font-size: 1.45rem;
}
.listing-head__eyebrow {
    color: #087f9e;
    font-weight: 600;
    letter-spacing: .1em;
}
.listing-head h1 {
    margin: 6px 0 0;
    color: #1b2e42;
    font-size: clamp(2rem, 3.2vw, 2.85rem);
    line-height: 1.08;
    letter-spacing: -.045em;
}
.listing-head p {
    margin: 8px 0 0;
    color: #5b6f82;
}
.listing-head__count {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin-top: 12px;
    padding: 5px 9px;
    border: 1px solid #cce4e9;
    border-radius: 999px;
    background: #e9f5f6;
    color: #176f83;
    font-size: .68rem;
    font-weight: 600;
    letter-spacing: .07em;
}
.listing-head--search { grid-template-columns: minmax(0, 1fr); }
@media (max-width: 700px) {
    .listing-head { grid-template-columns: 52px minmax(0, 1fr); gap: 15px; padding: 21px; }
    .listing-head__icon { width: 52px; height: 52px; font-size: 1.2rem; }
}
@media (max-width: 480px) {
    .listing-head { grid-template-columns: 1fr; gap: 13px; padding: 19px; }
    .listing-head h1 { font-size: clamp(1.8rem, 9vw, 2.35rem); }
}

/* Keep the browser's native page scrollbar, with a slim brand-colored thumb. */
html { overflow-y: auto; scrollbar-color: #087f9e #dce8ee; scrollbar-width: thin; }
html::-webkit-scrollbar { width: 8px; }
html::-webkit-scrollbar-track { background: #dce8ee; }
html::-webkit-scrollbar-thumb { border: 1px solid #dce8ee; border-radius: 99px; background: #087f9e; }
html::-webkit-scrollbar-thumb:hover { background: #075f78; }

/* Product detail and advice banner */
.page-productos #productos { background: #f5f7fa; }
.product-page { color: #213348; }
.product-breadcrumb, .product-breadcrumb a { color: #65788b !important; }
.product-breadcrumb a:hover { color: #087f9e !important; }
.product-detail__gallery { border-color: #d8e1e9; background: #fff; box-shadow: 0 8px 24px rgba(29, 52, 70, .06); }
.product-detail__category { color: #087f9e; }
.product-detail__title, .product-detail__price, .product-detail__specs h3 { color: #1a2c40; }
.product-detail__pricing { border-color: #d9e2e9; }
.product-detail__old-price { color: #7c8b9a; }
.product-detail__description, .product-detail__specs, .product-detail__specs div { color: #53677a !important; }
.product-detail__actions .btn--secondary { color: #30475c; border-color: #cbd7e0; background: #fff; }
.product-detail__actions .btn--primary { color: #fff; border-color: #5b50ad; background: linear-gradient(135deg, #7064c8, #594cae); box-shadow: 0 7px 18px rgba(89, 76, 174, .2); }
.product-detail__actions .btn--primary:hover { color: #fff; border-color: #4b4199; background: linear-gradient(135deg, #6256b7, #4f449e); box-shadow: 0 9px 21px rgba(79, 68, 158, .25); transform: translateY(-1px); }
.product-detail__actions .btn--primary:focus-visible { outline: 3px solid rgba(112, 100, 200, .3); outline-offset: 3px; }
.page-home .catalog-access + .section {
    padding: clamp(30px, 4vw, 46px) 0 clamp(36px, 5vw, 54px);
    background: linear-gradient(180deg, #edf2f6 0%, #e7eff5 100%);
}
.page-home .advice-banner {
    padding: clamp(24px, 3vw, 38px) clamp(22px, 4vw, 46px);
    border: 1px solid #c9dce5;
    border-left: 4px solid #087f9e;
    border-radius: 6px;
    background: linear-gradient(115deg, #fff 0%, #eaf6f9 100%);
    box-shadow: 0 14px 34px rgba(36, 66, 86, .09);
}
.page-home .advice-banner .section__eyebrow { color: #087f9e; }
.page-home .advice-banner h2 { color: #192d40; }
.page-home .advice-banner p { color: #5b7083; }
.page-home .advice-banner .btn {
    border: 1px solid #128c7e;
    border-radius: 4px;
    background: linear-gradient(135deg, #25d366, #1eaa61 72%, #128c7e);
    color: #fff;
    box-shadow: 0 8px 20px rgba(37, 211, 102, .24);
}
.page-home .advice-banner .btn:hover {
    border-color: #128c7e;
    background: linear-gradient(135deg, #2be574, #159a58);
    color: #fff;
    box-shadow: 0 10px 24px rgba(37, 211, 102, .32);
}

/* Account, orders and forms */
.account-dialog::backdrop { background: rgba(22, 38, 54, .42); }
.account-dialog__close { border-color: #d2dce4; background: #fff; color: #526579; }
.account-dialog__close:hover { border-color: #087f9e; color: #087f9e; }
.account-card { border-color: #d6e0e7; border-top-color: #087f9e; background: #fff; box-shadow: 0 20px 60px rgba(28, 49, 68, .16); }
.account-card__eyebrow { color: #087f9e; }
.account-brand, .account-card h1, .account-dialog .account-card h2 { color: #1a2c40; }
.account-card__copy { color: #586d80; }
.account-google-button--secondary { border-color: #d2dce4; background: #f7f9fb; color: #31465a; }
.account-google-button--secondary:hover { background: #edf3f7; }
.account-card__legal, .account-profile p { color: #718196; }
.account-back { border-top-color: #e0e7ec; color: #53687c; }
.account-message { border-color: #cbdce3; background: #f4f8fa; color: #40576b; }
.account-message[data-state="error"] { border-color: #e5b9b9; background: #fff5f4; color: #9a3c3c; }
.account-profile__photo, .account-profile__initial { border-color: #d2e2e8; }
.account-dialog {
    width: min(520px, calc(100vw - 28px));
    max-height: min(92vh, 720px);
}
.account-dialog::backdrop { background: rgba(20, 37, 54, .48); backdrop-filter: blur(4px); }
.account-dialog .account-card {
    padding: clamp(30px, 5vw, 42px);
    border: 1px solid #d7e3e9;
    border-top: 3px solid #0b8aa6;
    border-radius: 12px;
    background: linear-gradient(155deg, #fff 0%, #fff 72%, #f4f9fb 100%);
    box-shadow: 0 26px 76px rgba(20, 46, 67, .22);
}
.account-dialog__close {
    top: 14px;
    right: 14px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #f7fafb;
    transition: background .16s ease, color .16s ease, border-color .16s ease;
}
.account-dialog__close:hover { background: #eaf5f7; }
.account-dialog .account-card__eyebrow {
    margin-bottom: 20px;
    color: #087f9e;
    font-size: .7rem;
    letter-spacing: .14em;
}
.account-dialog .account-brand { gap: 12px; margin-bottom: 28px; font-size: 1.02rem; }
.account-dialog .account-brand img {
    width: 42px;
    height: 42px;
    padding: 6px;
    border-radius: 9px;
    background: #17374b;
    filter: drop-shadow(0 2px 3px rgba(23, 55, 75, .15));
}
.account-dialog .account-card h2 { font-size: clamp(1.65rem, 4vw, 1.9rem); line-height: 1.15; letter-spacing: -.04em; }
.account-dialog .account-card__copy { margin: 11px 0 25px; line-height: 1.65; }
.account-dialog .account-google-button {
    min-height: 54px;
    border-color: #cbd6de;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 2px 5px rgba(31, 53, 70, .06);
}
.account-dialog .account-google-button:hover { border-color: #aebfc9; background: #f9fbfc; box-shadow: 0 4px 10px rgba(31, 53, 70, .09); }
.account-dialog .account-card__legal { margin: 16px 0 21px; }
.account-dialog .account-back {
    margin-top: 20px;
    padding-top: 17px;
    border-top: 1px solid #e2eaf0;
    color: #536b7f;
}
.account-dialog .account-back:hover { color: #087f9e; }
@media (max-width: 480px) {
    .account-dialog .account-card { padding: 30px 23px; }
    .account-dialog .account-card__eyebrow { margin-bottom: 18px; }
    .account-dialog .account-brand { margin-bottom: 23px; }
}
.account-profile__initial { background: #e7f3f6; color: #087f9e; }
.navbar__account-menu { border-color: #d8e1e9; background: #fff; box-shadow: 0 15px 36px rgba(28, 49, 68, .15); }
.navbar__account-menu-user { border-bottom-color: #e0e7ec; }
.navbar__account-menu-user strong { color: #23364a; }
.navbar__account-menu-user span { color: #708195; }
.navbar__account-menu > a, .navbar__account-menu > button { color: #43586d; }
.navbar__account-menu > a:hover, .navbar__account-menu > button:hover { color: #087f9e; background: #eef6f8; }
.navbar__account-menu > a i, .navbar__account-menu > button i { color: #087f9e; }
.account-orders__header { border-bottom-color: #dbe3e9; }
.account-orders__header h1, .account-orders__empty h2 { color: #1a2c40; }
.account-orders__header p, .account-orders__back, .account-orders__empty p { color: #5b6f82; }
.account-orders__empty { border-color: #d8e1e9; background: #fff; }
.account-orders__icon { border-color: #cce0e6; background: #eaf4f7; color: #087f9e; }
.account-orders__catalog { border-color: #087f9e; background: #087f9e; color: #fff; }
.account-orders__catalog:hover { background: #076b85; }
.orders-page, .cart-page, .checkout-page, .orders-history { color: #26394e; }
.orders-page__back, .orders-history__item, .orders-summary, .cart-item, .checkout-form, .orders-empty { color: #33485d; }
.orders-notice { border-color: #d5e0e7; background: #fff; color: #43596f; }
.orders-notice--error { border-color: #e5b9b9; background: #fff5f4; color: #9a3c3c; }
.orders-notice--success { border-color: #b9dfca; background: #f0f9f3; color: #28724d; }
.orders-summary, .cart-item, .checkout-form, .orders-empty, .orders-history__item { border-color: #d8e1e9; background: #fff; }
.cart-item__image { background: #f0f4f7; color: #087f9e; }
.cart-item__body h2, .cart-item__body h2 a, .checkout-form label, .checkout-form h2, .orders-summary strong { color: #26394e; }
.cart-item__body p, .orders-summary span, .orders-page__eyebrow, .orders-history__item small { color: #667a8d; }
.cart-item__actions input, .checkout-form input, .checkout-form textarea, .checkout-form select { border-color: #ccd8e1; background: #f8fafc; color: #26394e; color-scheme: light; }
.checkout-form .checkout-payment__option { border-color: #d2dce4; background: #f8fafc; color: #354b60; }
.checkout-form .checkout-payment__option:has(input:checked) { border-color: #087f9e; background: #edf7f9; }
.checkout-form .checkout-payment__option--disabled:has(input:checked) { border-color: #d2dce4; background: #f8fafc; }
.checkout-form .checkout-payment__option > i { color: #087f9e; }
.orders-button { border-color: #087f9e; background: #087f9e; color: #fff; }
.orders-button:hover { border-color: #076b85; background: #076b85; color: #fff; }
.orders-button--whatsapp { border-color: #21875e; background: #21875e; }
.orders-button--whatsapp:hover { border-color: #176c49; background: #176c49; }
.order-status--pendiente { border-color: #e9d7a9; background: #fff8e7; color: #8a641c; }
.order-status--confirmado { border-color: #b8dce5; background: #edf8fa; color: #24677a; }
.order-status--entregado { border-color: #b9dfca; background: #eff8f2; color: #28724d; }
.order-status--cancelado { border-color: #e5c1c7; background: #fff3f5; color: #914552; }
.orders-pagination a { border-color: #d2dce4; background: #fff; color: #40566d; }
.orders-pagination a[aria-current] { border-color: #087f9e; background: #eaf5f7; color: #08718d; }

/* Carrito: contraste y jerarquía claros para la paleta luminosa. */
.page-carrito .orders-page { padding: clamp(108px, calc(4.5vw + 54px), 124px) 24px clamp(40px, 4.5vw, 60px); }
.page-carrito .orders-page__eyebrow { color: #087f9e; font-weight: 600; }
.page-carrito .orders-page__head { margin: 9px 0 24px; padding-bottom: 20px; border-bottom-color: #d4e0e8; }
.page-carrito .orders-page__head h1 { color: #172b40; font-size: clamp(2rem, 3.4vw, 2.65rem); font-weight: 700; }
.page-carrito .orders-page__head p { color: #536b81; font-size: .98rem; }
.page-carrito .orders-page__back { padding: 10px 13px; border: 1px solid #c8d9e2; border-radius: 8px; background: #fff; color: #31536b; font-weight: 600; transition: border-color .18s ease, color .18s ease, background .18s ease; }
.page-carrito .orders-page__back:hover { border-color: #087f9e; background: #eef8fa; color: #076d87; }
.page-carrito .orders-notice { border-radius: 8px; box-shadow: 0 3px 12px rgba(30, 55, 75, .04); }
.page-carrito .cart-items { overflow: hidden; border: 1px solid #d2dee7; border-radius: 12px; background: #fff; box-shadow: 0 8px 24px rgba(28, 50, 70, .06); }
.page-carrito .cart-item { grid-template-columns: 112px minmax(0, 1fr) auto; align-items: center; gap: 20px; padding: 20px 22px; }
.page-carrito .cart-item + .cart-item { border-top: 1px solid #e1e9ee; }
.page-carrito .cart-item__image { width: 112px; height: 112px; border: 1px solid #e2eaf0; border-radius: 9px; background: linear-gradient(145deg, #f6f9fb, #edf4f8); }
.page-carrito .cart-item__body h2 { margin: 0 0 7px; font-size: 1.02rem; font-weight: 700; }
.page-carrito .cart-item__body h2 a { color: #1b3046; }
.page-carrito .cart-item__body h2 a:hover { color: #087f9e; }
.page-carrito .cart-item__info > span { color: #5b7185; font-size: .84rem; }
.page-carrito .cart-item__total { color: #183149; font-size: 1rem; font-weight: 700; }
.page-carrito .cart-item__actions { align-items: center; gap: 9px; margin-top: 14px; }
.page-carrito .cart-item__actions form { gap: 8px; }
.page-carrito .cart-item__actions label { color: #526b80; font-size: .8rem; font-weight: 600; }
.page-carrito .cart-item__actions input { width: 58px; height: 38px; border-color: #c8d7e1; border-radius: 6px; background: #f8fbfd; color: #20374d; font-weight: 600; }
.page-carrito .cart-item__actions button { min-height: 38px; padding: 7px 12px; border: 1px solid #b9d2dc; border-radius: 6px; background: #edf7f9; color: #08718d; font-size: .78rem; font-weight: 700; transition: background .18s ease, color .18s ease, border-color .18s ease; }
.page-carrito .cart-item__actions button:hover { border-color: #087f9e; background: #087f9e; color: #fff; }
.page-carrito .cart-item__actions .cart-item__remove { border-color: #e2c9c9; background: #fff7f6; color: #a44d4d; }
.page-carrito .cart-item__actions .cart-item__remove:hover { border-color: #b34b4b; background: #b34b4b; color: #fff; }
.page-carrito .orders-summary { position: sticky; top: 96px; padding: 23px; border-color: #d2dee7; border-radius: 12px; box-shadow: 0 8px 24px rgba(28, 50, 70, .06); }
.page-carrito .orders-summary > span { margin-bottom: 14px; color: #087f9e; font-weight: 600; }
.page-carrito .orders-summary > div:not(.orders-notice) { padding: 14px 0; border-bottom-color: #e1e9ee; color: #536b81; font-size: .9rem; }
.page-carrito .orders-summary > div strong { color: #183149; font-size: 1.02rem; }
.page-carrito .orders-summary p { margin: 14px 0 0; color: #5b7185; font-size: .83rem; }
.page-carrito .orders-summary .orders-button { min-height: 50px; margin-top: 20px; border-radius: 7px; background: #087f9e; box-shadow: 0 6px 14px rgba(8, 127, 158, .16); font-size: .9rem; }
.page-carrito .orders-summary .orders-button:hover { background: #076b85; box-shadow: 0 8px 18px rgba(8, 107, 133, .22); }
@media (max-width: 640px) {
    .page-carrito .orders-page { padding: 108px 16px 40px; }
    .page-carrito .cart-item { grid-template-columns: 76px minmax(0, 1fr); align-items: start; gap: 12px 14px; padding: 15px; }
    .page-carrito .cart-item__image { width: 76px; height: 76px; align-self: center; grid-row: 1; }
    .page-carrito .cart-item__body { display: contents; }
    .page-carrito .cart-item__info { grid-column: 2; grid-row: 1; align-self: center; display: flex; min-width: 0; flex-direction: column; justify-content: center; gap: 6px; }
    .page-carrito .cart-item__body h2 { margin: 0; }
    .page-carrito .cart-item__warning { margin: 0; }
    .page-carrito .cart-item__actions { grid-column: 1 / -1; grid-row: 2; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 2px; }
    .page-carrito .cart-item__actions form { flex-wrap: nowrap; gap: 6px; }
    .page-carrito .cart-item__actions form:last-child { margin-left: auto; }
    .page-carrito .cart-item__total { grid-column: 1 / -1; grid-row: 3; width: 100%; padding-top: 10px; border-top: 1px solid #edf1f4; font-size: .98rem; text-align: right; }
    .page-carrito .orders-summary { position: static; }
}

/* Checkout para clientes que aún no han iniciado sesión. */
.page-checkout .orders-page { padding: clamp(108px, calc(4.5vw + 54px), 124px) 24px clamp(40px, 4.5vw, 60px); }
.page-checkout .orders-page__eyebrow { color: #087f9e; font-weight: 600; }
.page-checkout .orders-page__head { margin: 9px 0 26px; padding-bottom: 20px; border-bottom-color: #d4e0e8; }
.page-checkout .orders-page__head h1 { color: #172b40; font-size: clamp(2rem, 3.4vw, 2.65rem); font-weight: 700; }
.page-checkout .orders-page__head p { color: #536b81; font-size: .98rem; }
.page-checkout .orders-page__back { padding: 10px 13px; border: 1px solid #c8d9e2; border-radius: 8px; background: #fff; color: #31536b; font-weight: 600; transition: border-color .18s ease, color .18s ease, background .18s ease; }
.page-checkout .orders-page__back:hover { border-color: #087f9e; background: #eef8fa; color: #076d87; }
.page-checkout .checkout-form {
    gap: 0;
    padding: clamp(24px, 3vw, 34px);
    border-color: #d4e0e8;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 26px rgba(28, 50, 70, .055);
}
.page-checkout .checkout-form__identity {
    margin-bottom: 24px;
    padding: 15px 16px;
    border: 1px solid #d4e8dc;
    border-radius: 8px;
    background: #f3f9f5;
}
.page-checkout .checkout-form__identity > i { color: #23885e; font-size: 1.1rem; }
.page-checkout .checkout-form__identity strong { color: #284a3c; }
.page-checkout .checkout-form__identity span { color: #627a6d; }
.page-checkout .checkout-form label { margin-bottom: 7px; color: #26394e; font-size: .83rem; }
.page-checkout .checkout-form label > span,
.page-checkout .checkout-payment legend > span { color: #07839f; }
.page-checkout .checkout-form input:not([type="radio"]),
.page-checkout .checkout-form select,
.page-checkout .checkout-form textarea {
    min-height: 46px;
    margin-bottom: 16px;
    border-color: #cbd8e1;
    border-radius: 6px;
    background: #f8fafc;
    color: #23384c;
    font-size: .9rem;
}
.page-checkout .checkout-form input::placeholder,
.page-checkout .checkout-form textarea::placeholder { color: #8292a1; }
.page-checkout .checkout-form input:focus,
.page-checkout .checkout-form select:focus,
.page-checkout .checkout-form textarea:focus { border-color: #1687a1; outline: 3px solid rgba(8, 127, 158, .12); }
.page-checkout .checkout-form .checkout-form__privacy,
.page-checkout .checkout-form > small { color: #6a7e90; font-size: .75rem; line-height: 1.5; }
.page-checkout .checkout-form .checkout-form__privacy { margin: -6px 0 21px; }
.page-checkout .checkout-form > small { margin: -7px 0 20px; }
.page-checkout .checkout-payment { margin: 8px 0 20px; }
.page-checkout .checkout-payment legend { margin-bottom: 11px; color: #26394e; font-size: .9rem; }
.page-checkout .checkout-form .checkout-payment__option {
    min-height: 88px;
    padding: 14px;
    border-color: #d5e0e7;
    border-radius: 8px;
    background: #f8fafc;
    color: #30465a;
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}
.page-checkout .checkout-form .checkout-payment__option:hover:not(.checkout-payment__option--disabled) { border-color: #9fcbd5; background: #f4fafb; }
.page-checkout .checkout-form .checkout-payment__option:has(input:checked) { border-color: #1687a1; background: #eef8fa; box-shadow: 0 0 0 2px rgba(8, 127, 158, .08); }
.page-checkout .checkout-form .checkout-payment__option--disabled { border-color: #e0e6eb; background: #f7f8fa; color: #718091; }
.page-checkout .checkout-payment__option strong { color: #293f54; }
.page-checkout .checkout-form .checkout-payment__option small { color: #65798b; line-height: 1.45; }
.page-checkout .checkout-payment__option em { color: #758696; }
.page-checkout .checkout-form .checkout-payment__option--disabled > i { color: #8393a1; }
.page-checkout .checkout-form .checkout-form__notice {
    margin: 0 0 4px;
    padding: 12px 14px;
    border: 1px solid #d5e6eb;
    border-radius: 7px;
    background: #f1f8fa;
    color: #526b7e;
    font-size: .79rem;
}
.page-checkout .checkout-form .orders-button {
    width: 100%;
    min-height: 52px;
    align-self: stretch;
    margin-top: 16px;
    border-radius: 7px;
    background: linear-gradient(110deg, #087f9e, #147f9b);
    box-shadow: 0 6px 15px rgba(8, 127, 158, .15);
    font-size: .9rem;
}
.page-checkout .checkout-form .orders-button:hover { background: #076b85; box-shadow: 0 8px 18px rgba(8, 107, 133, .19); }
.page-checkout .orders-summary {
    position: sticky;
    top: 102px;
    padding: 24px;
    border-color: #d4e0e8;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 26px rgba(28, 50, 70, .055);
}
.page-checkout .orders-summary > span { margin-bottom: 14px; color: #087f9e; }
.page-checkout .orders-summary > div:not(.orders-notice) {
    gap: 14px;
    padding: 13px 0;
    border-bottom-color: #e3eaef;
    color: #52677a;
    line-height: 1.45;
}
.page-checkout .orders-summary > div strong { flex: none; color: #23384c; font-size: .83rem; }
.page-checkout .orders-summary > .orders-summary__total { margin-top: 8px; padding-top: 17px; border-top: 1px solid #dbe4ea; border-bottom: 0 !important; color: #20364b; font-size: .98rem !important; font-weight: 700; }
.page-checkout .orders-summary > .orders-summary__total strong { color: #172e43; font-size: 1.15rem; }
@media (max-width: 640px) {
    .page-checkout .orders-page { padding: 108px 16px 40px; }
    .page-checkout .checkout-form { padding: 22px 18px; }
    .page-checkout .orders-summary { position: static; padding: 20px; }
    .page-checkout .checkout-form .orders-button { width: 100%; }
}
.page-checkout .checkout-guest { position: relative; isolation: isolate; max-width: 900px; min-height: 0; margin: 0 auto; padding: clamp(34px, 5vw, 56px) 24px; overflow: hidden; border: 1px solid #cbdde6; border-radius: 14px; background: radial-gradient(ellipse at 50% 0%, rgba(17, 157, 184, .09), transparent 58%), linear-gradient(145deg, #fff 0%, #f6fafc 100%); box-shadow: 0 14px 36px rgba(31, 62, 84, .08); }
.page-checkout .checkout-guest__icon { display: grid; width: 60px; height: 60px; margin-bottom: 18px; place-items: center; border: 1px solid #c9e2e9; border-radius: 16px; background: #e9f6f8; color: #087f9e; font-size: 1.35rem; }
.page-checkout .checkout-guest__eyebrow { color: #087f9e; font: 600 .68rem 'IBM Plex Mono', monospace; letter-spacing: .12em; }
.page-checkout .checkout-guest h2 { margin: 9px 0 0; color: #1b3046; font-size: clamp(1.4rem, 2.5vw, 1.8rem); font-weight: 700; letter-spacing: -.035em; }
.page-checkout .checkout-guest p { max-width: 520px; margin: 10px 0 0; color: #586f83; font-size: .98rem; line-height: 1.65; }
.page-checkout .checkout-guest p strong { color: #304b61; font-weight: 700; }
.page-checkout .checkout-guest__button { display: inline-flex; min-width: 240px; min-height: 48px; margin-top: 22px; align-items: center; justify-content: center; gap: 12px; padding: 0 20px; border: 1px solid #dadce0; border-radius: 4px; background: #fff; box-shadow: 0 1px 2px rgba(60, 64, 67, .12); color: #3c4043; font: 500 14px Roboto, Arial, sans-serif; letter-spacing: .15px; transition: background .16s ease, border-color .16s ease, box-shadow .16s ease; }
.page-checkout .checkout-guest__button:hover { border-color: #d2e3fc; background: #f8faff; box-shadow: 0 2px 5px rgba(60, 64, 67, .18); color: #3c4043; transform: none; }
.page-checkout .checkout-guest__button:active { background: #f1f3f4; box-shadow: none; }
.page-checkout .checkout-guest__button:focus-visible { outline: 2px solid #4285f4; outline-offset: 2px; }
.page-checkout .checkout-guest__google-mark { display: block; width: 18px; height: 18px; flex: 0 0 18px; }
.page-checkout .checkout-guest__note { display: flex; align-items: center; gap: 7px; margin: 16px 0 0; color: #647b8e; font-size: .76rem; }
.page-checkout .checkout-guest__note i { color: #087f9e; }
@media (max-width: 640px) {
    .page-checkout .checkout-guest { align-items: start; padding: 30px 22px; text-align: left; }
    .page-checkout .checkout-guest__note { align-items: flex-start; line-height: 1.5; }
    .page-checkout .checkout-guest__button { width: 100%; }
}

/* Branded footer: stronger contrast, color and clear navigation groups. */
.footer, .page-home .footer {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin-top: 0;
    padding: 62px 0 22px;
    border-top: 1px solid #245a70;
    background: linear-gradient(118deg, #0b1a2b 0%, #10263b 54%, #0c2034 100%);
    color: #eef6fb;
}
.footer::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: radial-gradient(ellipse at 12% 0%, rgba(0, 190, 215, .13), transparent 38%), radial-gradient(ellipse at 88% 100%, rgba(104, 90, 205, .12), transparent 42%);
    content: '';
    pointer-events: none;
}
.footer > .container { position: relative; }
.footer__grid { gap: 44px; }
.footer__section { gap: 14px; }
.footer__section:first-child { gap: 13px; }
.footer__brand-logo { filter: drop-shadow(0 8px 20px rgba(0, 217, 255, .16)); }
.footer__lead, .footer__title, .page-home .footer__title { color: #f1f7fb; }
.footer__title {
    position: relative;
    width: fit-content;
    margin: 0 0 5px;
    padding-bottom: 10px;
    font: 600 .73rem 'IBM Plex Mono', monospace;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.footer__title::after { position: absolute; bottom: 0; left: 0; width: 34px; height: 2px; background: linear-gradient(90deg, #00c7df, #7868d9); content: ''; }
.footer__section:first-child .footer__title { color: #47d9eb; }
.footer__text, .footer__link, .footer__bottom, .page-home .footer__text, .page-home .footer__link, .page-home .footer__bottom { color: #b1c2d0; }
.footer__section:first-child > .footer__text { max-width: 330px; line-height: 1.8; }
.footer__link { width: fit-content; transition: color .18s ease, transform .18s ease; }
.footer__link:hover { color: #4cdeef; transform: translateX(3px); }
.footer__section:last-child .footer__text { display: flex; align-items: flex-start; gap: 10px; }
.footer__section:last-child .footer__text i { width: 16px; margin-top: 4px; color: #35ccdf; text-align: center; }
.footer__social { gap: 9px; margin-top: 5px; }
.footer__social-link { width: 38px; height: 38px; border: 1px solid #2d5064; border-radius: 4px; background: rgba(36, 73, 96, .62); color: #c6d8e4; }
.footer__social-link:hover { border-color: #42d4e7; background: #0d899f; color: #fff; box-shadow: 0 6px 18px rgba(0, 190, 215, .18); }
.footer__bottom { margin-top: 36px; padding-top: 18px; border-color: rgba(150, 185, 204, .2); color: #8da5b8; }
.whatsapp-float__btn { background: #21875e; box-shadow: 0 8px 22px rgba(33, 135, 94, .25); }
.whatsapp-float__tooltip { border-color: #d5e0e7; background: #fff; color: #344a5d; box-shadow: 0 8px 24px rgba(29, 52, 70, .14); }

/* Keep loading screen aligned with the new palette */
.site-preloader {
    background:
        radial-gradient(ellipse at 22% 24%, rgba(122, 105, 205, .2), transparent 42%),
        radial-gradient(ellipse at 78% 70%, rgba(34, 173, 198, .25), transparent 46%),
        linear-gradient(135deg, #dce5f3 0%, #d4e9ee 52%, #e2dcf4 100%);
    color: #193047;
}
.site-preloader::before { background-image: linear-gradient(rgba(37, 85, 118, .085) 1px, transparent 1px), linear-gradient(90deg, rgba(37, 85, 118, .085) 1px, transparent 1px); }
.site-preloader__visual::before { border-color: rgba(8, 127, 158, .36); box-shadow: 0 0 42px rgba(8, 127, 158, .17), inset 0 0 30px rgba(8, 127, 158, .11); }
.site-preloader__orbit--inner { border-color: rgba(43, 91, 125, .4); }
.site-preloader__logo-glow { width: 104px; height: 104px; background: rgba(31, 182, 205, .24); filter: blur(22px); }
.site-preloader__logo { width: 84px; height: 84px; padding: 9px; border: 1px solid rgba(255, 255, 255, .24); border-radius: 17px; background: linear-gradient(145deg, #244964, #132a42); box-shadow: 0 11px 28px rgba(24, 52, 76, .24); filter: none; }
.site-preloader__wordmark strong { color: #193047; }
.site-preloader__wordmark span { color: #29445d; font-size: 1.42rem; font-weight: 700; letter-spacing: .055em; }
.site-preloader__label { color: #344f68; }
.site-preloader__signal { background: #008fa8; box-shadow: 0 0 12px rgba(0, 143, 168, .55); }
.site-preloader__progress { height: 4px; border: 0; background: rgba(43, 83, 115, .2); }
.site-preloader__progress span { background: linear-gradient(90deg, transparent, #078eae 48%, #745bc4); box-shadow: 0 0 12px rgba(8, 127, 158, .45); }
.site-preloader__brand { color: #526d85; }
.site-preloader__brand i { color: #087f9e; }

@media (max-width: 800px) {
    .brand-showcase__inner { grid-template-columns: 1fr; gap: 12px; }
    .brand-showcase__list { gap: 8px; }
    .brand-showcase__item { flex-basis: calc((100% - 24px) / 4); }
    .page-home .hero--future {
        background:
            radial-gradient(ellipse at 68% 35%, rgba(34, 173, 198, .4), transparent 52%),
            linear-gradient(140deg, #d7def2, #bfe3eb 58%, #ddd9f3);
    }
    .hero__floating-card, .hero__product-link { box-shadow: 0 8px 22px rgba(36, 66, 86, .12); }
}

@media (max-width: 480px) {
    .page-home .brand-showcase { padding: 18px 0 12px; }
    .brand-showcase__carousel { gap: 8px; }
    .brand-showcase__list { gap: 8px; }
    .brand-showcase__item { flex-basis: calc((100% - 8px) / 2); }
    .brand-showcase__item { min-height: 42px; }
}

@media (prefers-reduced-motion: reduce) {
    .page-home .hero--future, .page-home .hero--future::after { scroll-behavior: auto; }
}

/* Seguimiento del pedido: estado, compra y entrega con jerarquía clara. */
.page-pedido .orders-page { padding: clamp(108px, calc(4.5vw + 54px), 124px) 24px 64px; }
.page-pedido .orders-page__eyebrow { color: #087f9e; font-weight: 600; }
.page-pedido .orders-page__head { align-items: center; margin: 9px 0 26px; padding-bottom: 21px; border-bottom-color: #d5e0e8; }
.page-pedido .orders-page__head h1 { color: #172b40; font-size: clamp(1.9rem, 3.2vw, 2.55rem); font-weight: 700; letter-spacing: -.045em; }
.page-pedido .orders-page__head p { color: #64798c; font-size: .9rem; }
.page-pedido .orders-page__back { padding: 10px 13px; border: 1px solid #c8d9e2; border-radius: 8px; background: #fff; color: #31536b; font-weight: 600; transition: .18s ease; }
.page-pedido .orders-page__back:hover { border-color: #087f9e; background: #eef8fa; color: #076d87; }
.page-pedido .orders-layout { grid-template-columns: minmax(0, 1fr) minmax(280px, 330px); align-items: start; gap: 22px; }
.page-pedido .order-detail { display: grid; gap: 16px; padding: 0; border: 0; background: transparent; }
.page-pedido .order-detail__status,
.page-pedido .order-detail__products,
.page-pedido .order-detail__info,
.page-pedido .order-detail__next { border: 1px solid #d6e1e9; border-radius: 10px; background: #fff; box-shadow: 0 8px 22px rgba(28, 50, 70, .045); }
.page-pedido .order-detail__status { display: flex; align-items: flex-start; gap: 16px; margin: 0; padding: 20px 22px; border-left: 3px solid #087f9e; }
.page-pedido .order-detail__status-icon,
.page-pedido .order-detail__info-icon,
.page-pedido .order-detail__next-icon { display: grid; flex: 0 0 auto; place-items: center; width: 42px; height: 42px; border: 1px solid #cde4e9; border-radius: 9px; background: #edf7f8; color: #087f9e; }
.page-pedido .order-detail__status-copy { display: grid; justify-items: start; gap: 8px; }
.page-pedido .order-detail__label { display: block; color: #087f9e; font: 600 .64rem 'IBM Plex Mono', monospace; letter-spacing: .13em; }
.page-pedido .order-status { padding: 5px 9px; border-radius: 999px; font-size: .7rem; font-weight: 600; }
.page-pedido .order-detail__status p { margin: 0; color: #586f82; font-size: .86rem; line-height: 1.6; }
.page-pedido .order-detail__products { padding: 21px 23px 12px; }
.page-pedido .order-detail__section-head { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 8px; }
.page-pedido .order-detail__section-head h2,
.page-pedido .order-detail__info h2 { margin: 5px 0 0; color: #20364b; font-size: 1rem; font-weight: 700; }
.page-pedido .order-detail__count { color: #687d90; font-size: .78rem; }
.page-pedido .order-detail__items { border-top: 1px solid #e2e9ee; }
.page-pedido .order-detail__item { align-items: center; gap: 18px; padding: 13px 0; border-bottom-color: #e5ebef; color: #40576c; font-size: .86rem; line-height: 1.45; }
.page-pedido .order-detail__item > span { display: flex; align-items: baseline; gap: 10px; }
.page-pedido .order-detail__quantity { flex: 0 0 auto; color: #087f9e; font: 600 .79rem 'IBM Plex Mono', monospace; }
.page-pedido .order-detail__item strong { color: #20364b; font-size: .87rem; }
.page-pedido .order-detail__item--total { padding: 16px 0 7px; color: #526a7e; font-weight: 600; }
.page-pedido .order-detail__item--total strong { color: #172e43; font-size: 1.14rem; }
.page-pedido .order-detail__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.page-pedido .order-detail__info { display: flex; align-items: flex-start; gap: 13px; padding: 18px; }
.page-pedido .order-detail__info-icon { width: 36px; height: 36px; border-radius: 8px; }
.page-pedido .order-detail__info > div { min-width: 0; }
.page-pedido .order-detail__info h2 { margin: 5px 0 9px; }
.page-pedido .order-detail__info p { margin: 0 0 7px; overflow-wrap: anywhere; color: #586f82; font-size: .82rem; line-height: 1.6; }
.page-pedido .order-detail__info p:last-child { margin-bottom: 0; }
.page-pedido .order-detail__info p strong { color: #2a4359; font-weight: 600; }
.page-pedido .order-detail__info--payment,
.page-pedido .order-detail__info--notes { grid-column: 1 / -1; }
.page-pedido .order-payment-details { margin-top: 12px; padding: 13px 15px; border: 1px solid #d5e5eb; border-radius: 7px; background: #f4f9fa; }
.page-pedido .order-payment-details strong { color: #27465a; font-size: .82rem; }
.page-pedido .order-payment-details p { margin: 5px 0; font-size: .79rem; }
.page-pedido .order-detail__next { position: sticky; top: 112px; padding: 22px; }
.page-pedido .order-detail__next-icon { width: 44px; height: 44px; margin: 16px 0 13px; background: #edf7f8; }
.page-pedido .order-detail__next h2 { margin: 0; color: #20364b; font-size: 1.08rem; }
.page-pedido .order-detail__next p { margin: 9px 0 16px; color: #5b7185; font-size: .84rem; line-height: 1.65; }
.page-pedido .order-detail__next > .order-detail__reference { display: flex; min-width: 0; width: 100%; box-sizing: border-box; flex-direction: column; justify-content: flex-start; gap: 6px; margin: 0 0 15px; padding: 12px 14px; overflow: hidden; border: 1px dashed #b9d0dc; border-radius: 7px; background: #f6fafb; text-align: left; }
.page-pedido .order-detail__reference span { color: #708397; font: 600 .61rem 'IBM Plex Mono', monospace; letter-spacing: .12em; }
.page-pedido .order-detail__reference strong { color: #203a50; font: 600 .91rem 'IBM Plex Mono', monospace; overflow-wrap: anywhere; }
.page-pedido .order-detail__next .orders-button { display: flex; width: 100%; min-height: 47px; align-items: center; justify-content: center; gap: 9px; border-radius: 7px; background: #168456; box-shadow: 0 5px 13px rgba(22, 132, 86, .14); font-size: .83rem; }
.page-pedido .order-detail__next .orders-button:hover { background: #116f48; }
.page-pedido .order-detail__next small { display: block; margin-top: 12px; color: #718498; font-size: .7rem; line-height: 1.55; }
@media (max-width: 850px) {
    .page-pedido .orders-layout { grid-template-columns: 1fr; }
    .page-pedido .order-detail__next { position: static; }
}
@media (max-width: 640px) {
    .page-pedido .orders-page { padding: 108px 16px 42px; }
    .page-pedido .orders-page__head { align-items: flex-start; }
    .page-pedido .orders-layout { grid-template-columns: 1fr; gap: 14px; }
    .page-pedido .order-detail { gap: 12px; }
    .page-pedido .order-detail__status { gap: 12px; padding: 16px; }
    .page-pedido .order-detail__products { padding: 17px 16px 10px; }
    .page-pedido .order-detail__item { gap: 10px; font-size: .79rem; }
    .page-pedido .order-detail__item > span { gap: 7px; }
    .page-pedido .order-detail__item strong { font-size: .79rem; }
    .page-pedido .order-detail__grid { grid-template-columns: 1fr; gap: 10px; }
    .page-pedido .order-detail__info--payment,
    .page-pedido .order-detail__info--notes { grid-column: auto; }
    .page-pedido .order-detail__info { padding: 16px; }
    .page-pedido .order-detail__next { padding: 18px; }
}

/* Historial de compras: tarjetas legibles y con espacio bajo el navbar fijo. */
.page-compras .account-orders { padding: clamp(108px, calc(4.5vw + 54px), 124px) 24px 60px; }
.page-compras .account-orders__eyebrow { color: #087f9e; font-weight: 600; }
.page-compras .account-orders__header { align-items: center; margin: 10px 0 24px; padding-bottom: 20px; border-bottom-color: #d5e0e8; }
.page-compras .account-orders__header h1 { color: #172b40; font-size: clamp(2rem, 3.2vw, 2.55rem); font-weight: 700; letter-spacing: -.045em; }
.page-compras .account-orders__header p { color: #586f82; font-size: .92rem; }
.page-compras .account-orders__back { padding: 10px 13px; border: 1px solid #c8d9e2; border-radius: 8px; background: #fff; color: #31536b; font-weight: 600; text-decoration: none; transition: .18s ease; }
.page-compras .account-orders__back:hover { border-color: #087f9e; background: #eef8fa; color: #076d87; }
.page-compras .orders-history { display: grid; gap: 10px; overflow: visible; border: 0; background: transparent; }
.page-compras .orders-history__item { grid-template-columns: minmax(0, 1fr) auto auto 16px; gap: clamp(14px, 2vw, 26px); min-width: 0; padding: 18px 20px; border: 1px solid #d6e1e9; border-radius: 9px; background: #fff; color: #2e455b; box-shadow: 0 4px 14px rgba(28, 50, 70, .035); transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease; }
.page-compras .orders-history__item + .orders-history__item { border-top: 1px solid #d6e1e9; }
.page-compras .orders-history__item:hover { border-color: #9bcbd7; background: #f1f9fa; color: #2e455b; box-shadow: 0 8px 20px rgba(28, 83, 104, .08); transform: translateY(-1px); }
.page-compras .orders-history__item > div { gap: 6px; min-width: 0; }
.page-compras .orders-history__reference { color: #20394f; font: 600 .9rem 'IBM Plex Mono', monospace; overflow-wrap: anywhere; }
.page-compras .orders-history__item small { color: #687d90; font-size: .75rem; line-height: 1.45; }
.page-compras .orders-history__item .order-status { justify-self: start; padding: 6px 10px; border-radius: 999px; font-size: .67rem; font-weight: 600; white-space: nowrap; }
.page-compras .orders-history__item > strong { color: #18344b; font-size: .98rem; }
.page-compras .orders-history__item > i { color: #087f9e; font-size: .9rem; transition: transform .18s ease; }
.page-compras .orders-history__item:hover > i { transform: translateX(3px); }
.page-compras .orders-pagination { justify-content: center; gap: 8px; margin-top: 22px; }
.page-compras .orders-pagination a { width: 38px; height: 38px; border-color: #cbd9e2; border-radius: 7px; background: #fff; color: #40566d; }
.page-compras .orders-pagination a[aria-current] { border-color: #087f9e; background: #087f9e; color: #fff; }
@media (max-width: 640px) {
    .page-compras .account-orders { padding: 108px 16px 42px; }
    .page-compras .account-orders__header { align-items: flex-start; gap: 14px; margin-bottom: 20px; }
    .page-compras .orders-history { gap: 9px; }
    .page-compras .orders-history__item { grid-template-columns: minmax(0, 1fr) auto; gap: 10px 12px; padding: 15px; }
    .page-compras .orders-history__item > div { grid-column: 1 / -1; }
    .page-compras .orders-history__item .order-status { grid-column: 1; grid-row: 2; }
    .page-compras .orders-history__item > strong { grid-column: 2; grid-row: 2; justify-self: end; font-size: .92rem; }
    .page-compras .orders-history__item > i { display: none; }
}
