/* Light technology storefront. Design only; shared Core owns settings and commerce. */
:root {
  --ink: #142741;
  --text: #24364b;
  --muted: #61748b;
  --paper: #f7faff;
  --line: #dce5f0;
  --orange: #225cff;
  --soft: #edf4ff;
  --tech-blue: #225cff;
}
body { font-family: "Segoe UI", Arial, sans-serif; background: var(--paper); }
a:hover { color: var(--tech-blue); }
.announcement { background: #edf4ff; color: #3c5576; border-bottom: 1px solid #dce7f7; }
.announcement > div { font-size: 12px; letter-spacing: .3px; padding-top: 9px; padding-bottom: 9px; }
.site-header { background: #fff; }
.header-top { height: 104px; }
.brand { color: var(--ink); font-weight: 700; letter-spacing: -1px; }
.brand-mark i { background: var(--tech-blue); border-radius: 1px; }
.brand-mark i:nth-child(4), .brand-dot { background: #b9d6ff; color: var(--tech-blue); }
.header-caption { color: #637994; font-size: 11px; letter-spacing: 2px; }
.header-tools { gap: 28px; font-size: 14px; }
.header-tools svg { stroke-width: 1.65; }
.bag-link { background: #edf3ff; color: #2453b5; border: 1px solid #d9e6ff; padding: 11px 15px; border-radius: 6px; }
.header-nav { border-top-color: #edf1f6; border-bottom: 2px solid #dce7f7; min-height: 60px; }
.astramesh-categories { font-size: 14px; font-weight: 500; gap: 32px; }
.astramesh-categories a { display: inline-block; padding: 18px 0; transition: color .15s; }
.astramesh-categories li:last-child { color: var(--tech-blue); }
.nav-note { font-size: 11px; color: #627994; }
.site-search[open] form { border-color: var(--line); box-shadow: 0 14px 40px #24477a18; }
.site-search input { font-size: 14px; }
.home-main { padding-top: 0; }
.home-banner { margin: 28px 0 34px; border: 1px solid #d6e5fa; border-radius: 12px; background: #eaf3ff; box-shadow: 0 10px 35px #385c9d0a; }
.home-banner img { display: block; width: 100%; height: auto; object-fit: contain; }
.home-main .essentials { margin-bottom: 72px; }
.woocommerce ul.products, .home-main ul.products { gap: 25px 22px !important; }
.woocommerce ul.products li.product, .home-main ul.products li.product {
  border: 1px solid #dce5ef; border-radius: 10px; background: #fff;
  padding-bottom: 21px !important; box-shadow: 0 3px 14px #24436805;
  transition: border-color .18s, box-shadow .18s, transform .18s;
}
.woocommerce ul.products li.product:hover { border-color: #9cb9f4; box-shadow: 0 10px 28px #2452a011; transform: translateY(-3px); }
.woocommerce ul.products li.product a img { border-bottom: 1px solid #e7edf5; background: #f0f5fa; object-fit: contain; }
.woocommerce ul.products li.product .product-category { color: #5b7090; font-size: 10px; font-weight: 600; letter-spacing: 1.3px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color: #1b2c45; font-size: 16px; font-weight: 600; line-height: 1.45; letter-spacing: -.2px; min-height: 52px; }
.woocommerce ul.products li.product .price { color: #194eaf; font-size: 16px; font-weight: 700; margin-bottom: 15px; }
.woocommerce ul.products li.product .price del { color: #728298; font-size: 13px; }
.woocommerce ul.products li.product .button {
  background: #edf3ff !important; color: #1d50ba !important; border: 1px solid #cfddfa !important;
  font-size: 12px; min-height: 40px; padding: 10px 14px !important; border-radius: 5px;
}
.woocommerce ul.products li.product .button:hover { background: #225cff !important; border-color: #225cff !important; color: #fff !important; }
.woocommerce ul.products li.product .added_to_cart { font-size: 12px; color: #225cff; margin-top: 10px; }
.woocommerce ul.products li.product .onsale { background: #225cff !important; }
.button, button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.wc-block-components-button:not(.is-link) { background: #225cff; border-color: #225cff; border-radius: 6px; font-size: 14px; font-weight: 600; }
.button:hover, button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover { background: #1748d1; border-color: #1748d1; color: #fff; }
.site-footer { padding-top: 40px; background: #eff5fc; border-top: 2px solid #d2e2f8; border-radius: 12px 12px 0 0; }
.footer-main { gap: 34px; }
.footer-main > div { min-width: 0; }
.footer-main h2 { color: #193755; font-size: 16px; letter-spacing: .3px; }
.footer-main p, .footer-contact address, .footer-main a:not(.brand), .footer-main > div > a:not(.brand) { color: #4d627b; font-size: 16px; line-height: 1.75; }
.footer-main a:not(.brand):hover { color: #225cff; text-decoration: underline; text-underline-offset: 4px; }
.footer-brand > p { max-width: 310px; }
.dealer small, .footer-bottom { color: #667b93; font-size: 13px; }
.footer-bottom { border-color: #d4e1f0; }
.product-service { background: #f0f6ff; border-color: #d7e5f8; border-radius: 8px; }
.product-service .service-label { color: #56729a; letter-spacing: 1.5px; }
.product-service > p:not(.service-label) { font-size: 14px; }
.product-service small, .product-service p.viewers-demo { color: #677b94; font-size: 12px; }
.payment-preview { border-color: #d8e5f7; }
.woocommerce div.product .product_title { color: #152c4a; font-weight: 650; letter-spacing: -1px; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: #1a53bd; }
.woocommerce div.product .product_meta, .woocommerce .woocommerce-breadcrumb { font-size: 13px; color: #657a94; }
.woocommerce div.product div.images img { background: #f1f6fb; border: 1px solid #e0e8f1; }
.woocommerce div.product form.cart .variations select, .woocommerce .quantity .qty,
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.astramesh-form input:not([type=checkbox]), .astramesh-form textarea, .astramesh-form select { border-color: #cbd9eb; background: #fff; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: #edf4ff; border-color: #d6e3f4; font-size: 14px; }
.woocommerce div.product .woocommerce-tabs .panel { color: #516981; }
.woocommerce-info, .woocommerce-message { border-top-color: #225cff; background: #edf4ff; color: #2d486c; }
.woocommerce-info:before, .woocommerce-message:before { color: #225cff; }
.astramesh-contact-details { background: #eef5ff; border-left-color: #3672ea; }
.astramesh-form { border-color: #d5e2f1; }
@media (max-width: 1050px) {
  .header-tools { gap: 20px; }
  .astramesh-categories { gap: 24px; }
  .footer-main { gap: 28px; }
}
@media (max-width: 680px) {
  .announcement > div { font-size: 11px; padding-top: 8px; padding-bottom: 8px; }
  .header-top { height: 84px; }
  .header-tools { gap: 14px; }
  .bag-link { padding: 9px 11px; }
  .header-nav { min-height: 51px; }
  .astramesh-categories { gap: 23px; font-size: 13px; }
  .astramesh-categories a { padding: 14px 0; }
  .home-banner { margin: 20px 0 26px; border-radius: 7px; }
  .home-main .essentials { margin-bottom: 46px; }
  .woocommerce ul.products, .home-main ul.products { gap: 18px 12px !important; }
  .woocommerce ul.products li.product .product-category { font-size: 9px; letter-spacing: .8px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 14px; min-height: 46px; line-height: 1.5; }
  .woocommerce ul.products li.product .price { font-size: 15px; }
  .woocommerce ul.products li.product .button { font-size: 11px; min-height: 40px; padding: 9px 11px !important; }
  .site-footer { padding-top: 24px; }
  .footer-main { gap: 28px 22px; }
  .footer-main h2, .footer-main p, .footer-contact address, .footer-main a:not(.brand) { font-size: 16px; }
  .footer-bottom { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .woocommerce ul.products li.product, .home-main ul.products li.product, .astramesh-categories a { transition: none; }
  .woocommerce ul.products li.product:hover { transform: none; }
}

/* Long-form business pages keep a readable text measure on desktop and mobile. */
.policy-copy { max-width: 860px; color: #34465c; overflow-wrap: anywhere; }
.policy-copy p, .policy-copy li { font-size: 16px; line-height: 1.8; }
.policy-copy p { margin: 0 0 18px; }
.policy-copy h2 { margin: 30px 0 12px; font-size: 25px; line-height: 1.35; color: #21334d; }
.policy-copy ul { padding-left: 22px; }
.policy-copy li { margin-bottom: 9px; }
.policy-copy a { text-decoration: underline; text-underline-offset: 3px; }
.policy-copy .policy-date, .policy-copy .page-eyebrow { color: #62738a; font-size: 13px; }
.policy-copy code { font-size: 14px; }
@media (max-width: 680px) { .policy-copy h2 { font-size: 23px; } }
