/* Sérénité 1.0.0 | Original skin for Hummingbird 2.x | MIT
 * No framework copy, no JS behavior overrides. Parent retains all commerce logic.
 * Keep local changes in custom.css (automatically loaded by PrestaShop last).
 */
:root,
[data-bs-theme="light"] {
  --sn-ink: #244c45;
  --sn-primary: #28594d;
  --sn-primary-hover: #193e35;
  --sn-canvas: #faf9f6;
  --sn-sage: #e8eee6;
  --sn-rose: #f5e8e3;
  --sn-line: #d9e1db;
  --sn-muted: #586861;
  --bs-primary: #28594d;
  --bs-primary-rgb: 40, 89, 77;
  --bs-link-color: #28594d;
  --bs-link-color-rgb: 40, 89, 77;
  --bs-link-hover-color: #193e35;
  --bs-link-hover-color-rgb: 25, 62, 53;
  --bs-body-color: #244c45;
  --bs-body-color-rgb: 36, 76, 69;
  --bs-body-bg: #faf9f6;
  --bs-border-color: #d9e1db;
}
body { color: var(--sn-ink); background: var(--sn-canvas); }
/* Explicit component variables are needed: changing --bs-primary alone does
 * not recolor Bootstrap's compiled buttons, pagination or focus rings. */
.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--sn-primary);
  --bs-btn-border-color: var(--sn-primary);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--sn-primary-hover);
  --bs-btn-hover-border-color: var(--sn-primary-hover);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--sn-primary-hover);
  --bs-btn-active-border-color: var(--sn-primary-hover);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #687d75;
  --bs-btn-disabled-border-color: #687d75;
  --bs-btn-focus-shadow-rgb: 40, 89, 77;
}
.btn-outline-primary {
  --bs-btn-color: var(--sn-primary);
  --bs-btn-border-color: var(--sn-primary);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--sn-primary);
  --bs-btn-hover-border-color: var(--sn-primary);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--sn-primary-hover);
  --bs-btn-active-border-color: var(--sn-primary-hover);
  --bs-btn-disabled-color: #687d75;
  --bs-btn-disabled-border-color: #687d75;
  --bs-btn-focus-shadow-rgb: 40, 89, 77;
}
.btn { --bs-btn-border-radius: .45rem; }
.form-control:focus, .form-select:focus {
  border-color: var(--sn-primary);
  box-shadow: 0 0 0 .2rem rgb(40 89 77 / 18%);
}
.form-check-input:checked { background-color: var(--sn-primary); border-color: var(--sn-primary); }
.form-check-input:focus { border-color: var(--sn-primary); box-shadow: 0 0 0 .2rem rgb(40 89 77 / 18%); }
.pagination {
  --bs-pagination-color: var(--sn-primary);
  --bs-pagination-active-bg: var(--sn-primary);
  --bs-pagination-active-border-color: var(--sn-primary);
  --bs-pagination-hover-color: var(--sn-primary-hover);
  --bs-pagination-focus-box-shadow: 0 0 0 .2rem rgb(40 89 77 / 18%);
}
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, summary:focus-visible {
  outline: 3px solid #9b532f;
  outline-offset: 3px;
}
.header-top { background: #fff; border-bottom: 1px solid var(--sn-line); }
.header-bottom { background: #fff; }
.header-bottom__row { padding-block: .6rem; }
.header-bottom__logo img { max-height: 64px; width: auto; }
.header-nav-full-width { background: var(--sn-sage); }
.ps-searchbar__input { border-radius: 2rem; background: #f7f7f3; border-color: var(--sn-line); }
.ps-searchbar__input::placeholder { color: var(--sn-muted); }
/* Desktop-only visual rearrangement: keep the parent's mobile offcanvas and
 * its data attributes intact. No DOM move or duplicated search form. */
@media (min-width: 1200px) {
  .header-bottom__row { flex-wrap: wrap; }
  .header-bottom__logo { flex: 0 0 26%; }
  #_desktop_ps_searchbar { flex: 1 1 65%; max-width: 74%; }
  #_desktop_ps_searchbar .ps-searchbar { width: 100%; max-width: 740px; margin-inline: auto; }
  .ps-mainmenu--desktop { order: 3; flex: 0 0 100%; width: 100%; margin-top: .8rem; border-top: 1px solid var(--sn-line); }
  .ps-mainmenu__desktop { padding-block: .3rem; }
  .ps-mainmenu__desktop > ul { justify-content: center; }
}
.submenu { border-color: var(--sn-line); box-shadow: 0 12px 24px rgb(36 76 69 / 10%); }
.submenu__left { background: var(--sn-sage); }
.breadcrumb { font-size: .82rem; }
.page-content--home > * { margin-bottom: 2.5rem; }
.section-title { color: var(--sn-ink); }
.product-miniature__inner { background: #fff; border: 1px solid var(--sn-line); border-radius: .65rem; overflow: hidden; height: 100%; transition: box-shadow .18s ease; }
.product-miniature__inner:hover { box-shadow: 0 6px 20px rgb(36 76 69 / 9%); }
.product-miniature__top { background: #fff; }
.product-miniature__bottom { padding: 1rem; }
.product-miniature__title { color: var(--sn-ink); font-weight: 600; line-height: 1.45; }
.product-miniature__price { color: var(--sn-primary); font-weight: 700; }
.product-miniature__regular-price { color: var(--sn-muted); }
.product-miniature__actions { margin-top: .7rem; }
.product-flags .product-flag { border-radius: .25rem; }
.product-flags .product-flag.discount { background: #8d3f43; color: #fff; }
.card { --bs-card-border-color: var(--sn-line); --bs-card-border-radius: .65rem; }
.footer__before { background: var(--sn-sage); }
.footer__main { background: #edf1ec; color: var(--sn-ink); border-top: 1px solid var(--sn-line); }
.footer__main a { color: var(--sn-ink); }
.footer__main a:hover { color: var(--sn-primary-hover); text-decoration: underline; }
@media (max-width: 575.98px) {
  .product-miniature__bottom { padding: .75rem; }
  .product-miniature__title { font-size: .88rem; }
  .page-content--home > * { margin-bottom: 1.75rem; }
}
@media (prefers-reduced-motion: reduce) {
  .product-miniature__inner { transition: none; }
}