/* =========================================================
   SILEO – stil för Astra + WooCommerce (tillägget Sileo Tillägg)
   Färgguide: Ivory #F7F3EB · Oat #E7DCC7 · Sand #D6C3A9 ·
   Soft Brown #B69A7C · Sage #828D73 · Brown #51483D · White
   Princip: mest beige/brunt – grönt bara för viktiga knappar & detaljer.
   ========================================================= */

:root {
  --s-ivory: #F7F3EB;
  --s-oat:   #E7DCC7;
  --s-sand:  #D6C3A9;
  --s-soft:  #B69A7C;
  --s-sage:  #828D73;
  --s-brown: #51483D;
  --s-white: #FFFFFF;
  --s-serif: 'Cardo', Georgia, 'Times New Roman', serif;
  --s-sans:  'Inter', -apple-system, 'Segoe UI', Roboto, sans-serif;
  --s-r:     22px;
  --s-shadow: 0 14px 40px rgba(81, 72, 61, .09);
  --s-ease:  cubic-bezier(.22, .61, .36, 1);
  --s-wrap:  1240px;

  --s-leaf: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23828D73' stroke-width='1.3' stroke-linecap='round'%3E%3Cpath d='M5 19C5 10 11 4 20 4c0 9-6 15-15 15z'/%3E%3Cpath d='M5 19l9-9'/%3E%3C/svg%3E");
  --s-bag:  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1 12H6L5 8z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3Cpath d='M12 11.5v5M9.5 14h5'/%3E%3C/svg%3E");
  --s-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");

  /* Astras globala färger → Sileo */
  --ast-global-color-0: #828D73;
  --ast-global-color-1: #B69A7C;
  --ast-global-color-2: #51483D;
  --ast-global-color-3: #51483D;
  --ast-global-color-4: #F7F3EB;
  --ast-global-color-5: #FFFFFF;
  --ast-global-color-6: #E7DCC7;
  --ast-global-color-7: #D6C3A9;
  --ast-global-color-8: #51483D;
}

/* ---------- Grund ---------- */
html, body { overflow-x: clip; }
body.sileo {
  background: var(--s-ivory);
  color: var(--s-brown);
  font-family: var(--s-sans);
  font-weight: 300;
  -webkit-font-smoothing: antialiased;
}
body.sileo .site-content,
body.sileo .ast-separate-container,
body.sileo .ast-separate-container .ast-article-single,
body.sileo .ast-separate-container .ast-article-post,
body.sileo .ast-plain-container,
body.sileo .entry-content { background: transparent !important; }

body.sileo h1, body.sileo h2, body.sileo h3, body.sileo h4,
body.sileo .entry-title, body.sileo .wp-block-heading {
  font-family: var(--s-serif) !important;
  font-weight: 400 !important;
  color: var(--s-brown);
  letter-spacing: .1px;
}
body.sileo h1 em, body.sileo h2 em, body.sileo h3 em { font-style: italic; color: var(--s-soft); }

body.sileo a { color: var(--s-brown); text-decoration-color: var(--s-sand); text-underline-offset: 3px; }
body.sileo a:hover { color: var(--s-sage); }
::selection { background: var(--s-oat); color: var(--s-brown); }

/* ---------- Knappar ---------- */
/* Primär = grön → brun vid hover. Tydlig färgändring överallt. */
body.sileo .wp-block-button__link,
body.sileo .sileo-btn,
body.sileo .ast-button,
body.sileo button[type="submit"]:not(.sileo-qty__btn),
body.sileo input[type="submit"],
body.sileo .woocommerce a.button,
body.sileo .woocommerce button.button,
body.sileo.woocommerce-js a.button,
body.sileo.woocommerce-js button.button,
body.sileo .single_add_to_cart_button,
body.sileo .checkout-button,
body.sileo .wc-block-components-button:not(.is-link),
body.sileo .wc-block-cart__submit-button,
body.sileo .wc-block-components-checkout-place-order-button,
body.sileo .woocommerce-mini-cart__buttons .button {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  background: var(--s-sage) !important;
  color: var(--s-white) !important;
  border: 1px solid var(--s-sage) !important;
  border-radius: 999px !important;
  font-family: var(--s-sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 1.2px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  line-height: 1.2 !important;
  padding: 15px 32px !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: background-color .25s var(--s-ease), border-color .25s var(--s-ease), color .25s var(--s-ease), transform .25s var(--s-ease) !important;
}
body.sileo .wp-block-button__link:hover, body.sileo .wp-block-button__link:focus-visible,
body.sileo .sileo-btn:hover, body.sileo .sileo-btn:focus-visible,
body.sileo .ast-button:hover,
body.sileo button[type="submit"]:not(.sileo-qty__btn):hover,
body.sileo input[type="submit"]:hover,
body.sileo .woocommerce a.button:hover, body.sileo .woocommerce button.button:hover,
body.sileo.woocommerce-js a.button:hover, body.sileo.woocommerce-js button.button:hover,
body.sileo .single_add_to_cart_button:hover,
body.sileo .checkout-button:hover,
body.sileo .wc-block-components-button:not(.is-link):hover,
body.sileo .wc-block-cart__submit-button:hover,
body.sileo .wc-block-components-checkout-place-order-button:hover,
body.sileo .woocommerce-mini-cart__buttons .button.checkout:hover {
  background: var(--s-brown) !important;
  border-color: var(--s-brown) !important;
  color: var(--s-ivory) !important;
  transform: translateY(-1px);
}

/* Sekundär = kantad mjukbrun → fylld vid hover */
body.sileo .wp-block-button.is-style-outline > .wp-block-button__link,
body.sileo .woocommerce-mini-cart__buttons .button:not(.checkout),
body.sileo .sileo-btn--ghost {
  background: transparent !important;
  color: var(--s-brown) !important;
  border-color: var(--s-soft) !important;
}
body.sileo .wp-block-button.is-style-outline > .wp-block-button__link:hover,
body.sileo .woocommerce-mini-cart__buttons .button:not(.checkout):hover,
body.sileo .sileo-btn--ghost:hover {
  background: var(--s-soft) !important;
  border-color: var(--s-soft) !important;
  color: var(--s-white) !important;
}
body.sileo .sileo-btn--small { padding: 11px 22px !important; font-size: 12px !important; }

/* Tangentbordsfokus */
body.sileo a:focus-visible, body.sileo button:focus-visible, body.sileo summary:focus-visible,
body.sileo input:focus-visible, body.sileo select:focus-visible, body.sileo textarea:focus-visible {
  outline: 2px solid var(--s-soft); outline-offset: 3px;
}

/* ---------- Annonsrad ---------- */
.sileo-bar { background: var(--s-brown); color: var(--s-oat); font-size: 12px; letter-spacing: 1.6px; text-transform: uppercase; }
.sileo-bar__inner { max-width: var(--s-wrap); margin: 0 auto; padding: 9px 20px; display: flex; justify-content: center; gap: 42px; }
.sileo-bar__item { display: inline-flex; align-items: center; gap: 10px; }
.sileo-bar__item::before {
  content: ""; width: 13px; height: 13px; background: var(--s-sand);
  -webkit-mask: var(--s-leaf) center / contain no-repeat; mask: var(--s-leaf) center / contain no-repeat;
}
@media (max-width: 767px) {
  .sileo-bar__item { display: none; }
  .sileo-bar__item.is-active { display: inline-flex; animation: sileoFade .5s var(--s-ease); }
}
@keyframes sileoFade { from { opacity: 0; transform: translateY(3px); } to { opacity: 1; transform: none; } }

/* ---------- Header ---------- */
body.sileo #masthead { position: sticky; top: 0; z-index: 99; }
body.admin-bar.sileo #masthead { top: 32px; }
body.sileo .site-header,
body.sileo .ast-primary-header-bar,
body.sileo .main-header-bar,
body.sileo .ast-mobile-header-wrap .ast-primary-header-bar,
body.sileo .ast-above-header-bar, body.sileo .ast-below-header-bar {
  background: rgba(247, 243, 235, .96) !important;
  border-bottom: 1px solid transparent !important;
  box-shadow: none !important;
  transition: box-shadow .3s var(--s-ease), border-color .3s var(--s-ease), padding .3s var(--s-ease);
}
body.sileo .ast-primary-header-bar { padding: 14px 0; }
body.sileo.sileo-scrolled .ast-primary-header-bar {
  padding: 6px 0;
  border-bottom-color: var(--s-oat) !important;
  box-shadow: 0 6px 24px rgba(81, 72, 61, .07) !important;
}
body.sileo .site-logo-img img, body.sileo .custom-logo {
  max-height: 78px; width: auto; transition: max-height .3s var(--s-ease);
}
body.sileo.sileo-scrolled .site-logo-img img, body.sileo.sileo-scrolled .custom-logo { max-height: 56px; }
body.sileo .site-title a { font-family: var(--s-serif); letter-spacing: 6px; color: var(--s-brown) !important; }

/* Menyn: luftig, med mjuk "pill" vid hover och en liten prick för aktiv sida */
body.sileo .main-header-menu .menu-item > .menu-link {
  color: var(--s-brown) !important;
  font-family: var(--s-sans);
  font-size: 12.5px;
  font-weight: 500;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 10px 18px !important;
  margin: 0 2px;
  border-radius: 999px;
  position: relative;
  transition: background-color .25s var(--s-ease), color .25s var(--s-ease);
}
body.sileo .main-header-menu .menu-item:hover > .menu-link {
  background: var(--s-oat); color: var(--s-brown) !important;
}
body.sileo .main-header-menu .current-menu-item > .menu-link::after,
body.sileo .main-header-menu .current_page_item > .menu-link::after {
  content: ""; position: absolute; left: 50%; bottom: 2px; width: 5px; height: 5px;
  border-radius: 50%; background: var(--s-sage); transform: translateX(-50%);
}
/* Undermenyer */
body.sileo .main-header-menu .sub-menu {
  background: var(--s-white); border: 1px solid var(--s-oat) !important; border-radius: 16px; padding: 8px;
  box-shadow: var(--s-shadow);
}
body.sileo .main-header-menu .sub-menu .menu-link { border-radius: 10px; letter-spacing: 1px; }

/* Varukorgsikonen */
body.sileo .ast-site-header-cart .ast-cart-menu-wrap,
body.sileo .ast-site-header-cart .ast-addon-cart-wrap { color: var(--s-brown) !important; }
body.sileo .ast-site-header-cart .ast-icon svg { width: 22px; height: 22px; fill: var(--s-brown); }
body.sileo .ast-site-header-cart .ast-cart-menu-wrap .count,
body.sileo .ast-site-header-cart .ast-addon-cart-wrap .count,
body.sileo .ast-site-header-cart .count {
  background: var(--s-brown) !important; color: var(--s-ivory) !important; border-color: var(--s-brown) !important;
  font-weight: 500;
}
body.sileo .ast-header-woo-cart .ast-site-header-cart-li a,
body.sileo .ast-site-header-cart .cart-container {
  padding: 8px 12px; border-radius: 999px; transition: background-color .25s var(--s-ease);
}
body.sileo .ast-site-header-cart:hover .cart-container { background: var(--s-oat); }

/* Mobilmeny */
body.sileo .ast-mobile-popup-drawer .ast-mobile-popup-inner,
body.sileo .ast-mobile-header-content { background: var(--s-ivory) !important; }
body.sileo .ast-mobile-popup-drawer .menu-link,
body.sileo .ast-mobile-header-content .menu-link {
  color: var(--s-brown) !important; font-family: var(--s-serif); font-size: 22px; letter-spacing: .3px; text-transform: none;
  border-bottom: 1px solid var(--s-oat) !important;
}
body.sileo .ast-mobile-menu-trigger-minimal, body.sileo .menu-toggle { color: var(--s-brown) !important; }
body.sileo .ast-mobile-menu-trigger-minimal svg, body.sileo .menu-toggle svg { fill: var(--s-brown) !important; }

/* ---------- Minivarukorgen (rutan vid varukorgsikonen + mobilens utfällda varukorg) ---------- */
body.sileo .ast-site-header-cart .widget_shopping_cart,
body.sileo .astra-cart-drawer {
  background: var(--s-white) !important; border: 1px solid var(--s-oat) !important;
  border-radius: 18px; box-shadow: var(--s-shadow); color: var(--s-brown);
}
body.sileo .astra-cart-drawer { border-radius: 0; }
body.sileo .astra-cart-drawer .astra-cart-drawer-header { background: var(--s-ivory); border-bottom: 1px solid var(--s-oat); }
body.sileo .woocommerce-mini-cart .woocommerce-mini-cart-item {
  position: relative !important;
  padding: 14px 58px 14px 0 !important;
  border-bottom: 1px solid var(--s-oat) !important;
  min-height: 74px;
}
body.sileo .woocommerce-mini-cart .woocommerce-mini-cart-item a:not(.remove) {
  color: var(--s-brown) !important; font-family: var(--s-serif); font-size: 17px; font-weight: 400; text-decoration: none;
}
body.sileo .woocommerce-mini-cart .woocommerce-mini-cart-item img {
  border-radius: 12px; width: 58px !important; height: 58px !important; object-fit: cover;
}
/* Stort, tydligt raderingskryss – 40 px träffyta, ligger ovanpå allt annat */
body.sileo .woocommerce-mini-cart .woocommerce-mini-cart-item a.remove,
body.sileo .widget_shopping_cart .cart_list li a.remove {
  position: absolute !important;
  left: auto !important; right: 4px !important; top: 50% !important;
  transform: translateY(-50%);
  z-index: 5;
  width: 40px !important; height: 40px !important;
  display: flex !important; align-items: center; justify-content: center;
  border-radius: 50% !important;
  background: var(--s-oat) !important;
  border: 1px solid var(--s-sand) !important;
  color: var(--s-brown) !important;
  font-family: var(--s-sans) !important;
  font-size: 22px !important; line-height: 1 !important; font-weight: 400 !important;
  text-decoration: none !important;
  opacity: 1 !important;
  transition: background-color .2s var(--s-ease), color .2s var(--s-ease), border-color .2s var(--s-ease);
}
body.sileo .woocommerce-mini-cart .woocommerce-mini-cart-item a.remove:hover,
body.sileo .widget_shopping_cart .cart_list li a.remove:hover {
  background: var(--s-brown) !important; border-color: var(--s-brown) !important; color: var(--s-ivory) !important;
}
body.sileo .woocommerce-mini-cart__total { border-top: none !important; padding-top: 14px; font-size: 15px; }
body.sileo .woocommerce-mini-cart__total .amount { font-weight: 500; }
body.sileo .woocommerce-mini-cart__buttons { display: grid !important; gap: 8px; }
body.sileo .woocommerce-mini-cart__buttons .button { width: 100%; margin: 0 !important; }
body.sileo .woocommerce-mini-cart__empty-message { text-align: center; padding: 20px 0; }

/* ---------- Gemensamma byggstenar ---------- */
.sileo-kicker {
  display: flex; align-items: center; justify-content: center; gap: 10px;
  font-size: 12px; font-weight: 500; letter-spacing: 3px; text-transform: uppercase;
  color: var(--s-soft); margin-bottom: 12px !important;
}
.sileo-kicker::before { content: ""; width: 18px; height: 18px; flex: none; background: var(--s-leaf) center / contain no-repeat; }
.sileo-kicker.is-left { justify-content: flex-start; }
.sileo-section-title {
  font-size: clamp(32px, 3.8vw, 48px) !important;
  text-align: center; margin-top: 0 !important; margin-bottom: 46px !important; line-height: 1.12 !important;
}
.sileo-section { padding: 96px 24px !important; position: relative; }
.sileo-center { text-align: center; }
.sileo-center .wp-block-buttons { justify-content: center; }

/* Hela skärmbredden oavsett Astras container */
.sileo-full {
  width: 100vw !important; max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important;
}

/* Mjuka vågor ovanför oat-sektioner */
.sileo-wave { position: relative; margin-top: 70px !important; background: var(--s-oat); }
.sileo-wave::before {
  content: ""; position: absolute; left: 0; right: 0; top: -69px; height: 70px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 70' preserveAspectRatio='none'%3E%3Cpath d='M0 44C180 12 380 2 600 24s440 40 640 16 200-26 200-26V70H0z' fill='%23E7DCC7'/%3E%3C/svg%3E") no-repeat;
  background-size: 100% 100%;
}

/* Bilder med valvform / mjuka hörn */
.sileo-arch img { border-radius: 999px 999px 24px 24px !important; aspect-ratio: 4 / 5; object-fit: cover; width: 100%; }
.sileo-soft img { border-radius: var(--s-r) !important; }

/* ---------- Startsidan ---------- */
body.home.sileo .entry-header, body.home.sileo .entry-title { display: none !important; }
body.home.sileo #primary, body.home.sileo .site-main,
body.home.sileo .ast-article-single, body.home.sileo .site-content > .ast-container {
  margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important;
}
body.home.sileo .entry-content > * { margin-top: 0 !important; margin-bottom: 0 !important; }
body.home.sileo .entry-content > .sileo-wave { margin-top: 70px !important; }

/* Hero i helskärm */
.sileo-hero {
  min-height: min(92vh, 900px) !important;
  padding: 0 !important;
  align-items: flex-end !important;
  overflow: hidden;
}
.sileo-hero .wp-block-cover__image-background {
  animation: sileoZoom 24s ease-in-out infinite alternate;
  transform-origin: 60% 50%;
}
@keyframes sileoZoom { from { transform: scale(1); } to { transform: scale(1.08); } }
@media (prefers-reduced-motion: reduce) { .sileo-hero .wp-block-cover__image-background { animation: none; } }
.sileo-hero .wp-block-cover__background {
  opacity: 1 !important;
  background: linear-gradient(90deg, rgba(81,72,61,.72) 0%, rgba(81,72,61,.42) 42%, rgba(81,72,61,.05) 75%),
              linear-gradient(0deg, rgba(81,72,61,.35) 0%, rgba(81,72,61,0) 40%) !important;
}
.sileo-hero .wp-block-cover__inner-container {
  width: 100% !important; max-width: var(--s-wrap) !important;
  margin: 0 auto !important; padding: 0 28px 150px !important;
}
.sileo-hero .wp-block-cover__inner-container > * { max-width: 600px; margin-left: 0 !important; margin-right: 0 !important; text-align: left; }
.sileo-hero .sileo-kicker { justify-content: flex-start; color: var(--s-oat); }
.sileo-hero .sileo-kicker::before { background: var(--s-oat); -webkit-mask: var(--s-leaf) center / contain no-repeat; mask: var(--s-leaf) center / contain no-repeat; }
.sileo-hero h1 {
  color: var(--s-ivory) !important;
  font-size: clamp(44px, 6.4vw, 84px) !important;
  line-height: 1.02 !important;
  margin: 0 0 22px !important;
}
.sileo-hero h1 em { color: var(--s-oat) !important; }
.sileo-hero .sileo-lead { color: var(--s-ivory); font-size: 18px; line-height: 1.7; max-width: 480px; margin: 0 0 34px !important; }
.sileo-hero .wp-block-buttons { justify-content: flex-start; gap: 12px; }
body.sileo .sileo-hero .wp-block-button.is-style-outline > .wp-block-button__link {
  color: var(--s-ivory) !important; border-color: rgba(247,243,235,.75) !important; background: transparent !important;
}
body.sileo .sileo-hero .wp-block-button.is-style-outline > .wp-block-button__link:hover {
  background: var(--s-ivory) !important; border-color: var(--s-ivory) !important; color: var(--s-brown) !important;
}
/* Mjuk våg i underkant av bilden */
.sileo-hero::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 90px; z-index: 2; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath d='M0 60C220 20 470 6 720 34s520 52 720 10V90H0z' fill='%23F7F3EB'/%3E%3C/svg%3E") no-repeat;
  background-size: 100% 100%;
}

/* Fördelar – flyter in över bildens underkant */
.sileo-usp { position: relative; z-index: 3; margin-top: -70px !important; padding: 0 24px 20px !important; }
.sileo-usp .wp-block-columns { max-width: 1100px; margin: 0 auto !important; gap: 0 !important; background: var(--s-white); border-radius: var(--s-r); box-shadow: var(--s-shadow); }
.sileo-usp .wp-block-column { padding: 28px 26px !important; text-align: center; position: relative; }
.sileo-usp .wp-block-column + .wp-block-column::after {
  content: ""; position: absolute; left: 0; top: 24%; bottom: 24%; width: 1px; background: var(--s-oat);
}
.sileo-usp .wp-block-column::before {
  content: ""; display: block; width: 26px; height: 26px; margin: 0 auto 10px; background: var(--s-leaf) center / contain no-repeat;
}
.sileo-usp h3 { font-size: 20px !important; margin: 0 0 4px !important; }
.sileo-usp p { font-size: 14px; margin: 0; opacity: .8; }

/* Knappen under produkterna centreras */
.wp-block-woocommerce-product-collection + .wp-block-buttons { justify-content: center; margin-top: 44px !important; }

/* Om oss-teaser */
.sileo-story > .wp-block-columns { align-items: center !important; gap: 6vw !important; max-width: 1120px; margin: 0 auto !important; }
.sileo-story h2 { font-size: clamp(32px, 3.6vw, 46px) !important; line-height: 1.12 !important; margin-bottom: 20px !important; }
.sileo-story p { font-size: 16.5px; line-height: 1.85; }
.sileo-story .wp-block-buttons { margin-top: 30px; }

/* Märken */
.sileo-brands .wp-block-columns { gap: 26px !important; }
.sileo-brands .wp-block-column {
  background: var(--s-oat); border-radius: var(--s-r); padding: 50px 30px !important; text-align: center;
  transition: transform .35s var(--s-ease), box-shadow .35s var(--s-ease), background-color .35s var(--s-ease);
}
.sileo-brands .wp-block-column:hover { transform: translateY(-4px); box-shadow: var(--s-shadow); background: #E2D5BD; }
.sileo-brands h3 { font-size: 30px !important; margin-bottom: 8px !important; }
.sileo-brands h3 a { color: var(--s-brown) !important; text-decoration: none; }
.sileo-brands h3 a::after { content: " →"; font-size: .7em; color: var(--s-soft); }
.sileo-brands p { font-size: 15px; margin: 0; }

/* Kontaktband – oat, går över i sidfoten */
.sileo-contact h2 { font-size: clamp(32px, 3.6vw, 46px) !important; margin-bottom: 12px !important; }
.sileo-contact p:not(.sileo-kicker) { font-size: 17px; margin-bottom: 30px !important; }
body.home.sileo .site-footer { margin-top: 0 !important; }
body.home.sileo .site-footer::before { display: none !important; }

/* ---------- Produktkort (butik + startsida) ---------- */
body.sileo.woocommerce ul.products li.product,
body.sileo .woocommerce ul.products li.product,
body.sileo .wp-block-woocommerce-product-template > li {
  position: relative;
  background: var(--s-white);
  border: 1px solid var(--s-oat) !important;
  border-radius: var(--s-r);
  padding: 12px 12px 22px !important;
  text-align: center;
  transition: box-shadow .35s var(--s-ease), transform .35s var(--s-ease), border-color .35s var(--s-ease);
}
body.sileo ul.products li.product:hover,
body.sileo .wp-block-woocommerce-product-template > li:hover {
  box-shadow: var(--s-shadow); transform: translateY(-4px); border-color: var(--s-sand) !important;
}
body.sileo ul.products li.product img,
body.sileo .wp-block-woocommerce-product-template img {
  margin: 0 0 16px !important; aspect-ratio: 1 / 1; object-fit: cover; width: 100%;
  border-radius: 16px !important; background: var(--s-oat);
  transition: transform .6s var(--s-ease);
}
body.sileo ul.products li.product .astra-shop-thumbnail-wrap,
body.sileo .wp-block-woocommerce-product-image { overflow: hidden; border-radius: 16px; }
body.sileo ul.products li.product:hover img,
body.sileo .wp-block-woocommerce-product-template > li:hover img { transform: scale(1.04); }

body.sileo ul.products li.product .woocommerce-loop-product__title,
body.sileo .wp-block-woocommerce-product-template .wp-block-post-title,
body.sileo .wp-block-woocommerce-product-template .wp-block-post-title a {
  font-family: var(--s-serif) !important; font-size: 21px !important; font-weight: 400 !important;
  color: var(--s-brown) !important; text-decoration: none !important; margin-bottom: 4px !important;
}
body.sileo ul.products li.product .ast-woo-product-category {
  font-size: 11px; letter-spacing: 2px; text-transform: uppercase; color: var(--s-soft); opacity: 1;
}
body.sileo ul.products li.product .price,
body.sileo .wp-block-woocommerce-product-template .wc-block-components-product-price,
body.sileo .wp-block-woocommerce-product-price {
  color: var(--s-brown) !important; font-size: 16px !important; font-weight: 500 !important;
}
body.sileo ul.products li.product .price del { opacity: .5; font-weight: 300; }
body.sileo ul.products li.product .price ins { text-decoration: none; color: var(--s-soft); }

/* "Lägg i varukorg" → rund varukorgsikon i bildens hörn */
body.sileo ul.products li.product .button.add_to_cart_button,
body.sileo .wp-block-woocommerce-product-template .wc-block-components-product-button__button {
  position: absolute !important; top: 22px; right: 22px; z-index: 4;
  width: 46px !important; height: 46px !important; min-height: 0 !important;
  padding: 0 !important; margin: 0 !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid var(--s-oat) !important;
  color: transparent !important;
  font-size: 0 !important; letter-spacing: 0 !important;
  box-shadow: 0 6px 18px rgba(81,72,61,.12) !important;
  transform: none;
}
body.sileo ul.products li.product .button.add_to_cart_button::before,
body.sileo .wp-block-woocommerce-product-template .wc-block-components-product-button__button::before {
  content: ""; position: absolute; inset: 0; margin: auto; width: 21px; height: 21px;
  background: var(--s-brown);
  -webkit-mask: var(--s-bag) center / contain no-repeat; mask: var(--s-bag) center / contain no-repeat;
  transition: background-color .25s var(--s-ease);
}
body.sileo ul.products li.product .button.add_to_cart_button:hover,
body.sileo .wp-block-woocommerce-product-template .wc-block-components-product-button__button:hover {
  background: var(--s-brown) !important; border-color: var(--s-brown) !important; transform: scale(1.06);
}
body.sileo ul.products li.product .button.add_to_cart_button:hover::before,
body.sileo .wp-block-woocommerce-product-template .wc-block-components-product-button__button:hover::before { background: var(--s-ivory); }
body.sileo ul.products li.product .button.add_to_cart_button.loading::before { animation: sileoPulse .8s ease-in-out infinite alternate; }
body.sileo ul.products li.product .button.add_to_cart_button.loading::after { display: none !important; }
@keyframes sileoPulse { from { opacity: .3; } to { opacity: 1; } }
body.sileo ul.products li.product .button.add_to_cart_button.added,
body.sileo .wp-block-woocommerce-product-template .wc-block-components-product-button__button.added {
  background: var(--s-sage) !important; border-color: var(--s-sage) !important;
}
body.sileo ul.products li.product .button.add_to_cart_button.added::before,
body.sileo .wp-block-woocommerce-product-template .wc-block-components-product-button__button.added::before {
  background: var(--s-white); -webkit-mask-image: var(--s-check); mask-image: var(--s-check);
}
body.sileo ul.products li.product .button.add_to_cart_button.added::after { display: none !important; }
/* "Visa varukorg"-länken som dyker upp efter köp – liten och diskret */
body.sileo ul.products li.product a.added_to_cart,
body.sileo .wp-block-woocommerce-product-template a.added_to_cart {
  display: inline-block; margin-top: 8px; font-size: 12px; letter-spacing: 1px; text-transform: uppercase;
  color: var(--s-soft) !important; text-decoration: underline;
}
/* Slut i lager / "Läs mer" – textlänk i stället för knapp */
body.sileo ul.products li.product .button:not(.add_to_cart_button) {
  background: transparent !important; border: none !important; color: var(--s-soft) !important;
  padding: 6px 0 !important; font-size: 12px !important; letter-spacing: 1.2px !important;
  text-decoration: underline !important; transform: none !important;
}
body.sileo ul.products li.product .button:not(.add_to_cart_button):hover { color: var(--s-brown) !important; }

/* Rea / slut */
body.sileo span.onsale, body.sileo .wc-block-components-product-sale-badge {
  background: var(--s-soft) !important; color: var(--s-white) !important; border-radius: 999px !important; border: none !important;
  font-size: 11px; font-weight: 500; letter-spacing: 1px; text-transform: uppercase; padding: 5px 12px; min-height: 0; line-height: 1.4;
  top: 22px !important; left: 22px !important; right: auto !important;
}
body.sileo .ast-shop-product-out-of-stock {
  background: var(--s-brown); color: var(--s-ivory); border-radius: 999px; font-size: 11px; letter-spacing: 1px; padding: 5px 12px;
}

/* ---------- Butiken ---------- */
body.sileo.post-type-archive-product .woocommerce-products-header,
body.sileo.post-type-archive-product .ast-archive-description { display: none !important; }
body.sileo.tax-product_cat .ast-archive-description { background: transparent; text-align: center; padding: 30px 0 10px; }
body.sileo.tax-product_cat .ast-archive-title { font-size: clamp(34px, 4vw, 50px); }

.sileo-filters { margin: 10px 0 34px; display: flex; flex-direction: column; gap: 16px; }
.sileo-pills { display: flex; flex-wrap: wrap; gap: 10px; }
body.sileo .sileo-pill {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 10px 20px; border-radius: 999px;
  background: var(--s-oat); color: var(--s-brown) !important; text-decoration: none !important;
  font-size: 13px; font-weight: 500; letter-spacing: .6px;
  border: 1px solid var(--s-oat);
  transition: background-color .25s var(--s-ease), color .25s var(--s-ease), border-color .25s var(--s-ease);
}
body.sileo .sileo-pill:hover { background: var(--s-sand); border-color: var(--s-sand); }
body.sileo .sileo-pill.is-active { background: var(--s-brown); border-color: var(--s-brown); color: var(--s-ivory) !important; }
.sileo-pill__count { font-size: 11px; opacity: .65; }

.sileo-filter-more { background: var(--s-white); border: 1px solid var(--s-oat); border-radius: 18px; }
.sileo-filter-more > summary {
  list-style: none; cursor: pointer; padding: 14px 20px; font-size: 13px; font-weight: 500; letter-spacing: .6px;
  display: flex; align-items: center; justify-content: space-between;
}
.sileo-filter-more > summary::-webkit-details-marker { display: none; }
.sileo-filter-more > summary::after { content: "+"; font-size: 20px; color: var(--s-soft); transition: transform .25s var(--s-ease); }
.sileo-filter-more[open] > summary::after { transform: rotate(45deg); }
.sileo-filter-form { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; padding: 4px 20px 18px; }
.sileo-price { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.sileo-price label, .sileo-check { font-size: 14px; display: inline-flex; align-items: center; gap: 8px; }
body.sileo .sileo-price input {
  width: 92px; padding: 9px 14px; border-radius: 999px; border: 1px solid var(--s-sand); background: var(--s-ivory); color: var(--s-brown);
}
body.sileo .sileo-check input { width: 18px; height: 18px; accent-color: var(--s-sage); }
body.sileo .sileo-clear { font-size: 13px; color: var(--s-soft) !important; }

body.sileo .woocommerce-result-count { color: var(--s-brown); opacity: .7; font-size: 14px; }
body.sileo .woocommerce-ordering select {
  border: 1px solid var(--s-sand); background-color: var(--s-white); color: var(--s-brown);
  border-radius: 999px; padding: 9px 38px 9px 18px; font-family: var(--s-sans); font-size: 14px;
}

/* Sidnumrering */
body.sileo nav.woocommerce-pagination ul, body.sileo nav.woocommerce-pagination ul li { border: none !important; }
body.sileo nav.woocommerce-pagination ul li a,
body.sileo nav.woocommerce-pagination ul li span {
  background: transparent !important; color: var(--s-brown) !important;
  border: 1px solid var(--s-sand) !important; border-radius: 999px !important;
  min-width: 42px; height: 42px; line-height: 40px; padding: 0 12px !important; margin: 0 3px !important;
  transition: background-color .25s var(--s-ease), color .25s var(--s-ease);
}
body.sileo nav.woocommerce-pagination ul li a:hover { background: var(--s-oat) !important; }
body.sileo nav.woocommerce-pagination ul li span.current { background: var(--s-brown) !important; border-color: var(--s-brown) !important; color: var(--s-ivory) !important; }

/* ---------- Produktsidan ---------- */
body.sileo.single-product .entry-meta,
body.sileo.single-product .ast-single-product-title,
body.sileo.single-product .woocommerce-products-header,
body.sileo.single-product .ast-woocommerce-title-bar { display: none !important; }

body.sileo.single-product div.product {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; align-items: start;
  max-width: 1160px; margin: 20px auto 0;
}
body.sileo.single-product div.product .woocommerce-product-gallery,
body.sileo.single-product div.product .summary { width: 100% !important; float: none !important; margin: 0 !important; }
body.sileo.single-product div.product .woocommerce-product-gallery { max-width: 560px; justify-self: end; }
body.sileo.single-product div.product .woocommerce-product-gallery__image img,
body.sileo.single-product div.product .woocommerce-product-gallery img.wp-post-image {
  aspect-ratio: 1 / 1; object-fit: cover; width: 100%; border-radius: 26px !important; background: var(--s-oat);
}
body.sileo.single-product div.product .flex-control-thumbs { display: flex; gap: 10px; margin-top: 12px !important; }
body.sileo.single-product div.product .flex-control-thumbs li { width: 76px !important; }
body.sileo.single-product div.product .flex-control-thumbs img { border-radius: 12px !important; opacity: .6; transition: opacity .2s; }
body.sileo.single-product div.product .flex-control-thumbs img.flex-active,
body.sileo.single-product div.product .flex-control-thumbs img:hover { opacity: 1; }
body.sileo.single-product div.product .woocommerce-product-gallery__trigger { background: var(--s-white); border-radius: 50%; }
body.sileo.single-product div.product span.onsale { top: 18px !important; left: 18px !important; }

@media (min-width: 922px) {
  body.sileo.single-product div.product .summary { position: sticky; top: 130px; max-width: 500px; }
}
body.sileo.single-product .woocommerce-breadcrumb { font-size: 12px; letter-spacing: 1px; text-transform: uppercase; color: var(--s-soft); margin-bottom: 14px; }
body.sileo.single-product .woocommerce-breadcrumb a { color: var(--s-soft); text-decoration: none; }
body.sileo.single-product div.product .product_title {
  font-family: var(--s-serif) !important; color: var(--s-brown) !important;
  font-size: clamp(32px, 3.4vw, 44px) !important; font-weight: 400 !important; line-height: 1.1 !important; margin-bottom: 12px !important;
}
body.sileo.single-product div.product p.price {
  color: var(--s-brown) !important; font-size: 22px !important; font-weight: 500 !important; margin-bottom: 18px !important;
}
body.sileo.single-product div.product .woocommerce-product-details__short-description {
  color: var(--s-brown) !important; font-size: 16px !important; line-height: 1.85 !important;
  margin: 0 0 26px !important; padding: 0 !important; border: none !important;
}
body.sileo.single-product div.product .summary hr { display: none; }
body.sileo.single-product div.product .stock { font-size: 13px; color: var(--s-sage); font-weight: 500; }
body.sileo.single-product div.product .stock.out-of-stock { color: var(--s-soft); }

/* Antal + köpknapp på en rad */
body.sileo.single-product div.product form.cart { display: flex !important; gap: 12px; align-items: stretch; margin: 0 0 18px !important; }
body.sileo.single-product div.product form.cart .single_add_to_cart_button { flex: 1; padding: 17px 26px !important; font-size: 13.5px !important; }
body.sileo .quantity.sileo-qty {
  display: inline-flex !important; align-items: center; border: 1px solid var(--s-sand); border-radius: 999px;
  background: var(--s-white); overflow: hidden; margin: 0 !important;
}
body.sileo .quantity.sileo-qty .qty {
  width: 42px !important; border: none !important; background: transparent !important; text-align: center;
  color: var(--s-brown); font-size: 15px; padding: 0 !important; min-height: 0; height: 48px; box-shadow: none !important;
  -moz-appearance: textfield;
}
body.sileo .quantity.sileo-qty .qty::-webkit-outer-spin-button,
body.sileo .quantity.sileo-qty .qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
body.sileo .sileo-qty__btn {
  width: 42px; height: 48px; border: none; background: transparent; color: var(--s-brown);
  font-size: 20px; line-height: 1; cursor: pointer; padding: 0; transition: background-color .2s;
}
body.sileo .sileo-qty__btn:hover { background: var(--s-oat); }

/* Fördelsrad */
.sileo-trust {
  list-style: none; margin: 0 0 26px !important; padding: 16px 0 0 !important;
  display: flex; flex-wrap: wrap; gap: 8px 22px; border-top: 1px solid var(--s-oat);
}
.sileo-trust li { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; margin: 0 !important; }
.sileo-trust li::before { content: ""; width: 16px; height: 16px; background: var(--s-leaf) center / contain no-repeat; }

/* Utfällbara rader */
.sileo-accordion { border-top: 1px solid var(--s-sand); margin: 0 0 24px; }
.sileo-acc { border-bottom: 1px solid var(--s-sand); }
.sileo-acc > summary {
  list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 19px 4px; font-family: var(--s-serif); font-size: 20px; color: var(--s-brown);
  transition: color .2s var(--s-ease);
}
.sileo-acc > summary::-webkit-details-marker { display: none; }
.sileo-acc > summary:hover { color: var(--s-soft); }
.sileo-acc__icon {
  flex: none; position: relative; width: 30px; height: 30px; border-radius: 50%; background: var(--s-oat);
  transition: background-color .25s var(--s-ease), transform .3s var(--s-ease);
}
.sileo-acc__icon::before, .sileo-acc__icon::after {
  content: ""; position: absolute; left: 50%; top: 50%; width: 11px; height: 1.5px; background: var(--s-brown);
  transform: translate(-50%, -50%);
}
.sileo-acc__icon::after { transform: translate(-50%, -50%) rotate(90deg); transition: transform .3s var(--s-ease); }
.sileo-acc[open] .sileo-acc__icon { background: var(--s-sand); }
.sileo-acc[open] .sileo-acc__icon::after { transform: translate(-50%, -50%) rotate(0deg); }
.sileo-acc__body { padding: 0 4px 22px; font-size: 15px; line-height: 1.85; animation: sileoFade .35s var(--s-ease); }
.sileo-acc__body p:last-child { margin-bottom: 0; }
.sileo-acc__body table.woocommerce-product-attributes { border: none; margin: 0; }
.sileo-acc__body table.woocommerce-product-attributes th,
.sileo-acc__body table.woocommerce-product-attributes td { border: none; border-bottom: 1px solid var(--s-oat); background: transparent !important; padding: 8px 0; font-weight: 400; }
.sileo-faq dt { font-weight: 500; margin-top: 14px; }
.sileo-faq dt:first-child { margin-top: 0; }
.sileo-faq dd { margin: 4px 0 0; }

body.sileo.single-product div.product .product_meta {
  font-size: 12.5px; color: var(--s-brown); opacity: .75; border: none; padding: 0; margin: 0;
}
body.sileo.single-product div.product .product_meta a { color: var(--s-brown); }

/* Gamla flikar (om de ändå skulle visas) */
body.sileo.single-product .woocommerce-tabs { display: none !important; }

/* Relaterade produkter */
body.sileo.single-product .related.products, body.sileo.single-product .up-sells { grid-column: 1 / -1; margin-top: 70px; }
body.sileo.single-product .related.products > h2, body.sileo.single-product .up-sells > h2 {
  text-align: center; font-size: clamp(28px, 3vw, 38px) !important; margin-bottom: 32px;
}

@media (max-width: 921px) {
  body.sileo.single-product div.product { display: block; margin-top: 0; }
  body.sileo.single-product div.product .woocommerce-product-gallery { max-width: none; }
  body.sileo.single-product div.product .summary { margin-top: 26px !important; }
}

/* ---------- Varukorg & kassa (block) ---------- */
body.sileo .wp-block-woocommerce-cart, body.sileo .wp-block-woocommerce-checkout { color: var(--s-brown); }
body.sileo .wc-block-components-sidebar,
body.sileo .wc-block-checkout__sidebar,
body.sileo .wp-block-woocommerce-cart-totals-block {
  background: var(--s-white); border: 1px solid var(--s-oat); border-radius: var(--s-r); padding: 26px !important;
}
body.sileo .wc-block-cart-items, body.sileo .wc-block-cart-items__header,
body.sileo .wc-block-components-totals-wrapper { border-color: var(--s-oat) !important; }
body.sileo .wc-block-cart-item__image img { border-radius: 14px; }
body.sileo .wc-block-components-product-name { color: var(--s-brown) !important; font-family: var(--s-serif); font-size: 18px; text-decoration: none; }
/* Tydlig "Ta bort"-länk i varukorgen */
body.sileo .wc-block-cart-item__remove-link {
  display: inline-flex !important; align-items: center; gap: 6px; margin-top: 8px;
  padding: 7px 14px !important; border-radius: 999px; background: var(--s-oat) !important;
  color: var(--s-brown) !important; font-size: 12.5px !important; text-decoration: none !important;
  transition: background-color .2s var(--s-ease), color .2s var(--s-ease);
}
body.sileo .wc-block-cart-item__remove-link:hover { background: var(--s-brown) !important; color: var(--s-ivory) !important; }
body.sileo .wc-block-components-quantity-selector {
  border-radius: 999px !important; border-color: var(--s-sand) !important; overflow: hidden; background: var(--s-white);
}
body.sileo .wc-block-components-quantity-selector::after { border: none !important; }
body.sileo .wc-block-components-quantity-selector__button:hover { background: var(--s-oat) !important; }

body.sileo .wc-block-components-text-input input,
body.sileo .wc-block-components-combobox .wc-block-components-combobox-control input,
body.sileo .wc-block-components-textarea,
body.sileo .wc-blocks-components-select .wc-blocks-components-select__select {
  border: 1px solid var(--s-sand) !important; border-radius: 14px !important;
  background: var(--s-white) !important; color: var(--s-brown) !important;
}
body.sileo .wc-block-components-text-input input:focus,
body.sileo .wc-block-components-textarea:focus {
  border-color: var(--s-soft) !important; box-shadow: 0 0 0 3px rgba(182,154,124,.25) !important;
}
body.sileo .wc-block-components-radio-control__option-checked .wc-block-components-radio-control__input,
body.sileo .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked {
  border-color: var(--s-sage) !important; background: var(--s-sage) !important;
}
body.sileo .wc-block-components-radio-control-accordion-option,
body.sileo .wc-block-components-radio-control__option { border-radius: 14px; }
body.sileo .wc-block-components-title,
body.sileo .wc-block-components-checkout-step__title { font-family: var(--s-serif) !important; color: var(--s-brown) !important; }
body.sileo .wc-block-components-checkout-step__container::after { border-color: var(--s-oat) !important; }

body.sileo .woocommerce-message, body.sileo .woocommerce-info,
body.sileo .wc-block-components-notice-banner.is-info,
body.sileo .wc-block-components-notice-banner.is-success {
  background: var(--s-white) !important; border: 1px solid var(--s-oat) !important;
  border-left: 4px solid var(--s-sage) !important; color: var(--s-brown) !important; border-radius: 14px;
}

/* ---------- Egna formulär ---------- */
.sileo-form-wrap {
  background: var(--s-white); border: 1px solid var(--s-oat); border-radius: 26px;
  padding: clamp(24px, 4vw, 44px); max-width: 720px; margin: 10px auto 30px;
}
.sileo-form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 18px; }
.sileo-field { grid-column: 1 / -1; display: flex; flex-direction: column; gap: 7px; }
.sileo-field.is-half { grid-column: span 1; }
.sileo-field label, .sileo-field legend { font-size: 14px; font-weight: 500; color: var(--s-brown); }
.sileo-field fieldset { border: none; padding: 0; margin: 0; }
.sileo-req { color: var(--s-soft); }
body.sileo .sileo-field input, body.sileo .sileo-field textarea {
  width: 100%; padding: 13px 16px; border: 1px solid var(--s-sand); border-radius: 14px;
  background: var(--s-ivory); color: var(--s-brown); font-family: var(--s-sans); font-size: 15px;
  transition: border-color .2s, box-shadow .2s, background-color .2s;
}
body.sileo .sileo-field input:focus, body.sileo .sileo-field textarea:focus {
  outline: none; border-color: var(--s-soft); background: var(--s-white); box-shadow: 0 0 0 3px rgba(182,154,124,.25);
}
.sileo-radios { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 8px; }
.sileo-radio {
  display: inline-flex !important; align-items: center; gap: 8px; cursor: pointer; font-weight: 400 !important;
  padding: 10px 18px; border-radius: 999px; border: 1px solid var(--s-sand); background: var(--s-ivory);
}
.sileo-radio input { accent-color: var(--s-sage); width: 16px !important; height: 16px; }
.sileo-radio:has(input:checked) { background: var(--s-oat); border-color: var(--s-soft); }
.sileo-form__privacy { font-size: 13px; opacity: .75; margin: 18px 0 20px; }
.sileo-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.sileo-notice { border-radius: 16px; padding: 18px 22px; margin-bottom: 20px; font-size: 15px; line-height: 1.6; }
.sileo-notice.is-success { background: #EEF0E8; border: 1px solid #C9CFBD; }
.sileo-notice.is-error { background: #F6E9E2; border: 1px solid #E2C2B1; }
@media (max-width: 600px) { .sileo-field.is-half { grid-column: 1 / -1; } }

/* WPForms (om något formulär ligger kvar) */
body.sileo .wpforms-container .wpforms-submit {
  background: var(--s-sage) !important; color: #fff !important; border-radius: 999px !important; border: none !important;
}
body.sileo .wpforms-container .wpforms-submit:hover { background: var(--s-brown) !important; }

/* ---------- Textsidor ---------- */
body.sileo.page:not(.home):not(.woocommerce-page) .entry-content {
  background: var(--s-white) !important; border: 1px solid var(--s-oat); border-radius: 26px;
  padding: clamp(26px, 5vw, 64px) !important; max-width: 860px; margin: 0 auto 70px;
}
body.sileo.page:not(.home) .entry-content h2.wp-block-heading {
  font-size: 26px; margin-top: 42px; padding-top: 24px; border-top: 1px solid var(--s-oat);
}
body.sileo.page:not(.home) .entry-content h2.wp-block-heading:first-of-type { border-top: none; padding-top: 0; margin-top: 0; }
body.sileo.page:not(.home) .entry-content p, body.sileo.page:not(.home) .entry-content li { line-height: 1.85; }
body.sileo.page:not(.home) .entry-title { text-align: center; font-size: clamp(34px, 4vw, 50px); margin: 30px 0 34px; }
body.sileo.page:not(.home) .wp-block-media-text img { border-radius: var(--s-r); }
/* Sidor med formulär behöver inte dubbla rutor */
body.sileo.page .entry-content:has(.sileo-form-wrap) { background: transparent !important; border: none !important; padding: 0 !important; }

/* ---------- Sidfot ---------- */
body.sileo .site-footer { position: relative; margin-top: 90px; }
body.sileo .site-footer::before {
  content: ""; position: absolute; left: 0; right: 0; top: -69px; height: 70px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 70' preserveAspectRatio='none'%3E%3Cpath d='M0 36C220 6 460 0 700 24s480 40 740 8V70H0z' fill='%23E7DCC7'/%3E%3C/svg%3E") no-repeat;
  background-size: 100% 100%;
}
body.sileo .site-footer,
body.sileo .site-primary-footer-wrap,
body.sileo .site-above-footer-wrap { background: var(--s-oat) !important; color: var(--s-brown) !important; }
body.sileo .site-primary-footer-wrap { padding-top: 46px !important; padding-bottom: 46px !important; }
body.sileo .site-below-footer-wrap {
  background: var(--s-oat) !important; color: var(--s-brown) !important;
  border-top: 1px solid var(--s-sand) !important; font-size: 13px;
}
body.sileo .site-footer a, body.sileo .site-footer .menu-link { color: var(--s-brown) !important; text-decoration: none; }
body.sileo .site-footer a:hover, body.sileo .site-footer .menu-link:hover { color: var(--s-soft) !important; }
body.sileo .site-footer h2, body.sileo .site-footer h3, body.sileo .site-footer .widget-title {
  color: var(--s-brown) !important; font-size: 20px;
}
/* Sidfotens länkar i två spalter */
body.sileo .site-footer .ast-builder-menu .menu,
body.sileo .site-footer #astra-footer-menu,
body.sileo .site-footer .footer-widget-area .menu,
body.sileo .site-footer .widget_nav_menu .menu {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(150px, max-content));
  column-gap: 56px; row-gap: 4px;
  flex-direction: unset !important;
}
body.sileo .site-footer .ast-builder-menu .menu-item,
body.sileo .site-footer #astra-footer-menu .menu-item { margin: 0 !important; }
body.sileo .site-footer .ast-builder-menu .menu-link,
body.sileo .site-footer #astra-footer-menu .menu-link { padding: 6px 0 !important; font-size: 14.5px; }
@media (max-width: 544px) {
  body.sileo .site-footer .ast-builder-menu .menu,
  body.sileo .site-footer #astra-footer-menu { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
}

/* ---------- Cookie-ruta ---------- */
body.sileo #wpconsent-root .wpconsent-banner-button-accept,
body.sileo .wpconsent-banner .wpconsent-accept-all {
  background: var(--s-sage) !important; border-color: var(--s-sage) !important; color: #fff !important; border-radius: 999px !important;
}

/* ---------- Mobil ---------- */
@media (max-width: 921px) {
  body.sileo .ast-primary-header-bar { padding: 8px 0; }
  body.sileo .site-logo-img img, body.sileo .custom-logo { max-height: 56px; }
}
@media (max-width: 781px) {
  .sileo-section { padding: 64px 20px !important; }
  .sileo-hero { min-height: 86vh !important; }
  .sileo-hero .wp-block-cover__inner-container { padding: 0 22px 120px !important; }
  .sileo-hero .wp-block-cover__background {
    background: linear-gradient(0deg, rgba(81,72,61,.82) 0%, rgba(81,72,61,.45) 48%, rgba(81,72,61,.12) 100%) !important;
  }
  .sileo-hero .sileo-lead { font-size: 16px; }
  .sileo-usp { margin-top: -50px !important; }
  .sileo-usp .wp-block-columns { flex-direction: column; }
  .sileo-usp .wp-block-column { padding: 18px 20px !important; }
  .sileo-usp .wp-block-column + .wp-block-column::after { left: 22%; right: 22%; top: 0; bottom: auto; width: auto; height: 1px; }
  .sileo-story .sileo-arch { max-width: 320px; margin: 0 auto !important; }
  body.sileo ul.products li.product .button.add_to_cart_button,
  body.sileo .wp-block-woocommerce-product-template .wc-block-components-product-button__button {
    top: 18px; right: 18px; width: 42px !important; height: 42px !important;
  }
  body.sileo.single-product div.product form.cart { flex-wrap: wrap; }
}
