/* ===== KIVARO B2B micro-interactions =====
   Purpose: subtle, stable hover feedback for a premium B2B brand site.
   Scope: content cards, images, CTAs, FAQ/RFQ controls. Sidebar menus stay color-only. */
:root{
  --kivaro-interaction-shadow:0 18px 38px rgba(61,43,31,.10);
  --kivaro-interaction-border:rgba(200,162,122,.34);
  --kivaro-interaction-sand:#E7DCC6;
  --kivaro-interaction-walnut:#3D2B1F;
  --kivaro-interaction-cream:#F7F3EE;
}

/* Card modules: slight lift, no bouncing, no exaggerated movement */
:where(
  .product-card,
  .oem-card,
  .product-highlight-v9,
  .product-tile-v9,
  .client,
  .cert-slide-card,
  .factory-photo-card,
  .factory-photo-card-v16,
  .value-box,
  .equipment-card,
  .snapshot-card,
  .serve-card,
  .serve-card-v19,
  .contact-redesign-card,
  .direct-contact-card,
  .form-case-card,
  .next-steps-card,
  .support-box,
  .buyer-trust-box,
  .tcard,
  .metric-card,
  .cta-box,
  .note-card-v16,
  .factory-feature-v16
){
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease !important;
  will-change:transform;
}

:where(
  .product-card,
  .oem-card,
  .product-highlight-v9,
  .product-tile-v9,
  .client,
  .cert-slide-card,
  .factory-photo-card,
  .factory-photo-card-v16,
  .value-box,
  .equipment-card,
  .snapshot-card,
  .serve-card,
  .serve-card-v19,
  .contact-redesign-card,
  .direct-contact-card,
  .form-case-card,
  .next-steps-card,
  .support-box,
  .buyer-trust-box,
  .tcard,
  .metric-card,
  .cta-box,
  .note-card-v16,
  .factory-feature-v16
):hover{
  transform:translateY(-4px) !important;
  box-shadow:var(--kivaro-interaction-shadow) !important;
  border-color:var(--kivaro-interaction-border) !important;
}

/* Keep image movement inside the existing rounded modules */
:where(
  .product-visual,
  .product-card .product-visual,
  .oem-card .media,
  .product-highlight-v9 .image,
  .product-tile-v9 .image,
  .client:not(.client-cta),
  .cert-slide-card,
  .factory-photo-card,
  .factory-photo-card-v16,
  .value-box,
  .equipment-card,
  .snapshot-card,
  .form-case-card,
  .contact-redesign-card
){
  overflow:hidden !important;
}

:where(
  .product-visual img,
  .oem-card .media img,
  .product-highlight-v9 .image img,
  .product-tile-v9 .image img,
  .client:not(.client-cta) img,
  .cert-slide-card img,
  .factory-photo-card img,
  .factory-photo-card-v16 img,
  .value-box > img,
  .equipment-card img,
  .snapshot-card img,
  .form-case-card img,
  .contact-redesign-card img
){
  transition:transform .38s ease, filter .38s ease !important;
  will-change:transform;
}

:where(
  .product-card,
  .oem-card,
  .product-highlight-v9,
  .product-tile-v9,
  .client:not(.client-cta),
  .cert-slide-card,
  .factory-photo-card,
  .factory-photo-card-v16,
  .value-box,
  .equipment-card,
  .snapshot-card,
  .form-case-card,
  .contact-redesign-card
):hover :where(img){
  transform:scale(1.025) !important;
}

/* CTA buttons: controlled response only */
:where(.btn,.btn-primary,.btn-secondary,.btn-light,.footer-inquiry-btn,.kivaro-fixed-quote-btn,.inquiry-submit){
  transition:transform .18s ease, background-color .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}
:where(.btn,.btn-primary,.btn-secondary,.btn-light,.footer-inquiry-btn,.kivaro-fixed-quote-btn,.inquiry-submit):hover{
  transform:translateY(-1px) !important;
}
:where(.btn-primary,.footer-inquiry-btn,.inquiry-submit):hover{
  box-shadow:0 12px 24px rgba(61,43,31,.12) !important;
}

/* Header navigation: color feedback, no movement */
.site-header .main-nav a:not(.btn){
  transition:background-color .18s ease, color .18s ease, border-color .18s ease !important;
}
.site-header .main-nav a:not(.btn):hover,
.site-header .main-nav a:not(.btn):focus-visible{
  background:var(--kivaro-interaction-sand) !important;
  color:var(--kivaro-interaction-walnut) !important;
}

/* Sidebar menus: color-only. No lift, no slide, no piano-key animation. */
.sidebar .menu-link,
.sidebar .menu-link:hover,
.sidebar .menu-link:focus-visible,
.sidebar .menu-link:active,
.sidebar .menu-link.is-active,
.sidebar .menu-link[aria-current="true"]{
  transform:none !important;
  box-shadow:none !important;
  transition:background-color .16s ease, color .16s ease, border-color .16s ease !important;
}
.sidebar .menu-link:hover,
.sidebar .menu-link:focus-visible,
.sidebar .menu-link:active,
.sidebar .menu-link.is-active,
.sidebar .menu-link[aria-current="true"]{
  background:var(--kivaro-interaction-sand) !important;
  color:var(--kivaro-interaction-walnut) !important;
  border-color:rgba(61,43,31,.14) !important;
}
.sidebar .menu-link::before,
.sidebar .menu-link::after{
  display:none !important;
  content:none !important;
}

/* FAQ / RFQ: practical hover feedback */
:where(.faq-question,.faq-head){
  transition:background-color .18s ease, border-color .18s ease, color .18s ease !important;
}
:where(.faq-question,.faq-head):hover{
  background:rgba(231,220,198,.54) !important;
  border-color:rgba(200,162,122,.30) !important;
}
:where(.faq-icon){
  transition:background-color .18s ease, color .18s ease, transform .18s ease !important;
}
:where(.faq-question,.faq-head):hover .faq-icon,
:where(.faq-question,.faq-head):focus-visible .faq-icon{
  background:var(--kivaro-interaction-sand) !important;
  color:var(--kivaro-interaction-walnut) !important;
}

/* Maintain stable layout for users who prefer reduced motion */
@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{
    transition:none !important;
    animation:none !important;
    scroll-behavior:auto !important;
  }
  :where(
    .product-card,
    .oem-card,
    .product-highlight-v9,
    .product-tile-v9,
    .client,
    .cert-slide-card,
    .factory-photo-card,
    .factory-photo-card-v16,
    .value-box,
    .equipment-card,
    .snapshot-card,
    .serve-card,
    .serve-card-v19,
    .contact-redesign-card,
    .direct-contact-card,
    .form-case-card,
    .next-steps-card,
    .support-box,
    .buyer-trust-box,
    .tcard,
    .metric-card,
    .cta-box,
    .note-card-v16,
    .factory-feature-v16
  ):hover,
  :where(.btn,.btn-primary,.btn-secondary,.btn-light,.footer-inquiry-btn,.kivaro-fixed-quote-btn,.inquiry-submit):hover,
  :where(img):hover{
    transform:none !important;
  }
}

@media (max-width:720px){
  /* On mobile, avoid card lifting that can feel unstable while scrolling */
  :where(
    .product-card,
    .oem-card,
    .product-highlight-v9,
    .product-tile-v9,
    .client,
    .cert-slide-card,
    .factory-photo-card,
    .factory-photo-card-v16,
    .value-box,
    .equipment-card,
    .snapshot-card,
    .serve-card,
    .serve-card-v19,
    .contact-redesign-card,
    .direct-contact-card,
    .form-case-card,
    .next-steps-card,
    .support-box,
    .buyer-trust-box,
    .tcard,
    .metric-card,
    .cta-box,
    .note-card-v16,
    .factory-feature-v16
  ):hover{
    transform:none !important;
  }
}
