#site-navigation nav { display: none; }
#site-navigation.is-open nav { display: block; }
@media (min-width: 1024px) {
  #site-navigation nav { display: block; }
  .site-menu-toggle { display: none; }
}
.site-languages { display: flex; gap: .35rem; font-size: .72rem; font-weight: 700; }
.site-languages a { border: 1px solid #e2e8f0; border-radius: .25rem; padding: .35rem .45rem; }
.site-languages a[aria-current="page"] { background: #eff6ff; color: #1d4ed8; }
.quote-form input:focus, .quote-form textarea:focus, .json-action textarea:focus { outline: 2px solid #2563eb; outline-offset: 1px; }
.quote-form button:disabled { cursor: wait; opacity: .65; }
@media (max-width: 640px) { .site-languages { gap: .15rem; } .site-languages a { padding: .3rem; } }
#admin-app, body { font-family: "DM Sans", Arial, sans-serif; }
body { font-family: "DM Sans", Arial, sans-serif; font-size: 16px; line-height: 1.5; color: #202124; }
body h1, body h2, body h3, body h4, body h5, body h6 { font-family: "DM Sans", Arial, sans-serif; font-weight: 700; letter-spacing: -.018em; line-height: 1.2; color: #111827; }
body h1 { font-size: clamp(2rem, 3.2vw, 2.75rem); }
body h2 { font-size: clamp(1.5rem, 2vw, 1.9rem); }
body h3 { font-size: 1.2rem; }
body p, body li { line-height: 1.55; }
body nav a, body footer a { font-family: "DM Sans", Arial, sans-serif; }
#admin-app { font-size: 14px; }
#admin-app h1 { font-size: 1.5rem; }
#admin-app h2 { font-size: 1.05rem; }
body > footer, body footer { background: #0b1432 !important; border-color: #17264c !important; color: #f8fafc; }
body footer strong { color: #f8fafc; }
body footer a, body footer p, body footer .text-gray-500 { color: #9caecb !important; }
body footer nav a { color: #f8fafc !important; }
body footer a:hover { color: #56b4ec !important; }
body .bg-brand { background-color: #087fc1 !important; }
body .text-brand { color: #087fc1 !important; }
body .hover\:bg-brand-dark:hover { background-color: #096aa3 !important; }
#admin-app aside { background-color: #0b1432 !important; }
.site-header { position: sticky; top: 0; z-index: 50; background: #fff; box-shadow: 0 2px 12px rgb(15 23 42 / 8%); }
.site-header__inner, .site-nav__inner { display: flex; width: min(100% - 2rem, 1280px); min-height: 60px; margin: auto; align-items: center; justify-content: space-between; gap: 1rem; }
.site-header__brand img { display: block; width: 250px; max-width: 48vw; height: 58px; object-fit: contain; }
.site-header__actions { display: flex; align-items: center; gap: .8rem; }
.site-search { position: relative; flex: 1 1 240px; max-width: 440px; }
.site-search__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.site-search input { width: 100%; height: 42px; border: 1px solid #d7dee8; border-radius: 999px; padding-block: 0; padding-inline: 1rem 2.7rem; background: #f8fafc; color: #0b1432; font: inherit; font-size: .92rem; }
.site-search input:focus { outline: 2px solid #087fc1; outline-offset: 1px; background: #fff; }
.site-search button { position: absolute; top: 4px; inset-inline-end: 4px; display: grid; width: 34px; height: 34px; place-items: center; border: 0; border-radius: 999px; background: #087fc1; color: #fff; cursor: pointer; }
.site-search button:hover { background: #096aa3; }
.site-search__panel { position: absolute; z-index: 80; top: calc(100% + .45rem); inset-inline-start: 0; width: max(100%, 360px); max-width: min(460px, calc(100vw - 1.5rem)); max-height: min(70vh, 480px); overflow: auto; border: 1px solid #e2e8f0; border-radius: .7rem; background: #fff; box-shadow: 0 18px 40px rgb(15 23 42 / 16%); }
.site-search__panel[hidden] { display: none !important; }
.site-search__item { display: grid; grid-template-columns: 46px 1fr; gap: .75rem; align-items: center; padding: .65rem .8rem; color: #0b1432; text-decoration: none; }
.site-search__item img, .site-search__mark { width: 46px; height: 46px; border-radius: .4rem; background: #f8fafc; object-fit: contain; }
.site-search__mark { display: block; }
.site-search__item strong, .site-search-page__item strong { display: block; font-size: .92rem; line-height: 1.3; }
.site-search__item small, .site-search-page__item small { display: block; margin-top: .15rem; color: #64748b; font-size: .78rem; line-height: 1.35; }
.site-search__item[aria-selected="true"], .site-search__item:hover, .site-search__item:focus-visible { background: #eff6ff; }
.site-search__empty { margin: 0; padding: .9rem 1rem; color: #475569; font-size: .9rem; }
.site-search-page h1 { margin-bottom: .4rem; }
.site-search-page__count, .site-search-page__hint { margin: 0 0 1.25rem; color: #475569; }
.site-search-page section + section { margin-top: 1.6rem; }
.site-search-page h2 { margin: 0 0 .7rem; font-size: 1.05rem; }
.site-search-page__list { display: grid; gap: .7rem; }
.site-search-page__item { display: grid; grid-template-columns: 72px 1fr; gap: 1rem; align-items: center; border: 1px solid #e5e7eb; border-radius: .7rem; padding: .75rem; background: #fff; color: inherit; text-decoration: none; }
.site-search-page__item:hover { border-color: #bcd3e6; }
.site-search-page__item img, .site-search-page__mark { width: 72px; height: 72px; border-radius: .45rem; background: #f8fafc; object-fit: contain; }
.site-search-page__mark { display: block; }
.machine-card[hidden], .catalog-live-empty[hidden] { display: none !important; }
@media (max-width: 720px) { .site-header__inner { width: calc(100% - 1.25rem); min-height: 58px; flex-wrap: wrap; gap: .35rem .5rem; padding-block: .25rem; } .site-header__brand { flex: 1 1 auto; min-width: 0; } .site-header__brand img { width: 190px; max-width: 100%; height: 48px; } .site-header__actions { flex: 0 0 auto; gap: .45rem; } .site-menu-toggle { min-height: 40px; padding: .45rem .65rem; } .site-search { order: 3; flex: 0 0 100%; max-width: none; margin-bottom: .2rem; } .site-search__panel { width: 100%; } }
.site-languages { align-items: center; gap: .15rem; padding: .22rem; border: 1px solid #e5e7eb; border-radius: 999px; background: #f8fafc; }
.site-languages a { display: inline-flex; min-width: 34px; min-height: 32px; align-items: center; justify-content: center; border: 0; border-radius: 999px; padding: .35rem .55rem; color: #334155; text-decoration: none; transition: background .18s ease, color .18s ease, box-shadow .18s ease; }
.site-languages a:hover { background: #e8f3fa; color: #087fc1; }
.site-languages a[aria-current="page"] { background: #087fc1; color: #fff; box-shadow: 0 1px 3px rgb(8 127 193 / 25%); }
.site-language { position: relative; }
.site-language > summary { display: inline-flex; min-height: 40px; align-items: center; gap: .4rem; padding: .35rem .65rem; border: 1px solid #d7dee8; border-radius: 999px; background: #fff; color: #0b1432; font-size: .78rem; font-weight: 800; cursor: pointer; list-style: none; }
.site-language > summary::-webkit-details-marker { display: none; }
.site-language > summary svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.site-language[open] > summary { border-color: #087fc1; color: #087fc1; }
.site-language .site-languages { position: absolute; z-index: 90; top: calc(100% + .45rem); inset-inline-end: 0; display: grid; min-width: 144px; gap: .15rem; padding: .35rem; border: 1px solid #e2e8f0; border-radius: .65rem; background: #fff; box-shadow: 0 12px 30px rgb(15 23 42 / 16%); }
.site-language .site-languages a { justify-content: flex-start; border-radius: .4rem; }
.site-nav { background: #f7f7f8 !important; color: #0b1432; }
.site-nav__inner { min-height: 62px; justify-content: flex-start; flex-wrap: wrap; gap: .2rem; }
.site-nav__item { position: relative; }
.site-nav__top { display: flex; min-height: 62px; align-items: stretch; }
.site-nav__top > a { display: inline-flex; align-items: center; min-height: 62px; padding: .85rem .9rem; color: #0b1432 !important; font-size: 1rem; font-weight: 700; text-decoration: none; }
.site-nav__top > a:hover, .site-nav__top > a:focus-visible { background: #e9eef7 !important; color: #087fc1 !important; }
.site-nav__submenu { position: absolute; z-index: 70; top: 100%; inset-inline-start: 0; display: flex; width: max-content; min-width: 250px; max-width: min(340px, 90vw); flex-direction: column; padding: .5rem; border: 1px solid #e2e8f0; border-radius: 0 0 .5rem .5rem; background: #fff; box-shadow: 0 16px 32px rgb(15 23 42 / 16%); }
.site-nav__submenu[hidden] { display: none !important; }
.site-nav__submenu > p { margin: 0; padding: .65rem .75rem .45rem; color: #64748b; font-size: .8rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.site-nav__submenu > a { display: block; border-radius: .3rem; padding: .7rem .8rem; color: #0b1432 !important; font-size: 1rem; text-decoration: none; }
.site-nav__submenu > a:hover, .site-nav__submenu > a:focus-visible { background: #eff6ff !important; color: #087fc1 !important; }
.site-nav__inner > .site-nav__cta { display: inline-flex; align-items: center; padding: .75rem 1rem; margin-inline-start: auto; border-radius: .35rem; background: #c31473; color: white !important; font-size: .92rem; font-weight: 700; text-decoration: none; }
.site-nav__inner > .site-nav__cta:hover { background: #a90e63 !important; color: white !important; }
#site-navigation .site-nav__top > a { color: #0b1432 !important; }
#site-navigation .site-nav__top > a:hover, #site-navigation .site-nav__top > a:focus-visible { background: #e9eef7 !important; color: #087fc1 !important; }
.site-menu-toggle { display: none; border: 1px solid #cbd5e1; border-radius: .35rem; background: #fff; padding: .5rem .75rem; color: #0b1432; font-size: .875rem; font-weight: 700; }
@media (max-width: 1023px) { #site-navigation nav { display: none; } #site-navigation.is-open nav { display: block; } .site-menu-toggle { display: inline-flex; align-items: center; justify-content: center; } #site-navigation { position: absolute; z-index: 75; top: 100%; inset-inline: 0; } .site-nav { max-height: calc(100vh - 110px); overflow-y: auto; box-shadow: 0 12px 24px rgb(15 23 42 / 12%); } .site-nav__inner { width: 100%; align-items: stretch; flex-direction: column; gap: 0; padding: .3rem 1rem .8rem; } .site-nav__top { min-height: 46px; } .site-nav__top > a { flex: 1; min-height: 46px; padding: .65rem .75rem; } .site-nav__submenu { position: static; width: 100%; max-width: none; border-radius: .45rem; box-shadow: none; } .site-nav__inner > .site-nav__cta { min-height: 44px; justify-content: center; margin: .4rem 0 0; padding: .65rem; text-align: center; } }
.home-hero { position: relative; width: 100%; min-height: clamp(430px, 42vw, 660px); overflow: hidden; background: #f1f5f9; color: #0b1432; }
.home-hero > article[hidden] { display: none !important; }
.home-hero__image { position: absolute; inset: 0 0 0 auto; width: min(72%, 1120px); height: 100%; object-fit: contain; object-position: right center; }
.home-hero__image[hidden] { display: none !important; }
.home-hero::after { position: absolute; inset: 0; content: ""; pointer-events: none; background: linear-gradient(90deg, #f1f5f9 0%, rgb(241 245 249 / 98%) 31%, rgb(241 245 249 / 65%) 49%, rgb(241 245 249 / 0%) 72%); }
.home-hero__content { position: relative; z-index: 1; display: flex; min-height: inherit; width: min(100% - 2rem, 1280px); margin: auto; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(2rem, 5vw, 5rem) 0 clamp(3.5rem, 5vw, 5rem); }
.home-hero__eyebrow { margin: 0 0 1rem; color: #087fc1; font-size: .82rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.home-hero__title { max-width: 620px; margin: 0; color: #0b1432; font-size: clamp(2.3rem, 4.6vw, 4.4rem); font-weight: 800; letter-spacing: -.04em; line-height: 1.04; }
.home-hero__subtitle { max-width: 530px; margin: 1.1rem 0 0; color: #334155; font-size: clamp(1.05rem, 1.5vw, 1.3rem); line-height: 1.55; }
.home-hero__actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 2rem; }
.home-hero__actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; border-radius: .4rem; padding: .75rem 1.5rem; background: #c31473; color: white; font-weight: 700; text-decoration: none; }
.home-hero__actions a:hover { background: #a90e63; }
.home-hero__actions a + a { border: 1px solid #0b1432; background: transparent; color: #0b1432; }
.home-hero__actions a + a:hover { background: #fff; color: #087fc1; border-color: #087fc1; }
.home-hero__dots { position: absolute; z-index: 2; bottom: 1.5rem; left: 50%; display: flex; gap: .65rem; transform: translateX(-50%); }
.home-hero__dots button { width: 11px; height: 11px; border: 2px solid white; border-radius: 50%; background: rgb(255 255 255 / 45%); padding: 0; cursor: pointer; }
.home-hero__dots button[aria-current="true"] { background: #c31473; transform: scale(1.2); }
.home-hero__arrow { position: absolute; z-index: 3; top: 50%; display: grid; width: 42px; height: 42px; place-items: center; transform: translateY(-50%); border: 1px solid rgb(255 255 255 / 75%); border-radius: 50%; background: rgb(11 20 50 / 45%); color: #fff; font-size: 2rem; line-height: 1; cursor: pointer; }
.home-hero__arrow:hover { background: #c31473; }
.home-hero__arrow--previous { left: 1.2rem; }
.home-hero__arrow--next { right: 1.2rem; }
@media (max-width: 640px) { .home-hero { min-height: 590px; } .home-hero__image { inset: auto 0 0 auto; width: 100%; height: 58%; object-position: right bottom; } .home-hero::after { background: linear-gradient(180deg, #f1f5f9 0%, #f1f5f9 40%, rgb(241 245 249 / 78%) 55%, rgb(241 245 249 / 0%) 78%); } .home-hero__content { width: calc(100% - 2.5rem); min-height: 590px; justify-content: flex-start; padding: 2.5rem 0 0; } .home-hero__title { font-size: clamp(2.25rem, 11vw, 3.4rem); } .home-hero__subtitle { max-width: 34rem; } }
.home-hero__slide-image { display: none; }
[dir="rtl"] .home-hero__image { inset: 0 auto 0 0; object-position: left center; }
[dir="rtl"] .home-hero::after { background: linear-gradient(270deg, #f1f5f9 0%, rgb(241 245 249 / 98%) 31%, rgb(241 245 249 / 65%) 49%, rgb(241 245 249 / 0%) 72%); }
@media (max-width: 640px) { .home-hero__arrow { display: none; } }
@media (max-width: 640px) { [dir="rtl"] .home-hero__image { inset: auto auto 0 0; object-position: left bottom; } [dir="rtl"] .home-hero::after { background: linear-gradient(180deg, #f1f5f9 0%, #f1f5f9 40%, rgb(241 245 249 / 78%) 55%, rgb(241 245 249 / 0%) 78%); } }
.home-products { display: grid; gap: 1.25rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.home-products--parts { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.home-products--parts .machine-card__image { height: 170px; }
@media (max-width: 1023px) { .home-products, .home-products--parts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .home-products, .home-products--parts { grid-template-columns: 1fr; } }
.home-icon { width: 1.4rem; height: 1.4rem; }
.home-trust-icon { display: flex; width: 2.75rem; height: 2.75rem; align-items: center; justify-content: center; border-radius: .5rem; background: #e8f3fa; color: #087fc1; }
.home-figures { background: #0b1432; color: #fff; }
.home-figures__inner { display: grid; width: min(100% - 2rem, 1232px); margin: 0 auto; padding: 2.5rem 0; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 1.5rem; }
.home-figures__inner > div { display: flex; flex-direction: column-reverse; align-items: center; gap: .35rem; text-align: center; }
.home-figures dd { margin: 0; color: #56b4ec; font-size: clamp(2rem, 3.5vw, 2.75rem); font-weight: 800; letter-spacing: -.03em; line-height: 1; }
.home-figures dt { color: #cbd5e1; font-size: .9rem; font-weight: 600; }
.home-steps { padding: 4rem 0; background: #fff; }
.home-steps__inner { width: min(100% - 2rem, 1232px); margin: 0 auto; text-align: center; }
.home-steps__inner > h2 { margin: 0; }
.home-steps__subtitle { margin: .6rem 0 0; color: #64748b; }
.home-steps ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; margin: 2.5rem 0 0; padding: 0; list-style: none; counter-reset: none; }
.home-steps li { padding: 1.75rem 1.5rem; border: 1px solid #e2e8f0; border-radius: .75rem; background: #f8fafc; }
.home-steps__icon { position: relative; display: inline-flex; width: 3.5rem; height: 3.5rem; align-items: center; justify-content: center; border-radius: 50%; background: #087fc1; color: #fff; }
.home-steps__number { position: absolute; top: -.3rem; inset-inline-end: -.3rem; display: grid; width: 1.5rem; height: 1.5rem; place-items: center; border: 2px solid #fff; border-radius: 50%; background: #c31473; font-size: .75rem; font-weight: 800; }
.home-steps li h3 { margin: 1rem 0 0; }
.home-steps li p { margin: .5rem 0 0; color: #475569; font-size: .92rem; }
@media (max-width: 767px) { .home-steps ol { grid-template-columns: 1fr; } }
.home-cta { background: linear-gradient(120deg, #087fc1, #0b4f8a); color: #fff; }
.home-cta__inner { display: flex; width: min(100% - 2rem, 1232px); margin: 0 auto; padding: 3rem 0; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1.5rem; }
.home-cta h2 { margin: 0; color: #fff; }
.home-cta p { margin: .5rem 0 0; color: #e0f2fe; }
.home-cta__actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.home-cta__actions a { display: inline-flex; min-height: 48px; align-items: center; gap: .35rem; border: 1px solid rgb(255 255 255 / 70%); border-radius: .4rem; padding: .7rem 1.3rem; color: #fff; font-weight: 700; text-decoration: none; }
.home-cta__actions a:hover { background: rgb(255 255 255 / 12%); }
.home-cta__actions .home-cta__primary { border-color: #c31473; background: #c31473; }
.home-cta__actions .home-cta__primary:hover { background: #a90e63; }
.catalog-with-filters { display: grid; grid-template-columns: minmax(230px, 270px) minmax(0, 1fr); align-items: start; gap: 1.5rem; }
.catalog-filters { display: grid; gap: .85rem; padding: 1rem; border: 1px solid #dbe2ea; border-radius: .75rem; background: #fff; box-shadow: 0 2px 8px rgb(15 23 42 / 4%); }
.catalog-filters h2 { margin: 0; padding-bottom: .65rem; border-bottom: 1px solid #e2e8f0; color: #0b1432; font-size: 1rem; font-weight: 800; text-transform: uppercase; }
.catalog-filter { display: grid; gap: .35rem; color: #1e293b; font-size: .83rem; font-weight: 700; }
.catalog-filter input, .catalog-filter select { width: 100%; min-height: 42px; border: 1px solid #cbd5e1; border-radius: .55rem; background: #f8fafc; padding: .55rem .7rem; color: #0b1432; font-size: .9rem; font-weight: 400; }
.catalog-filter select:focus, .catalog-filter input:focus { outline: 2px solid #56b4ec; outline-offset: 1px; }
.catalog-filter-features { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem .45rem; padding: .2rem 0 .8rem; border: 0; border-bottom: 1px solid #e2e8f0; }
.catalog-filter-features legend { padding: 0 0 .5rem; color: #1e293b; font-size: .86rem; font-weight: 800; }
.catalog-filter-check { display: flex; align-items: flex-start; gap: .45rem; color: #334155; font-size: .78rem; line-height: 1.35; }
.catalog-filter-check input { accent-color: #087fc1; }
.catalog-filter-submit { min-height: 42px; border: 0; border-radius: .45rem; background: #087fc1; color: #fff; font-weight: 800; cursor: pointer; }
.catalog-filter-submit:hover { background: #096aa3; }
.catalog-filter-reset { color: #475569; font-size: .82rem; text-align: center; text-decoration: underline; }
.catalog-results { min-width: 0; }
.catalog-results-bar { display: flex; min-height: 42px; align-items: center; justify-content: flex-end; margin-bottom: 1rem; border-bottom: 1px solid #e2e8f0; color: #64748b; font-size: .88rem; }
.machine-card { display: flex; min-width: 0; flex-direction: column; overflow: hidden; border: 1px solid #dbe2ea; border-radius: .75rem; background: #fff; box-shadow: 0 2px 8px rgb(15 23 42 / 5%); }
.machine-card { transition: box-shadow .15s ease, border-color .15s ease; }
.machine-card:hover { border-color: #bcd3e6; box-shadow: 0 8px 24px rgb(15 23 42 / 9%); }
.machine-card__product { display: block; padding: .8rem .9rem 0; color: #0b1432; text-decoration: none; }
.machine-card__image { display: grid; height: 200px; place-items: center; overflow: hidden; border-radius: .55rem; background: #f8fafc; }
.machine-card__image img { display: block; width: 100%; height: 100%; padding: .5rem; object-fit: contain; }
.machine-card__brand { display: block; margin-top: .75rem; color: #087fc1; font-size: .7rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.machine-card__product h2 { display: -webkit-box; min-height: 2.7em; margin: .2rem 0 0; overflow: hidden; font-size: 1.05rem; font-weight: 800; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.machine-card__product:hover h2 { color: #087fc1; }
.machine-card > .product-badges { margin: .55rem .9rem 0; }
.machine-card__specs { display: grid; gap: .3rem; margin: .7rem .9rem 0; padding: .6rem 0 0; border-top: 1px solid #eef2f7; font-size: .8rem; }
.machine-card__specs > div { display: flex; justify-content: space-between; gap: .75rem; }
.machine-card__specs dt { color: #64748b; }
.machine-card__specs dd { margin: 0; color: #0b1432; font-weight: 700; text-align: end; }
.machine-card__actions { margin-top: auto; padding-top: .2rem; }
.product-badges { display: flex; flex-wrap: wrap; gap: .35rem; margin: .75rem 0 0; }
.product-badge { display: inline-flex; align-items: center; min-height: 22px; border-radius: 999px; padding: .1rem .55rem; background: #f1f5f9; color: #334155; font-size: .7rem; font-weight: 800; }
.product-badge--new { background: #e0f2fe; color: #075985; }
.product-badge--refurbished { background: #ede9fe; color: #5b21b6; }
.product-badge--used { background: #f1f5f9; color: #334155; }
.product-badge--in_stock { background: #dcfce7; color: #166534; }
.product-badge--low_stock { background: #fef3c7; color: #92400e; }
.product-badge--out_of_stock { background: #fee2e2; color: #991b1b; }
.catalog-filter-grid { display: grid; gap: .85rem; }
.machine-card__price { margin: .75rem .9rem 0; color: #0b1432; font-size: 1.1rem; font-weight: 800; }
.machine-card__price--quote { color: #475569; font-size: .9rem; }
.machine-card__details { display: flex; min-height: 42px; align-items: center; justify-content: center; margin: .75rem .9rem 0; border-radius: .45rem; background: #087fc1; color: #fff; font-size: .84rem; font-weight: 800; text-decoration: none; }
.machine-card__details:hover { background: #096aa3; }
.product-contact-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .45rem; margin: .65rem .9rem .9rem; }
.product-contact-actions > a { display: flex; min-height: 40px; align-items: center; justify-content: center; border: 1px solid #cbd5e1; border-radius: .5rem; padding: .5rem; color: #0b1432; font-size: .82rem; font-weight: 800; text-align: center; text-decoration: none; }
.product-contact-actions > .product-contact-actions__whatsapp { border-color: #20c86a; background: #20c86a; color: #fff; }
.product-contact-actions > a:hover { filter: brightness(.96); }
.product-detail { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: start; }
.product-detail__image { display: grid; min-height: 360px; place-items: center; border: 1px solid #e2e8f0; border-radius: .8rem; background: #f8fafc; }
.product-detail__image img { max-height: 560px; }
.product-detail__brand { margin-top: 1rem; color: #087fc1; font-size: .86rem; font-weight: 800; }
.product-detail__specs { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; margin-top: 1.2rem; }
.product-detail__specs > div { padding: .7rem; border: 1px solid #e2e8f0; border-radius: .5rem; background: #f8fafc; }
.product-detail__specs dt { color: #64748b; font-size: .72rem; font-weight: 700; }
.product-detail__specs dd { margin: .2rem 0 0; color: #0b1432; font-size: .9rem; font-weight: 800; }
.product-detail__price { margin-top: 1.2rem; color: #0b1432; font-size: 1.4rem; font-weight: 800; }
.product-detail__price--quote { font-size: 1rem; }
.product-detail__content > .product-contact-actions { margin: 1rem 0 0; max-width: 430px; }
.product-detail__quote { margin: 2rem 0 0; padding-top: 1.5rem; border-top: 1px solid #e2e8f0; }
.product-detail__quote > h2, .product-related > h2 { margin: 0 0 1rem; color: #0b1432; font-size: 1.5rem; font-weight: 800; }
.product-related { margin: 2.5rem 0 0; padding-top: 1.5rem; border-top: 1px solid #e2e8f0; }
.product-detail-page { padding-bottom: 3rem; }
.product-breadcrumb { display: flex; flex-wrap: wrap; gap: .4rem; color: #64748b; font-size: .82rem; }
.product-breadcrumb a { color: #475569; text-decoration: none; }
.product-breadcrumb a:hover { color: #087fc1; text-decoration: underline; }
.product-breadcrumb [aria-current] { color: #0b1432; font-weight: 600; }
.product-detail__title { margin: .9rem 0 0; color: #0b1432; font-size: clamp(1.6rem, 3vw, 2.2rem); font-weight: 800; line-height: 1.2; }
.product-detail__desc { margin: .9rem 0 0; color: #475569; line-height: 1.6; }
.product-intent { display: flex; flex-wrap: wrap; align-items: center; gap: .45rem; margin-top: 1rem; color: #475569; font-size: .82rem; font-weight: 700; }
.product-intent a { display: inline-flex; min-height: 34px; align-items: center; border: 1px solid #cbd5e1; border-radius: .45rem; padding: .3rem .85rem; color: #0b1432; text-decoration: none; }
.product-intent a:hover { border-color: #087fc1; color: #087fc1; }
.product-intent a[aria-current="true"] { border-color: #087fc1; background: #087fc1; color: #fff; }
.product-detail__compatible { margin-top: 1.2rem; }
.product-detail__compatible h2 { margin: 0 0 .5rem; color: #64748b; font-size: .75rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.product-detail__compatible ul { display: flex; flex-wrap: wrap; gap: .4rem; margin: 0; padding: 0; list-style: none; }
.product-detail__compatible li { border: 1px solid #e2e8f0; border-radius: .4rem; background: #f8fafc; padding: .25rem .6rem; color: #0b1432; font-size: .82rem; font-weight: 700; }
.rental-package-selector { margin: 2rem 0 0; padding: clamp(1rem, 2.5vw, 1.5rem); border: 1px solid #dbe2ea; border-radius: .9rem; background: #fff; box-shadow: 0 8px 28px rgb(15 23 42 / 6%); }
.rental-package-selector__heading { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-bottom: .9rem; }
.rental-package-selector__heading h2 { margin: 0; color: #0b1432; font-size: 1.05rem; font-weight: 900; text-transform: uppercase; }
.rental-package-selector__heading > span { color: #2563c5; font-size: .82rem; font-weight: 700; }
.rental-package-selector__packages { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .6rem; }
.rental-package { display: grid; align-content: start; gap: .4rem; padding: .75rem; border: 1px solid #dbe2ea; border-radius: .8rem; background: #fff; cursor: pointer; }
.rental-package:has(input:checked) { border: 2px solid #3763c3; background: #f3f7ff; padding: calc(.75rem - 1px); }
.rental-package input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.rental-package:focus-within { outline: 2px solid #56b4ec; outline-offset: 2px; }
.rental-package__name { color: #0b1432; font-size: .88rem; font-weight: 900; }
.rental-package__allowance { color: #334155; font-size: .79rem; line-height: 1.45; }
.rental-package__note { color: #2563c5; font-size: .68rem; font-weight: 900; text-transform: uppercase; }
.rental-durations { display: flex; flex-wrap: wrap; gap: .45rem; margin: 1rem 0 .65rem; padding: 0; border: 0; }
.rental-durations legend { width: 100%; margin-bottom: .45rem; color: #0b1432; font-size: .85rem; font-weight: 800; }
.rental-durations label { cursor: pointer; }
.rental-durations input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.rental-durations span { display: inline-flex; min-height: 39px; align-items: center; justify-content: center; border: 1px solid #dbe2ea; border-radius: .55rem; padding: .45rem .7rem; color: #334155; font-size: .81rem; font-weight: 700; }
.rental-durations input:checked + span { border-color: #3763c3; background: #3763c3; color: #fff; }
.rental-durations input:focus-visible + span { outline: 2px solid #56b4ec; outline-offset: 2px; }
.rental-custom-duration { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; padding: .6rem 0; border-top: 1px solid #eef2f7; color: #334155; font-size: .83rem; }
.rental-custom-duration input[type="number"] { width: 130px; min-height: 38px; border: 1px solid #cbd5e1; border-radius: .5rem; padding: .4rem .6rem; }
.rental-benefits { display: grid; gap: .55rem; margin: .55rem 0 1rem; padding-inline-start: 1.2rem; color: #334155; font-size: .83rem; }
.rental-package-selector__actions { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
.rental-package-selector__actions > a { display: flex; min-height: 48px; align-items: center; justify-content: center; gap: .55rem; border: 1px solid #cbd5e1; border-radius: .65rem; padding: .7rem 1rem; background: #fff; color: #0b1432; font-size: .9rem; font-weight: 800; line-height: 1.25; text-align: center; text-decoration: none; }
.rental-package-selector__actions > a svg { width: 1.15rem; height: 1.15rem; flex: none; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.rental-package-selector__actions > .product-contact-actions__whatsapp { border-color: #1ebe5d; background: #25d366; color: #fff; }
.rental-package-selector__actions > .product-contact-actions__whatsapp svg { fill: currentColor; stroke: none; }
.rental-package-selector__actions > .product-contact-actions__email:hover { border-color: #087fc1; color: #087fc1; }
.rental-package-selector__actions > .product-contact-actions__whatsapp:hover { background: #1ebe5d; }
.rental-package-selector__actions > a[aria-disabled="true"] { opacity: .5; pointer-events: none; }
@media (max-width: 900px) { .catalog-with-filters { grid-template-columns: minmax(205px, 245px) minmax(0, 1fr); gap: 1rem; } }
@media (max-width: 700px) { .catalog-with-filters { grid-template-columns: 1fr; } .catalog-filters { position: static; } .product-detail { grid-template-columns: 1fr; } .product-detail__image { min-height: 260px; } }
@media (max-width: 640px) { .rental-package-selector__actions { grid-template-columns: 1fr; } }
@media (max-width: 480px) { .rental-package-selector__packages { gap: .35rem; } .rental-package { padding: .55rem .4rem; } .rental-package:has(input:checked) { padding: calc(.55rem - 1px) calc(.4rem - 1px); } .rental-package__name { font-size: .77rem; } .rental-package__allowance { font-size: .7rem; } .rental-package__note { font-size: .58rem; } .rental-package-selector__heading { align-items: flex-start; flex-direction: column; } }
