/* ========================================
FONTS
======================================== */

@font-face {
  font-family: "New Standard C";
  src: url("../fonts/NewStandardC.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "New Standard C";
  src: url("../fonts/NewStandardC-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}


/* ========================================
VARIABLES
======================================== */

:root {
  --red: #bd4034;
  --red-dark: #a9362d;
  --black: #111;
  --white: #fff;
  --container: 1480px;
  --gutter: 40px;
  --content-edge: max(var(--gutter), calc((100vw - var(--container)) / 2));
}


/* ========================================
RESET
======================================== */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  scroll-behavior: smooth;
}

body {
  position: relative;
  margin: 0;
  width: 100%;
  max-width: 100%;
  min-width: 320px;
  overflow-x: hidden;
  color: var(--black);
  background: var(--white);
  font-family: "New Standard C", serif;
  -webkit-font-smoothing: antialiased;
}

body.is-ui-open {
  overflow: hidden;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background: url("../img/background/banner.webp") top center / 100% auto repeat-y;
  pointer-events: none;
}

img {
  display: block;
  max-width: 100%;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  background: transparent;
  cursor: pointer;
}

button,
input,
textarea,
select {
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
}

a,
button,
input,
textarea,
select {
  -webkit-tap-highlight-color: transparent;
}

input,
textarea,
select {
  font: inherit;
}

input[type="search"] {
  -webkit-appearance: none;
  appearance: none;
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  display: none;
}

.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 1200px) {
  :root {
    --gutter: 30px;
  }
}

@media (max-width: 767px) {
  :root {
    --gutter: 16px;
  }

  body::before {
    background-image: url("../img/background/mob-banner.webp");
    background-size: 100% auto;
  }
}

/* =========================================================
   WOOCOMMERCE NOTICES
   ========================================================= */

.woocommerce-notices-wrapper {
  width:min(var(--container),calc(100% - (var(--gutter) * 2)));
  margin:24px auto 0;
}

.woocommerce-notices-wrapper:empty {
  display:none;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  position:relative;
  display:flex;
  align-items:center;
  gap:14px;
  min-height:58px;
  margin:0 0 20px;
  padding:16px 20px 16px 52px;
  border:1px solid rgba(189,64,52,.18);
  border-radius:0;
  color:var(--black);
  background:#fffaf8;
  box-shadow:0 10px 28px rgba(17,17,17,.05);
  font-size:15px;
  line-height:1.45;
  list-style:none;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
  position:absolute;
  top:50%;
  left:20px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:20px;
  height:20px;
  margin:0;
  color:var(--white);
  background:var(--red);
  border-radius:50%;
  font-family:Arial,sans-serif;
  font-size:12px;
  font-weight:700;
  line-height:1;
  transform:translateY(-50%);
}

.woocommerce-message::before {
  content:"✓";
}

.woocommerce-info::before {
  content:"i";
}

.woocommerce-error::before {
  content:"!";
}

.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a {
  color:var(--red);
  font-weight:500;
  text-decoration:underline;
  text-underline-offset:3px;
}

.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button,
.woocommerce-message .restore-item {
  order:2;
  margin-left:auto;
  padding:0;
  border:0;
  color:var(--red);
  background:transparent;
  box-shadow:none;
  font:inherit;
  font-weight:500;
  line-height:1.2;
  text-decoration:underline;
  text-underline-offset:3px;
}

.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover,
.woocommerce-message .restore-item:hover {
  color:var(--red-dark);
  background:transparent;
}

@media(max-width:767px) {
  .woocommerce-notices-wrapper {
    width:calc(100% - 32px);
    margin-top:16px;
  }

  .woocommerce-message,
  .woocommerce-info,
  .woocommerce-error {
    align-items:flex-start;
    flex-wrap:wrap;
    min-height:0;
    padding:14px 16px 14px 46px;
    font-size:14px;
  }

  .woocommerce-message::before,
  .woocommerce-info::before,
  .woocommerce-error::before {
    top:16px;
    left:16px;
    transform:none;
  }

  .woocommerce-message .button,
  .woocommerce-info .button,
  .woocommerce-error .button,
  .woocommerce-message .restore-item {
    width:100%;
    margin:2px 0 0;
    text-align:left;
  }
}


/* Side-cart remove loading state */

[data-cart-drawer] .cart-item__remove.is-loading {
  opacity:.35;
  pointer-events:none;
}

/* =========================================================
   GLOBAL PAGE BREADCRUMBS
   ========================================================= */

.page-breadcrumbs {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
  margin:0 0 30px;
  color:rgba(17,17,17,.48);
  font-size:14px;
  line-height:1.25;
}

.page-breadcrumbs a {
  transition:color .2s ease;
}

.page-breadcrumbs a:hover {
  color:var(--red);
}

.page-breadcrumbs [aria-current="page"] {
  color:rgba(17,17,17,.56);
}

@media(max-width:767px) {
  .page-breadcrumbs {
    gap:7px;
    margin-bottom:22px;
    font-size:12px;
  }
}

/* =========================================================
   FLORA PRODUCT CARD AJAX
   WooCommerce appends a "View cart" link after AJAX success.
   Flora opens the side drawer instead, so that duplicate CTA is hidden.
   ========================================================= */

.product-card .added_to_cart {
  display:none;
}

