:root{
  /* --bg-color-lightBlue:#E4EFF0; */
  --bg-color-lightBlue:#E7ECEE;
  --bg-color-desert:#F5ECE1;
  /* --bg-color-lightbeige:#FCF7F3; */
  --bg-color-lightbeige:#F7F6F2;
  --bg-color-caramel:#D48344;
  --bg-color:#F7F6F2;
  --font-color:#423E3B;
  --color-primary:#423E3B;
}

.damion-regular {
    font-family: "Damion", serif;
    font-weight: 400;
    font-style: normal;
  }

  h2 {
      font-weight:800;
      color:#51433D;
      line-height: 1.2em;
      letter-spacing: -0.03em;
  }

  .cafeato-logo {
      text-shadow: 2px 2px 30px rgba(81,67,61,0.5);
  }

  .cappuccino {
      color:#B1A197;
  }

  .text-light-brown {
      color: #A7968B;
  }

  .cappuccino-bg {
      background-color: #B1A197;
  }

  .bg-medium-beige {
    background:#EAE3D7;
  }

  .cappuccino-bg-gradient {
    background-color: #D0C0A6 !important;
    /* background:radial-gradient(circle, rgba(177,161,151,1) 0%, rgba(229,223,220,1) 100%); */
      /* background: linear-gradient(90deg, #b1a197, #E5DFDC); */
      /* background: linear-gradient(90deg, #E5DFDC, #F6F4F3); */
  }

  hr.divider {
    margin:3em 0;
    border: 0;
    background-color: #A7968B;
  }
  
  .footer {
      min-height:500px;
  }

  .choco {
      color:#37322D;
  }

  .bg-lightBlue {
      background-color: var(--bg-color-lightBlue);
  }

  .bg-desert {
      background-color: var(--bg-color-desert);
  }

  .bg-lightbeige {
      background-color: var(--bg-color-lightbeige);
  }

  .bg-caramel {
      background-color: var(--bg-color-caramel);
  }

  .bg-white {
    background-color: #ffffff;
}

.bg-semi-white {
  background-color: #fffcf9;
}

  .fs-6 {
      font-size:6em;
  }

  .fs-3 {
      font-size:3em;
  }

  .fs-2 {
    font-size:2em;
  }

  .fs-16 {
    font-size:1.6em;
  }

  .fs-14 {
    font-size:1.4em;
  }

  .fs-13 {
    font-size:1.3em;
  }

  .fs-12 {
    font-size:1.1em;
  }

  .fs-10 {
    font-size:0.9em;
  }

  .fs-08 {
    font-size:0.8em;
  }

  .lh-14 {
    line-height:1.4;
  }


  .p-20 {
      padding:20px 0;
  }

  .ptb30 {
      padding-top:30px !important;
      padding-bottom:30px !important;
  }

  a.underline-link {
    text-decoration: underline;
  }

  .p3 {
    padding: 6rem;
  }

  .p2 {
    padding: 3rem;
  }

  .mb-2 {
    margin-bottom:2rem;
  }

  .mt-20 {
    margin:2rem 0;
  }

  .mt-02 {
    margin:0 2rem;
  }

  .mt-1 {
    margin-top:1rem;
  }

   .mt-2 {
    margin-top:2rem;
  }

  .mb-7 {
    margin-bottom:7rem;
  }

  .mb-4 {
    margin-bottom:4rem;
  }

  .bg-none {
      background:none;
      background-color:none;
  }

.text-heavy {
  font-weight:900;
  letter-spacing:-0.03em;
}

.text-bold {
  font-weight:bold;
}

.text-mid-bold {
  font-weight:800;
}

.text-medium-brown {
  color:rgb(138 106 94);
}

.text-dark-brown {
  color:#463A35;
}

.text-semi-bold {
  font-weight:600;
}

.footer-logo {
  max-width:100px;
}

  .narrow {
    max-width:700px;
    margin: 1rem auto;
  }

  .text-center {
      text-align: center;
  }

  .is-block {
      display: block;
  }


  .underline a:hover {
    text-decoration: underline;
    cursor:pointer;
  }
  
  body {
      font-family: "Nunito", serif;
        font-optical-sizing: auto;
        font-weight: normal;
        font-style: normal;
  text-rendering: optimizeLegibility;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
  }

  footer {
    margin-top: 6rem;
  }
  .container.narrow {
      max-width:950px;
  }

  .centered {
      text-align: center;
  }

  nav a:hover {
    cursor:pointer;
  } 

.coffee-tag {
    background: #EAE3D7;
    border: none;
    border-radius: 15px;
    font-size: 0.6em;
    font-weight: bold;
    padding: 0.7rem 1.3rem;
    margin-bottom: 1rem;
    color: rgb(94, 70, 61);
}

  .select-box {
      background-color: #ffffff;
      color:#69574F;
      padding:20px;
      border-radius:10px;
      margin:10px;
      box-shadow:
      0 1px 1px hsl(0deg 0% 0% / 0.045),
      0 2px 2px hsl(0deg 0% 0% / 0.045),
      0 4px 4px hsl(0deg 0% 0% / 0.045),
      0 8px 8px hsl(0deg 0% 0% / 0.045),
      0 16px 16px hsl(0deg 0% 0% / 0.045)
      ;
      display:flex;
      position:relative;
      flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    border:4px solid #ffffff;
  }

  .select-box b {
    font-size: 1.2em;
    line-height: 1em;
  }

  .select-box span {
    font-size:1em;
    line-height: 1em;
  }

  .select-box img {
      margin-bottom:10px;
  }

  .box-text-label {
    width:100%;
    line-height: 22px;
  }

  .deal-wrap{
    min-width:450px;
    display:inline-block;
  }

  .box-text-label span.box-desc {
    color:#806A60;
    font-size: 0.8em;
    font-style: italic;
    line-height: 1.5em;
    display: inline-block;
    margin: 5px 0;
  }

  .box-text-label span.quantity-desc {
    color:#806A60;
    font-size: 0.8em;
    font-style: italic;
    line-height: 1.5em;
    display: inline-block;
    margin: 5px 0;
    background:var(--bg-color);
    padding:2px 10px;
    border-radius:5px;
  }

  .deal-delivery {
    width:100%;
  }

  .deal-delivery-option {
    display: flex;
    text-align: left;
    line-height: 1.2;
    margin-bottom: 15px;
  }

  .delivery-info {
    flex-grow:1;
    cursor: pointer;
  }

  .deal-delivery-option div:last-child {
    text-align: right;
  }

  .box-image-wrap {
  width: 100%;
  aspect-ratio: 16 / 9; 
  overflow: hidden;      
  margin-bottom:2rem;  
}

 .box-image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;      
  display: block;
}



  .profile-select-box {
    background-color: #ffffff;
      color:#69574F;
      padding:20px;
      border-radius:10px;
      margin:10px;
      box-shadow:
      0 1px 1px hsl(0deg 0% 0% / 0.045),
      0 2px 2px hsl(0deg 0% 0% / 0.045),
      0 4px 4px hsl(0deg 0% 0% / 0.045),
      0 8px 8px hsl(0deg 0% 0% / 0.045),
      0 16px 16px hsl(0deg 0% 0% / 0.045)
      ;
      display:flex;
      position:relative;
      flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    border:4px solid #ffffff;
  }

  .button-box {
    margin-right:2rem;
  }

  
  .profile-select-box img.img-type {
    margin-bottom:1rem;
  }

  a.brand span {
      font-size:2em;
  }

  .nav .brand {
    padding-bottom: 1rem;
    transition:all .3s ease;
      transition:all .3s ease;
  }

  .nav a.brand:hover {
    opacity: 100%;
  } 

  .cafeato-logo:hover {
    text-shadow: 2px 2px 30px rgba(210, 174, 15,0.7);
  }
  
  .select-box:hover {
      cursor: pointer;
      background-color: #A7968B;
      border-color: #A7968B;
      color:#37322D;
  }

  .select-box.active-box {
      border-color: #A7968B;
      background:#D0C0A6;
  }

  .select-box.active-box.deal-box {
    background:#fff;
  }

  .select-box.active-box .box-text-label span, .select-box:hover .box-text-label span {
    color:#51433D;
  }

  .select-box.active-box.deal-box:hover {
    background:#fff;
    cursor:arrow;
  }

  .tag.span-deal {
    font-style: normal;
    font-size: 0.6em;
    font-weight: 800;
    background: #F2D140;
    border-color: #F2D140;
    color: #fff;
    text-shadow: 0.5px 0.5px 0px #EFAF48;
    border-radius: 5px;
  }

  .tag.span-deal.sub-deal {
    position:absolute;
    top:-14px;
    display: block;
    color:#69574F
  }

  .lh-1 {
    line-height:1.1;
  }

  .deal-price {
    font-weight:normal;
    font-size:1.2em !important;
  }

  .deal-price-wrap {
    display: flex;
    text-align: center;
    flex-direction: column;
    background: #F7F6F2;
    padding: 2rem 4rem;
    border-radius: 8px;
    width:100%;
    margin-bottom: 2rem;
    gap:2rem;
  }

  .deal-label {
    font-weight:800;
  }

  .deal-price {
    font-style: italic;
  }

  .deal-price b {
    font-weight:700 !important;
    color:#463A35
    }

  .gift-box-price {
    font-style: italic;
    display: inline-block;
    padding: 1.5rem 3rem;
    background: #F9F5F0;
    border-radius: 36px;
    margin-top: 2rem;
    display: inline-flex;
    justify-content: center;
    align-items: center;
  }

  .gift-box-price b {
    font-size:1.3em;
    color:#463A35;
  }

  .gift-box-price b span {
    font-size:0.9em;
  }
  
  .footer-col h3 {
    font-weight: 800;
    margin-bottom: 0.5rem;
  }

  .how-it-works figure {
    min-height: 150px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    margin-bottom: 2rem;
    position:relative;
  }

  .how-it-works h3 {
    letter-spacing: -0.02em;
    line-height: 1.2;
  }

/* 
  .how-it-works figure::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -10px;
  height: 10px;               
  background: #FFD400;        
  pointer-events: none;
} */
  

  .how-it-works h2 {
    margin-bottom: 0;
  }

  .why-blocks-wrap {
    padding:0 3rem 3rem 3rem;
  }

  .why-img figure {
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
    height: 100%;
  }

  .why-img figure img {
    width:100%;
    max-width: 300px;
    height: auto;
  }

  .why-blocks {
    margin:0;
    margin-left: -1rem;
  }

  .why-blocks .block-box {
    background-color: #fafaf9;
    border-radius: 1.5rem;
    padding: 2rem;
    border: 1px solid #f5f5f4;
    transition: all 300ms 
    cubic-bezier(0.4, 0, 0.2, 1);
  }

  .why-blocks .block-box:hover {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.04);
  }


  .why-blocks .block-icon {
    width: 2.5rem;
    height: 2.5rem;
    color: #ea580c;
    border-radius: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
  }

  .why-blocks h3 {
    letter-spacing: -0.03em;
    font-size:1.1em;
  }

  .why-blocks p {
    font-size:0.8em;
  }


  .pl-3 {
    padding-left:3rem;
  }

  .footer-col ul {
    list-style: none;
    padding-left: 3rem;
    margin-top: 0;
  }

  nav.nav {
   width: 100%;
    max-width:1200px;
    height: 100px;
    left: 0;
    margin:0 auto;
    z-index: 9999;
    transition:all .3s ease;
  }

  .nav-wrap {
    position: sticky;
    top: 0;
    width: 100%;
    height: 100px;
    background-color: rgba(208, 192, 166, 0.75) !important;
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    backdrop-filter: saturate(180%) blur(20px);
    z-index: 9999;
    box-shadow:
      0 1px 1px hsl(0deg 0% 0% / 0.045),
      0 2px 2px hsl(0deg 0% 0% / 0.045),
      0 4px 4px hsl(0deg 0% 0% / 0.045)
      ;
      transition:all .3s ease;
  }

  .nav-wrap.nav-compact .nav, .nav-wrap.nav-compact {
    height:80px;
    transition: all .3s ease;
  } 

  .nav-wrap.nav-compact .nav a.brand {
    padding-bottom: 0.5rem;
    transition: all .3s ease;
  }

  .nav-wrap.nav-compact .nav a.brand span {
    font-size:1.4em;
    transition: all .3s ease;
  }

  .nav-wrap.nav-compact .nav .nav-right a {
    height: auto;
    padding: 0.7rem 1.5rem;
    transition: all .3s ease;
  }

  .select-lang {
    max-width: 70px;
    background: transparent;
    border: 1px solid #9F9893;
  }

  .text-yellow {
    color:#F2D140;
  }

  .brown-button {
    background: var(--bg-color);
    font-weight: 700;
    color: rgb(94, 70, 61);
    text-transform: uppercase;
    padding: 1.6rem 3rem;
    letter-spacing: 0.03em;
    margin-top:2rem;
  }

  .button+.brown-button.button {
    margin-left:0;
  }

  .button.hero-button.hero-secondary-button {
    border: 1px solid rgba(255, 255, 255, 0.2);
    background-color: rgba(255, 255, 255, 0.1);
    color: #F5ECE1;
    font-weight:700;
  }

  #menu-items .select-lang {
    margin: 1rem 2rem;
  }

  #why-cafeato {
    padding: 4rem 0 0 0;
  }

  #partners {
    padding: 2rem 3rem 6rem 3rem;
  }

  #partners .container {
    overflow-x: auto;
    -ms-overflow-style: none;  /* IE/old Edge */
    scrollbar-width: none; 
  }

  #partners .container::-webkit-scrollbar {
    display: none;             /* Chrome/Safari/Edge */
  }

  #partners .flex-partners {
    display: flex;
    width: max-content;
  }

  #partners figure {
    margin:1rem 2rem;
    flex-shrink: 0;
  }

  #partners img {
    height:40px;
  }

  .text-balance {
    text-wrap: balance;
  }

  #compatibility {
    position:relative;
  }

.nav-mobile {
        display: flex;
        align-items: center;
        justify-content: flex-end;
    }

    .nav-right {
        justify-content: flex-end;
    }

    .nav {
      flex-direction: row;
      flex-wrap: wrap;
    }

   #menu-items {
      flex-basis:100%;
      flex-direction: column;
      align-items: flex-end;
      display:flex;
      padding:2rem 0;
      margin-top:-5px;
      /* box-shadow: 0 1px 1px hsl(0deg 0% 0% / 0.045), 0 2px 2px hsl(0deg 0% 0% / 0.045), 0 4px 4px hsl(0deg 0% 0% / 0.045); */
      transition: all .3s ease;
      background:#fff;
      box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.25),
      0 8px 36px -6px rgba(0,0,0,.25);
    }


    #menu-items a {
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.1em;
      color: #69574F;
      padding:1.3rem 1rem;
    }

  .compatibility-wrap {
    padding:4rem 3rem 5rem 3rem;
    position: relative;
    --parallax-offset: 0px;
  }

  .compatibility-wrap:before {
    content: '\A';
    position: absolute;
    width: 70%;
    height:100%;
    background-image:url("/images/beans-bg-cafeato.svg");
    background-repeat: no-repeat;
    background-size: cover;
    top: -200px;
    left: 100px;
    z-index: -1;
    transform: translateY(var(--parallax-offset));
    transition: transform 0.1s ease-out;
}

  .style-box {
    background-color: rgba(255, 255, 255, 0.45) !important;
    -webkit-backdrop-filter: saturate(180%) blur(15px);
    backdrop-filter: saturate(180%) blur(15px);
    border-radius: 1.5rem;
    padding: 4rem 2rem;
    border: 1px solid #ECECEA;
    transition: all 300ms;
    z-index:200;
  }

  .style-box:hover {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.04);
  }

  hr {
      margin:20px 0;
      border: 0;
      background-color: #A7968B;
  }

  .flow-step h2 {
    margin-top:5rem;
    margin-bottom:1rem;
  }

  .hero {
      width: 100%;
      background: center / cover no-repeat url(/images/gift-box-packets.jpg);
      background-size: 125% auto;
      display:flex;
      flex-direction: column;
    justify-content: center;
    align-items: center;
    /* background-position: center;
    background-size: cover; */
    position:relative;
    padding:20rem 0;
    overflow:hidden;

  }

  .backdrop-blur {
    -webkit-backdrop-filter: blur(24px); /* Safari */
    backdrop-filter: blur(24px);
  }

  .foot-note small {
    color:#9F9893;
  }

  .hero::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    margin-bottom: -290px;
    width: 100%;
    height: 400px;
    background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDQwIDMyMCI+PHBhdGggZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIxIiBkPSJNMCw2NEw4MCw1OC43QzE2MCw1MywzMjAsNDMsNDgwLDQ4QzY0MCw1Myw4MDAsNzUsOTYwLDc0LjdDMTEyMCw3NSwxMjgwLDUzLDEzNjAsNDIuN0wxNDQwLDMyTDE0NDAsMzIwTDEzNjAsMzIwQzEyODAsMzIwLDExMjAsMzIwLDk2MCwzMjBDODAwLDMyMCw2NDAsMzIwLDQ4MCwzMjBDMzIwLDMyMCwxNjAsMzIwLDgwLDMyMEwwLDMyMFoiPjwvcGF0aD48L3N2Zz4=) no-repeat bottom;
    background-size: cover;
    z-index: 2;
    pointer-events: none;
  }

  .hero h1 {
    color:#ffffff;
    font-size: 3em;
    font-weight: bold;
    margin:0;
    z-index:3333;
    letter-spacing: -0.03em;
    text-shadow: #333333 0.5px 0.5px 0px;
  }

  .hero h2 {
    color:#ffffff;
    font-size: 2em;
    font-weight: bold;
    margin:0;
    z-index:3333;
    letter-spacing: -0.03em;
    margin-bottom:1rem;
    text-shadow: #333333 0.5px 0.5px 0px;
  }

  .hero p {
    color:#ffffff;
    font-size: 1.1em;
    margin:0;
    z-index:3333;
    max-width: 900px;
    text-align: center;
    text-shadow: #333333 0.5px 0.5px 0px;
  }

  .hero:before {
    content: '\A';
    position: absolute;
    width: 100%; height:100%;
    top:0; left:0;
    background:rgba(81,67,61,0.4);
}

.hero-backdrop {
  background-image: radial-gradient(circle, rgba(43, 31, 26, 0.3), rgba(43, 31, 26, 0.6), rgba(43, 31, 26, 0.8));
  position:absolute;
  width:100%;
  height:100%;
}

.hero-box-label {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.65rem 1rem;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background-color: rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  font-size: 1rem;
  color:#F5ECE1;
  line-height: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom:2rem;
}

.hero-box-dot {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 9999px;
  background-color: #F2D140;
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}

.hero-box-label:hover {
  cursor:pointer;
}


.hero.gift-box-hero {
  background: center / cover no-repeat url(/images/gifts_background.jpg);
}

.why-gift-this-coffee {
  display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    height: 100%;
}


.flex-images {
  display:flex;
   max-height: 450px;
}

.flex-images figure {
  margin:0;
  display: flex;
  align-items: center;
  justify-content: center;
}


.flex-images figure img {
  width: 100%;
  height: 100%;
  object-fit: cover; 
}

/* .hero.gift-box-hero::after {
  background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDQwIDMyMCI+PHBhdGggZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIxIiBkPSJNMCw2NEw4MCw1OC43QzE2MCw1MywzMjAsNDMsNDgwLDQ4QzY0MCw1Myw4MDAsNzUsOTYwLDc0LjdDMTEyMCw3NSwxMjgwLDUzLDEzNjAsNDIuN0wxNDQwLDMyTDE0NDAsMzIwTDEzNjAsMzIwQzEyODAsMzIwLDExMjAsMzIwLDk2MCwzMjBDODAwLDMyMCw2NDAsMzIwLDQ4MCwzMjBDMzIwLDMyMCwxNjAsMzIwLDgwLDMyMEwwLDMyMFoiPjwvcGF0aD48L3N2Zz4=) no-repeat bottom;
  background-size:cover;
} */

/* 
.gifts-hero {
  background: center / cover no-repeat url(/images/present_ground.jpg);
  background-size: 100% auto;
  position:relative;
  padding: 18rem 13rem;
  overflow:hidden;
  color:#fff;
} */
/*   
.gifts-backdrop {
  background: rgba(43, 31, 26, 0.5);
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}
 */
/* 
 .gifts-hero h1, .gifts-hero h3, .gifts-hero p {
  z-index:3333;
 }


.gifts-hero::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height:100%;
    background: rgba(43, 31, 26, 0.5);
    z-index: 2;
    pointer-events: none;
  }


.gifts-hero::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    margin-bottom: -290px;
    width: 100%;
    height: 400px;
    background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDQwIDMyMCI+PHBhdGggZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIxIiBkPSJNMCw2NEw4MCw1OC43QzE2MCw1MywzMjAsNDMsNDgwLDQ4QzY0MCw1Myw4MDAsNzUsOTYwLDc0LjdDMTEyMCw3NSwxMjgwLDUzLDEzNjAsNDIuN0wxNDQwLDMyTDE0NDAsMzIwTDEzNjAsMzIwQzEyODAsMzIwLDExMjAsMzIwLDk2MCwzMjBDODAwLDMyMCw2NDAsMzIwLDQ4MCwzMjBDMzIwLDMyMCwxNjAsMzIwLDgwLDMyMEwwLDMyMFoiPjwvcGF0aD48L3N2Zz4=) no-repeat bottom;
    background-size: cover;
    z-index: 2;
    pointer-events: none;
  } */

#login-box {
    min-height: 400px;
}

.login-box-body {
  max-width: 500px;
  min-width: 300px;
  text-align: center;
}

.box-profile-sub {
  display: flex;
    font-size: 0.7em;
    gap: 2rem;
    margin: 1rem 0;
}

.box-profile-sub.deal-smry-box {
  justify-content: center;
}

.box-profile-sub.deal-smry-box .sub-info {
    background: #F7F6F2;
    padding: 5px 10px;
    border-radius:8px;
}

.hero-sub {
  height: auto;
  width: 100%;
  background:var(--bg-color-lightBlue);
  text-align: center;
margin-bottom: 3rem;
position:relative;
padding:4rem 0;
}

.hero-sub h2 {
  margin-bottom:1rem;
  font-weight:900;
}

.hero-sub p {
  color:#51433D;
}

.section-padding {
  padding: 6rem 0;
}

.big-section-padding {
  padding: 10rem 0;
}

.whats-inside-text {
  padding:4rem 6rem 0 0;
  font-size:0.9em;
}

.whats-inside-item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
}

.whats-inside-item figure {
  margin:0 0.5rem 0 0;
  min-width: 32px;
}

.whats-inside-item p {
  font-weight: bold;
  margin-top: 0.4rem;
}

.text-left {
    text-align: left !important;
}

  .nav-left {
      justify-content: flex-end;
  }

  .nav-right {
      justify-content: flex-start;
  }

  .nav-right a, .nav-left a {
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.09em;
      color:#69574F
  }

  .nav-right a.header-subscribe {
    /* background: #F4D95F; */
    background: #F2D140;
    height: 50px;
    border-radius: 6px;
    font-weight: 800;
    margin-right:2rem;
  }

  .nav-right {
    align-items: center;
  }

  .button.hero-button {
    font-weight: 900;
    text-transform: uppercase;
    padding: 1.6rem 3rem;
    color: #fff;
    letter-spacing: 0.03em;
    margin-top: 3rem;
  }

  .button.button-yellow {
    background: #F2D140;
    text-shadow: 0.5px 0.5px 0px #8C7303;
  }

  .button.button-yellow.hero-button.button-gotopay {
    color: #69574F;
    text-shadow: none;
    margin-top:1rem;
  }

  .subscribe-quiz {
    margin-top:3rem;
    min-height: 600px;
}

  .what-others-say .why-blocks .block-box{
    background-color:#ffffff;
    padding:3rem;
    position: relative;
    overflow: visible;
    margin-top:2rem;
  }

  .what-others-say .why-blocks .block-box::before {
    content: "”";
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translateX(-50%);
    width: 50px;
    height: 50px;
    background-color: #F2D140;
    color: #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 4rem;
    font-family: 'Times New Roman', Times, serif;
    line-height: 1;
    padding-top: 15px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
  }

  .giftbox-wrap {
    border:3px solid #B1A197;
    border-radius:10px;
    padding:20px;
    display:flex;
    flex-direction: column;
    align-content: center;
    align-items: center;
    justify-content: space-between;
    background-color: #ffffff;
      color:#69574F;
      box-shadow:
      0 1px 1px hsl(0deg 0% 0% / 0.045),
      0 2px 2px hsl(0deg 0% 0% / 0.045),
      0 4px 4px hsl(0deg 0% 0% / 0.045),
      0 8px 8px hsl(0deg 0% 0% / 0.045),
      0 16px 16px hsl(0deg 0% 0% / 0.045)
      ;
      
  }

  .giftbox-wrap ul {
    padding-left:15px;
  }

  .giftbox-wrap h3 {
    margin-bottom:0.3rem;
  }

  .giftbox-price-box {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: flex-end;
  }

  .giftbox-price-box span {
    font-weight: 300;
    font-size:0.8em !important;
    display:inline-block;
    margin-right: 5px;
  }

  .giftbox-wrap .button.hero-button {
    margin:2rem 0;
  }

  .sub-reminder {
    border-radius: 50px;
    margin-bottom: 2rem;
    padding: 1rem 3rem;
    display: inline-block;
    font-size:0.8em;
  }


  #newsletter-form button.button.button-yellow.hero-button {
      margin: 1rem auto !important;
  }

@media screen and (max-width: 1200px) {

    /* .hero.gift-box-hero::after {
      margin-bottom: -150px;
  } */
}


@media screen and (max-width: 900px) {
  .nav-mobile {
        display: flex;
        align-items: center;
        justify-content: flex-end;
    }

    .nav-right {
        justify-content: flex-end;
    }

    .nav {
      flex-direction: row;
      flex-wrap: wrap;
    }

    #menu-items {
      flex-basis:100%;
      flex-direction: column;
      align-items: flex-end;
      display:flex;
      padding:2rem 0;
      margin-top:-5px;
      /* box-shadow: 0 1px 1px hsl(0deg 0% 0% / 0.045), 0 2px 2px hsl(0deg 0% 0% / 0.045), 0 4px 4px hsl(0deg 0% 0% / 0.045); */
      transition: all .3s ease;
      background:#fff;
      box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.25),
      0 8px 36px -6px rgba(0,0,0,.25);
    }


    #menu-items a {
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.1em;
      color: #69574F;
      padding:1.3rem 1rem;
    }


    .compatibility-wrap:before {
      background-size: 100%;
      width:100%;
      top: 10%;
      left: 0;
    }
}

@media screen and (max-width: 768px) {

  
  .social-links {
    justify-content: center;
  }

      .col, [class*=col-], [class^=col-] {
        -webkit-box-flex: 0;
        flex: 0 1 100%;
        flex: 0 1 100%;
        max-width: 100%;
    }

    .box-text-label {
        display:flex;
        display: flex;
        flex-direction: column;

    }

    .select-box img {
        margin:10px 20px 10px 0;
    }

    .select-box {
        flex-direction: row;
        margin-left:10px;
        margin-right:10px;
        text-align:left;
    }

    .box-image-stack {
        margin:0 20px 0px 0;
    }

    .nav-mobile {
        display: flex;
        align-items: center;
        justify-content: flex-end;
    }

    .nav-right {
        justify-content: flex-end;
    }

    .nav {
      flex-direction: row;
      flex-wrap: wrap;
    }


    .text-center-mobile {
      text-align:center;
    }

    .footer-col ul {
      padding-left:0;
    }

    .footer-col h3.pl-3 {
      padding-left:0;
  }

  #newsletter-form input {
    max-width:300px;
    display:inline-block;
  }

    #newsletter-form button.button.button-yellow.hero-button {
      display: block;
      margin: 2rem auto !important;
  }
    .hero {
      text-align:center;
      padding: 8rem 2rem;
    }


    .section-padding {
      padding: 3rem 0;
    }

    .section-padding .p3 {
      padding:0;
    }


    .hero-sub {
      padding: 2rem;
      margin-bottom: 2rem;
    }

    .hero-sub-image img {
      height: 200px;
    }

    footer {
      text-align:center;
      position:relative;
    }


    .subscribe-quiz {
      margin-top:1rem;
    }

    .tag.span-deal {
      max-width:155px;
    }

    .tag.span-deal.sub-deal {
      right:20px;
    }

    .select-box.deal-box {
      flex-direction:column;
      cursor:arrow;
    }

    .box-text-label {
      display:block;
    }

    .whats-inside-text {
      padding:1rem 4rem 4rem 4rem;
    }

    .how-it-works h2 {
      font-size:1.4em;
      margin-bottom:1rem;
    }

    .how-it-works h3 {
      font-size:1.2em;
      margin-bottom:0.4em;
    }

    .how-it-works p {
      margin-bottom:0;
    }

    .how-it-works figure {
      margin-top:0;
    }


    .why-blocks-wrap {
      padding: 0 1rem 1rem 1rem;
  }

    #partners {
        padding: 4rem 3rem 6rem 3rem;
    }
}

@media screen and (max-width: 599px) {

    .hero h1 {
      line-height: 1.2;
      font-size: 2em;
    }

    .deal-wrap{
    min-width:350px;
  }

    .hero p {
      font-size: 0.85em;
      max-width:80%;
    }

    .section-padding {
      padding: 3rem 0;
    }

    .section-padding .p3 {
      padding:0;
    }


    .make-coffee-img img {
      height:300px;
    }

    .narrow {
      max-width:400px;
    }

    footer .pl-3 {
      padding-left: 0;
    }

    .footer-col ul {
      padding-left: 0;
    }


    .gift-box-woman-img img {
      height:300px;
    }

    #gift-boxes h2.mb-7 {
      margin-bottom:3rem;
      font-size:1.5em;
    }

    .gifts-hero h1 {
      line-height:1.2;
      font-size:1.7em;
    }

    .button.hero-button {
      padding: 1.4rem 2rem;
      line-height: 1.4;
    }

    .button.hero-button.hero-secondary-button {
      font-size:0.9em;
    }


    .hero h2 {
      font-size: 1.4em;
    }


    .mix-select .box-image-stack {
  display: flex;
  position: relative;
  width: 70px;
  height: 50px;
}

.mix-select .box-image-stack img {
  object-fit: cover;
  position: absolute;
}

.mix-select .box-image-stack img:nth-child(1) {
  left: 0;
  clip-path: inset(0 50% 0 0); /* Shows left half */
  margin:0;
}

.mix-select .box-image-stack img:nth-child(2) {
  clip-path: inset(0 0 0 50%); /* Shows right half */
  margin:0;
}


  .nav-wrap .nav, .nav-wrap {
    height:80px;
    transition: all .3s ease;
  } 

  .nav-wrap .nav a.brand {
    padding-bottom: 0.5rem;
    transition: all .3s ease;
  }

  .nav-wrap .nav a.brand span {
    font-size:1.4em;
    transition: all .3s ease;
  }

  .nav-wrap .nav .nav-right a {
    height: auto;
    padding: 0.7rem 1.5rem;
    transition: all .3s ease;
  }

  .hero-sub p {
    font-size: 0.9em;
  }
  
  .hero-sub h2 {
    font-size: 1.6em;
  }
  
  .hero-sub p {
    font-size: 0.9em;
  }

  .subscribe-quiz h2 {
    font-size: 1.6em;
  }

  #coffee-type .select-box {
    padding: 12px;
  }



    
}


@media screen and (max-width: 515px) {

  .hero {
    background-size: cover;
  }


  .cookie-consent {
        left: 0;
        bottom: 0;
        padding: 0.7em 0.7em;
        gap:1rem;
    }

    .cookie-consent-buttons button {
      padding: 0.8em 1.2em;
    }

    .cookie-consent p span {
      display: none;
    }

    .compatibility-wrap {
      padding:3rem 0 3rem 0;
    }

    .whats-inside-text {
      padding:1rem 0 1rem 0;
    }

    .how-box {
      flex-direction: column;
      gap: 2rem;
      padding-top: 3rem;
    }

    .why-box-flex {
      text-align: center;
    }

    .big-section-padding {
      padding: 5rem 0;
    }

}

/* FAQ Styles */
.faq-wrapper {
    max-width: 800px;
    margin: 0 auto;
}

.faq-item {
    border-radius: 50px;
    margin-bottom: 2rem;
    padding: 1rem 3rem;
    cursor: pointer;
    transition: all 0.3s ease;
}

.faq-item:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

.faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 0;
}

.faq-answer {
    display: none;
    padding-bottom: 1.5rem;
    border-top: 1px solid rgba(0,0,0,0.05);
    margin-top: 0.5rem;
    padding-top: 1rem;
}

.faq-icon {
    font-weight: 300;
    transition: transform 0.3s ease;
    line-height: 1;
    min-width: 20px;
    text-align: right;
}

.faq-item.active .faq-icon {
    transform: rotate(45deg);
}

@media screen and (max-width: 600px) {
    .faq-item {
        padding: 1rem 1.5rem;
        border-radius: 25px;
    }
}

.blog-container {
            max-width: 800px;
            margin-top: 40px;
            margin-bottom: 40px;
        }
        .blog-container h1.blog-label {
            font-weight: 900;
            font-size: 3.5em;
        }

        .blog-container h2, .blog-container h1 {
            font-weight: 600;
            text-transform:uppercase;
            letter-spacing: 5px;
            font-size: 22px;
            line-height: 2em;
            font-style: normal;
        }

        .blog-container figure {
            margin: 30px 20px;
        }

        .post-item {
            border-bottom: 1px solid #ddd;
            padding-bottom: 20px;
            margin-bottom: 20px;
        }

        .post-item p {
            text-align: left;
        }

        .post-item h2, .post-item h3, .post-item h4 {
            text-align: left;
        }

        .post-item:last-child {
            border-bottom: none;
            margin-bottom: 0;
            padding-bottom: 0;
        }
        .post-date {
            font-size: 0.9em;
            color: #888;
            margin-bottom: 20px;
            text-transform: uppercase;
            font-weight: 400;
            letter-spacing: 2px;
            line-height: 1.6em;
            font-style: normal;
        }
        .post-item h2 {
            margin-top: 0;
        }

        .more-blog-posts h3 {
            font-weight: 600;
            text-transform:uppercase;
            letter-spacing: 3px;
            font-size: 1.3em;
            line-height: 1.6em;
            font-style: normal;
            text-align:center;
        }

        .more-blog-posts p, .more-blog-posts figure {
          text-align:center;
        }

        .more-posts {
            font-size: 0.9em;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 1px;
            margin-bottom: 20px;
            display: inline-block;
        }

        .more-blog-posts .post-item {
            margin: 20px 20px 20px 0;
        }


        .index-blog .more-blog-posts h3 {
            font-size: 1em;
        }

        .index-blog .post-date {
            font-size: 0.7em;
        }
/* Social Buttons */
.social-links {
    display: flex;
    gap: 12px;
    margin-top: 1rem;
}

.social-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background-color: var(--color-primary);
    border-radius: 50%;
    color: #fff;
    transition: all 0.3s ease;
}

.social-btn:hover {
    opacity: 0.9;
    transform: translateY(-2px);
}

.social-btn svg {
    width: 18px;
    height: 18px;
    stroke: currentColor;
    stroke-width: 2;
    fill: none;
}

@media (prefers-color-scheme: dark) {
 
      input:not([type="checkbox"], [type="radio"], [type="submit"], [type="color"], [type="button"], [type="reset"]), select, textarea, textarea[type="text"] {
          background:none;
          color:var(--font-color);
      }

  }

/* Cookie Consent */
.cookie-consent {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(208, 192, 166, 0.75);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    backdrop-filter: saturate(180%) blur(20px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    padding: 1.2em 1.5em;
    z-index: 9999;
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 3rem;
    animation: slideUp 0.3s ease-out;
}

@keyframes slideUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.cookie-consent p {
    margin: 0;
    font-size: 0.9em;
    color: var(--font-color);
    line-height: 1.5;
}

.cookie-consent-buttons {
    display: flex;
    gap: 0.5em;
    align-items: center;
}

.cookie-consent-buttons button {
    flex: 1;
    padding: 1em 1.4em;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 0.85em;
    font-weight: 600;
    transition: all 0.2s ease;
}

.cookie-accept {
    background: var(--color-primary);
    color: #fff;
}

.cookie-accept:hover {
    opacity: 0.9;
}

.cookie-decline {
    background: #e8e8e8;
    color: var(--font-color);
}

.cookie-decline:hover {
    background: #ddd;
}

@media (max-width: 480px) {
    .cookie-consent {
        left: 0;
        bottom: 0;
        padding: 0.7em 0.7em;
        gap:1rem;
    }

    .cookie-consent-buttons button {
      padding: 0.8em 1.2em;
    }

}


.how-it-works figure {
    min-height: 150px;
    width: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2rem;
    position: relative;
    background: var(--bg-color);
    border-radius: 100%;
    margin: 3rem auto;
}

.deal-delivery-option {
      flex-direction: column;
      gap: 1rem;
}


.shipping-title {
  font-weight:800;
  font-size:1em;
  text-transform:uppercase;
}

.deal-delivery-option div:last-child, #boxnow-selection, #speedy-selection {
    text-align: center;
}

.button.button-yellow.hero-button.button-gotopay {
  margin-top:2rem;
}

.hero p.mt-2 {
  margin-top:2rem;
  font-size: 0.9em;
  color:#ccc;
}



@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.animate-scroll {
    animation: scroll 80s linear infinite;
}


.flex-how {
  display: flex;
  flex-direction: column;
  gap:2rem;
}

.how-box {
  display:flex;
    background-color: #fafaf9;
    border-radius: 1.5rem;
    padding: 4rem 2rem;
    border: 1px solid #f5f5f4;
    transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
}

.how-box:hover {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.04); 
}

.how-box h3 {
    text-transform: uppercase;
    font-size: 1.1em;
    font-weight: 800;
}

.how-box figure {
  margin:0 1rem 0 0;
  min-width:80px;
  display: flex;
  justify-content: center;
  align-content: center;
  align-items: center;

}

.why-box-flex {
  display: flex;
  gap:0.4rem;
  flex-direction: column;
}

.section-padding-top {
  padding-top: 6rem;
}

#discover-coffee-boxes h2 {
  margin-bottom: 1rem;
}

.mb-1 {
  margin-bottom:1rem;
}