:root {
  --dl-cream: #f8f1e7;
  --dl-cream-2: #fffaf4;
  --dl-sand: #e7d0b7;
  --dl-caramel: #b66d3b;
  --dl-praline: #8b4a2d;
  --dl-chocolate: #4a2416;
  --dl-dark: #25150f;
  --dl-gold: #d4a35f;
  --dl-line: rgba(74, 36, 22, .12);
  --dl-shadow: 0 16px 42px rgba(74, 36, 22, .12);
}

body {
  background: var(--dl-cream-2);
  color: var(--dl-dark);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

h1, h2, h3, h4, .h1, .h2, .h3, .h4 {
  color: var(--dl-chocolate);
  font-family: Georgia, "Times New Roman", serif;
  letter-spacing: -.025em;
}

a { color: var(--dl-praline); }
a:hover { color: var(--dl-caramel); }

#header {
  box-shadow: 0 2px 20px rgba(52, 24, 13, .07);
  position: relative;
  z-index: 30;
}

#header .header-nav {
  background: var(--dl-chocolate);
  border: 0;
  color: #fff5e8;
  margin: 0;
  max-height: none;
}

#header .header-nav a,
#header .header-nav .blockcart,
#header .header-nav .user-info a {
  color: #fff5e8;
}

#header .header-top {
  background: rgba(255, 250, 244, .98);
  padding: 1.15rem 0;
}

#header .header-top a,
#header .header-top .top-menu a[data-depth="0"] {
  color: var(--dl-dark);
  font-weight: 600;
}

#header .header-top .top-menu a[data-depth="0"]:hover {
  color: var(--dl-caramel);
}

#header .header-top #_desktop_logo img {
  max-height: 66px;
  width: auto;
}

#search_widget form input {
  border: 1px solid var(--dl-line);
  border-radius: 999px;
  background: #fff;
}

#wrapper {
  background: var(--dl-cream-2);
  box-shadow: none;
  padding-top: 0;
}

#wrapper > .container {
  width: 100%;
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

#wrapper > .container > .row,
#wrapper > .container > .breadcrumb {
  margin-left: 0;
  margin-right: 0;
}

body#index #wrapper .breadcrumb { display: none; }
body#index #content-wrapper { padding: 0; width: 100%; }
body#index #main { margin: 0; }
body#index .page-home { padding: 0; }

.dl-shell {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
}

.dl-eyebrow {
  color: var(--dl-praline);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .2em;
  margin: 0 0 .8rem;
  text-transform: uppercase;
}

.dl-hero {
  overflow: hidden;
  position: relative;
  background:
    radial-gradient(circle at 84% 20%, rgba(212,163,95,.40), transparent 24%),
    radial-gradient(circle at 73% 78%, rgba(139,74,45,.12), transparent 23%),
    linear-gradient(105deg, #fffaf5 0%, #f7e7d3 58%, #d9a66e 100%);
}

.dl-hero::after {
  background: rgba(255,255,255,.22);
  border-radius: 50%;
  content: "";
  filter: blur(2px);
  height: 420px;
  position: absolute;
  right: -80px;
  top: -180px;
  width: 420px;
}

.dl-hero-grid {
  align-items: center;
  display: grid;
  gap: 2rem;
  grid-template-columns: 1.05fr .95fr;
  min-height: 640px;
  padding: 54px 0 42px;
  position: relative;
  z-index: 2;
}

.dl-hero-copy { max-width: 650px; }

.dl-hero h1 {
  font-size: clamp(2.6rem, 5.5vw, 5rem);
  line-height: .98;
  margin: 0 0 1.35rem;
}

.dl-hero h1 em {
  color: var(--dl-praline);
  display: block;
  font-weight: 500;
  margin-top: .12em;
}

.dl-lead {
  color: #4b3930;
  font-size: 1.14rem;
  line-height: 1.65;
  margin: 0;
  max-width: 620px;
}

.dl-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem;
  margin: 1.9rem 0 1.65rem;
}

.dl-btn {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  font-weight: 700;
  gap: .55rem;
  justify-content: center;
  min-height: 48px;
  padding: 0 1.45rem;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.dl-btn:hover { text-decoration: none; transform: translateY(-2px); }
.dl-btn-primary { background: var(--dl-praline); box-shadow: 0 10px 25px rgba(139,74,45,.23); color: #fff; }
.dl-btn-primary:hover { background: var(--dl-chocolate); color: #fff; }
.dl-btn-secondary { background: rgba(255,255,255,.38); border: 1px solid var(--dl-praline); color: var(--dl-chocolate); }

.dl-mini-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: .9rem 1.45rem;
  color: #5b463c;
  font-size: .84rem;
}

.dl-mini-benefits span { white-space: nowrap; }
.dl-mini-benefits b { color: var(--dl-chocolate); }

.dl-hero-visual {
  align-items: flex-end;
  display: flex;
  height: 540px;
  justify-content: center;
  position: relative;
}

.dl-hero-visual::before {
  background: radial-gradient(ellipse at center, rgba(74,36,22,.22) 0%, rgba(74,36,22,0) 70%);
  bottom: 10px;
  content: "";
  height: 70px;
  position: absolute;
  width: 75%;
}

.dl-hero-visual img {
  filter: drop-shadow(0 24px 22px rgba(56,26,15,.24));
  max-height: 520px;
  max-width: 72%;
  object-fit: contain;
  position: relative;
  z-index: 4;
}

.dl-hero-note {
  color: var(--dl-chocolate);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.4rem;
  font-style: italic;
  line-height: 1.15;
  position: absolute;
  right: 0;
  top: 100px;
  transform: rotate(-7deg);
  z-index: 6;
}

.dl-sauce-orbit {
  border: 18px solid rgba(139,74,45,.15);
  border-radius: 50%;
  position: absolute;
}
.dl-sauce-orbit-one { height: 390px; width: 390px; right: -20px; top: 70px; }
.dl-sauce-orbit-two { height: 220px; width: 220px; left: 20px; bottom: 20px; border-width: 10px; }

.dl-hazelnuts { bottom: 28px; height: 90px; left: 8%; position: absolute; right: 5%; z-index: 5; }
.dl-hazelnuts i {
  background: radial-gradient(circle at 36% 30%, #cb8651 0 22%, #93512e 24% 58%, #5c2b19 60% 100%);
  border-radius: 48% 52% 48% 52%;
  bottom: 0;
  box-shadow: inset -5px -7px 12px rgba(50,20,8,.18), 0 5px 9px rgba(74,36,22,.16);
  height: 48px;
  position: absolute;
  transform: rotate(22deg);
  width: 42px;
}
.dl-hazelnuts i:nth-child(1){left:2%;bottom:5px}.dl-hazelnuts i:nth-child(2){left:17%;bottom:20px;transform:rotate(-13deg) scale(.8)}.dl-hazelnuts i:nth-child(3){left:31%;bottom:2px;transform:rotate(35deg) scale(.65)}.dl-hazelnuts i:nth-child(4){right:24%;bottom:8px;transform:rotate(-24deg) scale(.9)}.dl-hazelnuts i:nth-child(5){right:8%;bottom:28px;transform:rotate(12deg) scale(.72)}.dl-hazelnuts i:nth-child(6){right:0;bottom:2px;transform:rotate(-8deg) scale(.58)}

.dl-categories { padding: 28px 0 34px; background: #fff; }
.dl-category-grid { display: grid; gap: 14px; grid-template-columns: repeat(3, 1fr); }
.dl-category-card {
  border-radius: 18px;
  box-shadow: var(--dl-shadow);
  color: #fff;
  display: flex;
  flex-direction: column;
  min-height: 265px;
  overflow: hidden;
  padding: 30px;
  position: relative;
  isolation: isolate;
}
.dl-category-card::before, .dl-category-card::after { content:""; position:absolute; z-index:-1; }
.dl-category-card::before { inset:0; background:linear-gradient(100deg, rgba(54,25,14,.93) 0%, rgba(92,45,24,.76) 54%, rgba(130,74,44,.25) 100%); }
.dl-category-card::after { border: 16px solid rgba(255,255,255,.09); border-radius:50%; height:180px; width:180px; right:-35px; bottom:-45px; }
.dl-category-spread { background: radial-gradient(circle at 88% 55%, #d39a63 0 8%, #9f5a34 9% 20%, transparent 21%), linear-gradient(145deg,#4b2415,#b26a3a); }
.dl-category-sauce { background: radial-gradient(circle at 82% 48%, #f0b875 0 7%, #bc6e3a 8% 22%, transparent 23%), linear-gradient(145deg,#66321d,#c47a45); }
.dl-category-praline { background: radial-gradient(circle at 82% 52%, #c17c43 0 6%, #69331c 7% 18%, transparent 19%), linear-gradient(145deg,#3e1c11,#8b4a2d); }
.dl-category-card:hover { color:#fff; text-decoration:none; transform:translateY(-3px); }
.dl-category-kicker { font-size:.72rem; font-weight:800; letter-spacing:.12em; opacity:.78; text-transform:uppercase; }
.dl-category-card strong { font-family:Georgia,"Times New Roman",serif; font-size:2rem; line-height:1.05; margin:.55rem 0 .65rem; }
.dl-category-card > span:not(.dl-category-kicker) { line-height:1.5; max-width:72%; opacity:.92; }
.dl-category-card b { margin-top:auto; font-size:.9rem; }

.dl-craft { background: var(--dl-cream); padding: 60px 0; }
.dl-craft-grid { display:grid; grid-template-columns: 1.05fr 1.15fr .8fr; min-height: 390px; }
.dl-roast-visual, .dl-pour-visual { overflow:hidden; position:relative; }
.dl-roast-visual { background: linear-gradient(135deg,#4e2113,#bb7440); border-radius:22px 0 0 22px; }
.dl-roaster-pan { background:linear-gradient(180deg,#3b2118,#1f100b); border:10px solid rgba(224,174,123,.3); border-radius:50%; height:340px; left:-70px; position:absolute; top:28px; width:440px; transform:rotate(-8deg); }
.dl-roaster-pan i { background:radial-gradient(circle at 35% 30%,#e0a064 0 16%,#8a4928 18% 60%,#502315 62%); border-radius:50%; height:58px; position:absolute; width:58px; }
.dl-roaster-pan i:nth-child(1){left:50px;top:42px}.dl-roaster-pan i:nth-child(2){left:125px;top:85px}.dl-roaster-pan i:nth-child(3){left:205px;top:45px}.dl-roaster-pan i:nth-child(4){left:278px;top:105px}.dl-roaster-pan i:nth-child(5){left:92px;top:170px}.dl-roaster-pan i:nth-child(6){left:182px;top:160px}.dl-roaster-pan i:nth-child(7){left:270px;top:200px}.dl-roaster-pan i:nth-child(8){left:36px;top:235px}.dl-roaster-pan i:nth-child(9){left:145px;top:255px}.dl-roaster-pan i:nth-child(10){left:335px;top:245px}
.dl-craft-copy { align-self:stretch; background:#fffaf4; display:flex; flex-direction:column; justify-content:center; padding:46px 50px; }
.dl-craft-copy h2, .dl-section-title h2 { font-size: clamp(2.1rem,4vw,3.25rem); margin:0 0 1rem; }
.dl-craft-copy p:not(.dl-eyebrow) { color:#5b463c; line-height:1.7; margin-bottom:1.25rem; }
.dl-text-link { font-weight:800; }
.dl-pour-visual { background:linear-gradient(145deg,#aa6237,#5d2a18); border-radius:0 22px 22px 0; min-height:390px; }
.dl-pour-stream { background:linear-gradient(90deg,#9b4e27,#e4a260 46%,#7c351e); border-radius:50%; height:270px; left:45%; position:absolute; top:-30px; width:40px; transform:rotate(5deg); }
.dl-pour-pool { background:radial-gradient(ellipse,#d28b50 0,#8e4525 55%,#5b2817 76%); border-radius:50%; bottom:38px; box-shadow: inset 0 10px 20px rgba(255,213,160,.26); height:88px; left:12%; position:absolute; width:75%; }
.dl-pour-visual b { color:#fff4e7; font-family:Georgia,"Times New Roman",serif; font-size:1.35rem; font-style:italic; line-height:1.2; position:absolute; right:22px; top:42px; transform:rotate(-6deg); }

.dl-products-zone { background:#fff; padding:64px 0 55px; }
.dl-section-title { align-items:end; display:flex; justify-content:space-between; gap:2rem; margin-bottom:30px; }
.dl-section-title h2 { margin-bottom:0; }
.dl-section-title > span { color:#71584a; max-width:390px; line-height:1.55; }
.dl-native-home .featured-products, .dl-native-home .product-accessories, .dl-native-home .products-section-title { margin-top:0; }
.dl-native-home .products-section-title { color:var(--dl-chocolate); font-family:Georgia,"Times New Roman",serif; text-transform:none; }
.dl-native-home .product-miniature .thumbnail-container,
.product-miniature .thumbnail-container { border:1px solid var(--dl-line); border-radius:16px; box-shadow:none; overflow:hidden; transition:transform .18s ease, box-shadow .18s ease; }
.dl-native-home .product-miniature .thumbnail-container:hover,
.product-miniature .thumbnail-container:hover { box-shadow:var(--dl-shadow); transform:translateY(-3px); }
.product-miniature .product-title a { color:var(--dl-chocolate); font-weight:700; }
.product-miniature .product-price-and-shipping { color:var(--dl-praline); font-weight:800; }
.product-flags li.product-flag { background:var(--dl-praline); border-radius:0 999px 999px 0; box-shadow:none; }
.btn-primary, .btn-primary:hover, .btn-primary:focus, .btn-primary:active { background-color:var(--dl-praline); border-color:var(--dl-praline); }

.dl-inspirations { background:var(--dl-cream); padding:60px 0 70px; }
.dl-inspiration-grid { display:grid; gap:14px; grid-template-columns:repeat(4,1fr); }
.dl-inspiration-grid article { background:#fff; border:1px solid var(--dl-line); border-radius:18px; min-height:200px; padding:28px; box-shadow:0 12px 28px rgba(74,36,22,.08); }
.dl-food-icon { display:block; font-size:3.1rem; margin-bottom:1.2rem; }
.dl-inspiration-grid b { color:var(--dl-chocolate); display:block; font-family:Georgia,"Times New Roman",serif; font-size:1.35rem; margin-bottom:.45rem; }
.dl-inspiration-grid small { color:#71584a; font-size:.92rem; line-height:1.5; }

.dl-reassurance { background:#fff; border-top:1px solid var(--dl-line); padding:26px 0; }
.dl-reassurance-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.dl-reassurance-grid > div { align-items:center; display:grid; grid-template-columns:48px 1fr; grid-template-rows:auto auto; padding:8px 14px; }
.dl-reassurance-grid span { font-size:1.8rem; grid-row:1/3; }
.dl-reassurance-grid b { color:var(--dl-chocolate); font-size:.95rem; }
.dl-reassurance-grid small { color:#786054; font-size:.78rem; margin-top:2px; }

#footer { background:var(--dl-dark); color:#f8eadc; padding-top:3rem; }
#footer a, #footer .h3, #footer .h4, #footer .block-contact, #footer .block-contact a { color:#f8eadc; }
#footer a:hover { color:var(--dl-gold); }
.footer-container { background:var(--dl-dark); box-shadow:none; }

body:not(#index) #wrapper > .container { max-width:1140px; padding-left:15px; padding-right:15px; }
body:not(#index) #wrapper { padding-top:1.5rem; }
.card, .page-content.card { border:1px solid var(--dl-line); box-shadow:none; }
.product-actions .add-to-cart { border-radius:999px; }
.tabs .nav-tabs .nav-link.active, .tabs .nav-tabs .nav-link:hover { border-bottom-color:var(--dl-praline); color:var(--dl-praline); }

@media (max-width: 991px) {
  .dl-shell { width:min(100% - 28px, 900px); }
  .dl-hero-grid { grid-template-columns:1fr; min-height:auto; padding-top:42px; }
  .dl-hero-copy { margin:0 auto; text-align:center; }
  .dl-lead { margin-left:auto; margin-right:auto; }
  .dl-actions, .dl-mini-benefits { justify-content:center; }
  .dl-hero-visual { height:480px; }
  .dl-category-grid { grid-template-columns:1fr; }
  .dl-category-card { min-height:220px; }
  .dl-craft-grid { grid-template-columns:1fr; }
  .dl-roast-visual { border-radius:22px 22px 0 0; min-height:300px; }
  .dl-pour-visual { border-radius:0 0 22px 22px; min-height:300px; }
  .dl-inspiration-grid, .dl-reassurance-grid { grid-template-columns:repeat(2,1fr); }
  .dl-section-title { align-items:start; flex-direction:column; }
}

@media (max-width: 575px) {
  .dl-shell { width:calc(100% - 20px); }
  .dl-hero h1 { font-size:2.55rem; }
  .dl-hero-grid { padding-top:32px; }
  .dl-mini-benefits { align-items:center; flex-direction:column; gap:.55rem; }
  .dl-hero-visual { height:390px; }
  .dl-hero-visual img { max-height:365px; max-width:82%; }
  .dl-hero-note { font-size:1rem; right:5px; top:70px; }
  .dl-craft-copy { padding:34px 24px; }
  .dl-category-card { padding:24px; }
  .dl-category-card strong { font-size:1.65rem; }
  .dl-category-card > span:not(.dl-category-kicker) { max-width:100%; }
  .dl-inspiration-grid, .dl-reassurance-grid { grid-template-columns:1fr; }
  .dl-products-zone, .dl-inspirations { padding:44px 0; }
}
