:root{
  --bq-terracotta:#c2703d;
  --bq-terracotta-dark:#8a4a26;
  --bq-sand:#fdf6ee;
  --bq-sand-deep:#f6e9d8;
  --bq-ink:#3c2a1e;
}

html{scroll-behavior:smooth;}

body{
  background-color:var(--bq-sand);
  font-family:'Georgia','Iowan Old Style',ui-serif,serif;
}

.bq-font-display{
  font-family:'Iowan Old Style','Palatino Linotype',Georgia,serif;
}

.bq-font-sans{
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
}

.bq-hero-bg{
  background-image:linear-gradient(160deg,rgba(60,42,30,0.72),rgba(138,74,38,0.35)),url('/assets/img/hero-bread-loaves.webp');
  background-size:cover;
  background-position:center;
}

.bq-row-card{
  transition:transform .35s ease,box-shadow .35s ease;
}

.bq-row-card:hover{
  transform:translateY(-3px);
}

.bq-pill{
  border-radius:999px;
  transition:background-color .25s ease,transform .2s ease,box-shadow .25s ease;
}

.bq-pill:active{
  transform:scale(0.97);
}

.bq-carousel-track{
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}

.bq-carousel-track::-webkit-scrollbar{
  display:none;
}

.bq-carousel-slide{
  scroll-snap-align:start;
}

.bq-dot{
  width:8px;
  height:8px;
  border-radius:999px;
  background-color:#e7c9a9;
  transition:background-color .25s ease,width .25s ease;
}

.bq-dot.bq-dot-active{
  background-color:var(--bq-terracotta);
  width:22px;
}

.bq-clamp-3{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.bq-clamp-2{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

#bq-cookie-banner{
  transform:translateY(120%);
  transition:transform .5s ease;
}

#bq-cookie-banner.bq-visible{
  transform:translateY(0);
}

#bq-cookie-modal{
  opacity:0;
  pointer-events:none;
  transition:opacity .25s ease;
}

#bq-cookie-modal.bq-visible{
  opacity:1;
  pointer-events:auto;
}

.bq-toggle{
  width:42px;
  height:24px;
  border-radius:999px;
  background-color:#d9c3ad;
  position:relative;
  cursor:pointer;
  transition:background-color .2s ease;
}

.bq-toggle::after{
  content:'';
  position:absolute;
  top:3px;
  left:3px;
  width:18px;
  height:18px;
  border-radius:999px;
  background-color:#fff;
  transition:left .2s ease;
}

.bq-toggle.bq-on{
  background-color:var(--bq-terracotta);
}

.bq-toggle.bq-on::after{
  left:21px;
}

.bq-toggle.bq-disabled{
  opacity:.6;
  cursor:not-allowed;
}

#bq-mobile-menu{
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease;
}

#bq-mobile-menu.bq-open{
  max-height:400px;
}

.bq-underline-grow{
  position:relative;
}

.bq-underline-grow::after{
  content:'';
  position:absolute;
  left:0;
  bottom:-2px;
  width:0;
  height:2px;
  background-color:var(--bq-terracotta);
  transition:width .25s ease;
}

.bq-underline-grow:hover::after{
  width:100%;
}

.bq-stat-number{
  font-variant-numeric:tabular-nums;
}
