/*
 * Enter any custom CSS here.
 * This file will not be overwritten by theme updates.
 *
 * ── Semantic class hooks (sa-*) ────────────────────────────────────────────
 * Every section, snippet and key element carries a stable `sa-` class you can
 * target with plain CSS — no Tailwind rebuild needed. These classes ship with
 * NO styles of their own; they exist purely as selectors for you to hook onto.
 *
 * Page scope   body.sa-tpl-<template>      e.g. .sa-tpl-product, .sa-tpl-shop
 * Chrome       .sa-header .sa-navbar .sa-footer
 *              .sa-navbar-link .sa-navbar-logo .sa-navbar-cart .sa-footer-link
 * Sections     .sa-<component>             e.g. .sa-hero, .sa-features, .sa-faq
 *   variant    .sa-<component>--<variant>  e.g. .sa-hero--split-media
 *   inner      .sa-<component>-title / -subtitle / -eyebrow / -media /
 *              -items / -item / -actions / -link / -price / -badge / -icon
 * Primitives   .sa-btn (+ .sa-btn--<variant>), .sa-section-header
 *              (.sa-section-title / -eyebrow / -subtitle),
 *              .sa-product-card (+ .sa-product-card--<style>,
 *              .sa-product-card-title / -price / -stock / -status),
 *              .sa-product-form + .sa-add-to-cart, .sa-product-gallery,
 *              .sa-cart-panel + .sa-cart-item, .sa-searchbar, .sa-pagination,
 *              .sa-breadcrumbs, .sa-toasts + .sa-toast, .sa-feedback-card
 *
 * Example — bigger hero heading only on the product page:
 *   .sa-tpl-product .sa-hero-title { font-size: 3rem; }
 * ───────────────────────────────────────────────────────────────────────────
*/

/* ── Blue visual language overrides ───────────────────────────────────────── */

/* Eyebrow text: plain uppercase label like Blue's style, no pill chrome */
.sa-section-eyebrow,
.sa-hero-eyebrow {
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-size: 0.75rem;
}

/* Hero subtitle: slightly dimmer to match Blue's t-primary/75 secondary text */
.sa-hero-subtitle {
  opacity: 0.78;
}

/* Section subtitles: same restraint */
.sa-section-subtitle {
  opacity: 0.78;
}

/* Navbar: hard vertical divider between brand and links matches Blue's aesthetic */
.sa-navbar--classic .sa-navbar-logo {
  padding-right: 1.5rem;
  border-right: 1px solid var(--cl-border);
  margin-right: 0.25rem;
}

/* Footer: remove the gradient top rule — Blue used a simpler horizontal border */
.sa-footer > .absolute.top-0 {
  display: none;
}
.sa-footer {
  border-top: 1px solid var(--cl-border);
}

/* Footer wordmark: disabled in settings but guard against it showing at any opacity */
.footer-wordmark {
  display: none;
}

/* Icon tiles: Blue used solid accent fills without inner glow ring */
.icon-tile {
  background: rgba(var(--cl-accent), 0.12);
  border-color: rgba(var(--cl-accent), 0.18);
}
.group:hover .icon-tile-glow,
.icon-tile-glow:hover {
  background: rgba(var(--cl-accent), 0.2);
  box-shadow: none;
}

/* Rule labels in footer columns: hard left-aligned, no fade trail */
.rule-label::after {
  background: var(--cl-border);
}

/* Cart panel / modals: remove rounded card on the drawer itself */
.sa-cart-panel {
  border-radius: 0;
}

/* Search modal: remove rounding */
[role="dialog"] {
  border-radius: 0;
}

/* Social proof toast: no rounding */
.sa-toast {
  border-radius: 0;
}

/* Product cards: ensure no stray border-radius from utility classes on image wrappers */
.sa-product-card .aspect-product-card-image {
  border-radius: 0;
}

/* Feedback cards: match Blue's card style */
.sa-feedback-card {
  border-radius: 0;
}

/* Outline / secondary buttons: Blue used a crisp accent-colored border */
[class*="btn-"][class*="outline"],
.sa-btn--outline {
  border-color: rgba(var(--cl-accent), 0.5);
  color: rgb(var(--cl-accent));
}
[class*="btn-"][class*="outline"]:hover,
.sa-btn--outline:hover {
  background: rgba(var(--cl-accent), 0.08);
  border-color: rgba(var(--cl-accent), 0.7);
}

/* Announcement bar: tight text to match Blue's compact bar */
.sa-announcement {
  font-size: 0.8125rem;
  letter-spacing: 0.01em;
}

/* Steps connector: Blue palette — accent line on near-black */
.steps-flow {
  background: linear-gradient(
    180deg,
    transparent 0%,
    rgba(var(--cl-accent), 0.55) 50%,
    transparent 100%
  );
}