/* ============================================================
   Crumble Design System — sitewide stylesheet
   getcrumble.net | Redesign branch
   ============================================================ */

:root {
    --paper:      #fdf8f3;
    --paper-soft: #f7ede0;
    --ink:        #2c1a0e;
    --ink-soft:   #6b4f3a;
    --muted:      #8a6a52;
    --caramel:    #b5620a;
    --caramel-d:  #9a5209;
    --cookie:     #c97d3a;
    --cookie-l:   #e8a96a;
    --cream:      #faf5ec;
    --rule:       #e8d5c0;
    --rule-soft:  #f0e2cc;
    --shadow:     0 14px 32px rgba(44,26,14,0.10), 0 2px 6px rgba(44,26,14,0.06);
    --shadow-sm:  0 2px 8px rgba(44,26,14,0.06);
  }

  * { box-sizing: border-box; margin: 0; padding: 0; }
  html { scroll-behavior: smooth; }
  body {
    font-family: "Bricolage Grotesque", -apple-system, system-ui, sans-serif;
    color: var(--ink);
    background: var(--paper);
    overflow-x: hidden;
    font-size: 17px;
    line-height: 1.55;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
  }
  a { color: inherit; text-decoration: none; }

  .mono {
    font-family: "JetBrains Mono", ui-monospace, monospace;
    font-size: 11.5px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-weight: 500;
  }

  .wrap { max-width: 980px; margin: 0 auto; padding: 0 32px; }

  /* ---------------- NAV ---------------- */
  nav.topnav {
    position: sticky; top: 0; z-index: 100;
    background: rgba(253,248,243,0.88);
    backdrop-filter: saturate(160%) blur(10px);
    -webkit-backdrop-filter: saturate(160%) blur(10px);
    border-bottom: 1px solid var(--rule);
  }
  .topnav-inner {
    display: flex; justify-content: space-between; align-items: center;
    padding: 16px 0; height: 64px;
  }
  .nav-brand {
    display: flex; align-items: center; gap: 10px;
    font-weight: 600; letter-spacing: 0.22em; font-size: 14px;
    color: var(--caramel);
  }
  .nav-brand img { width: 26px; height: 26px; display: block; }
  .nav-links { display: flex; gap: 24px; align-items: center; }
  .nav-links a {
    font-size: 13.5px; color: var(--ink-soft); font-weight: 500;
    transition: color .15s ease;
  }
  .nav-links a:hover { color: var(--caramel); }
  .nav-cta {
    background: var(--ink); color: var(--paper);
    padding: 9px 16px; border-radius: 999px;
    font-size: 13px; font-weight: 600;
    transition: background .15s ease, transform .15s ease;
  }
  .nav-cta:hover { background: var(--caramel); color: var(--paper); transform: translateY(-1px); }

  /* ---------------- BUTTONS ---------------- */
  .btn {
    display: inline-flex; align-items: center; gap: 10px;
    background: var(--caramel); color: var(--cream);
    border: none; border-radius: 999px;
    padding: 17px 30px; font-size: 16px; font-weight: 600;
    cursor: pointer; text-decoration: none;
    transition: background .18s ease, transform .18s ease, box-shadow .18s ease;
    box-shadow: 0 10px 24px rgba(181,98,10,0.22), 0 2px 4px rgba(181,98,10,0.14);
    font-family: inherit;
  }
  .btn:hover { background: var(--caramel-d); transform: translateY(-2px); }
  .btn .arrow { transition: transform .18s ease; }
  .btn:hover .arrow { transform: translateX(4px); }
  .btn-on-dark { background: var(--caramel); }
  .btn-ghost {
    background: transparent; color: var(--ink);
    border: 1.5px solid var(--ink);
    box-shadow: none;
  }
  .btn-ghost:hover { background: var(--ink); color: var(--paper); }

  /* ---------------- HERO ---------------- */
  .hero {
    text-align: center;
    padding: 56px 32px 88px;
    position: relative;
    overflow: hidden;
  }
  .ghost-cookie { position: absolute; opacity: 0.10; pointer-events: none; }
  .hero .kicker {
    color: var(--caramel);
    margin-bottom: 32px;
    display: inline-flex; align-items: center; gap: 10px;
  }
  .hero .kicker .dot {
    width: 5px; height: 5px; border-radius: 50%; background: var(--caramel);
  }
  .hero .hero-cookie { margin: 0 auto 36px; display: block; }
  .hero h1 {
    font-size: clamp(48px, 8vw, 92px);
    font-weight: 700;
    line-height: 0.96;
    letter-spacing: -0.035em;
    color: var(--ink);
    max-width: 14ch;
    margin: 0 auto 24px;
    text-wrap: balance;
  }
  .hero h1 em {
    color: var(--caramel);
    font-style: italic;
    font-weight: 800;
  }
  .hero .lead {
    font-size: clamp(17px, 1.5vw, 19px);
    color: var(--ink-soft);
    max-width: 540px;
    margin: 0 auto 36px;
    line-height: 1.55;
    text-wrap: pretty;
  }
  .hero .lead strong { color: var(--ink); font-weight: 600; }
  .hero .meta {
    color: var(--muted); margin-top: 18px;
    display: inline-flex; gap: 14px; flex-wrap: wrap; justify-content: center;
  }
  .hero .meta .sep { opacity: 0.5; }

  /* ---------------- SECTION CHROME ---------------- */
  section { padding: 96px 0; position: relative; }
  .sec-head { text-align: center; margin-bottom: 48px; }
  .sec-head .eyebrow {
    color: var(--caramel);
    margin-bottom: 10px;
    display: inline-block;
  }
  .sec-head h2 {
    font-size: clamp(34px, 4.4vw, 56px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.025em;
    color: var(--ink);
    margin: 0 auto 14px;
    max-width: 16ch;
    text-wrap: balance;
  }
  .sec-head p {
    font-size: 16.5px;
    color: var(--ink-soft);
    max-width: 52ch;
    margin: 0 auto;
    line-height: 1.6;
    text-wrap: pretty;
  }

  .crumb-divider { padding: 8px 32px; }
  .crumb-divider svg { display: block; margin: 0 auto; max-width: 980px; }

  /* ---------------- THREE INGREDIENTS ---------------- */
  .ingredients {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
  }
  .ingredient {
    background: var(--paper);
    border: 1.5px solid var(--ink);
    border-radius: 22px;
    padding: 28px 24px;
    transition: transform .2s ease, box-shadow .2s ease;
  }
  .ingredient:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
  .ingredient .num {
    font-size: 64px; font-weight: 800;
    line-height: 1; letter-spacing: -0.04em;
    color: var(--caramel); margin-bottom: 18px;
  }
  .ingredient h3 { font-size: 22px; font-weight: 700; letter-spacing: -0.02em; margin: 0 0 6px; }
  .ingredient .lead { font-size: 14.5px; color: var(--ink); font-weight: 500; margin-bottom: 10px; }
  .ingredient p { font-size: 14.5px; color: var(--ink-soft); line-height: 1.55; }

  /* ---------------- HALF BAKED (dark band) ---------------- */
  .half-baked { background: var(--ink); color: var(--paper); margin: 0; position: relative; overflow: hidden; }
  .half-baked .sec-head h2 { color: var(--paper); }
  .half-baked .sec-head p { color: rgba(253,248,243,0.7); }
  .half-baked .sec-head .eyebrow { color: var(--cookie-l); }
  .bakers {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 0;
    border-top: 1px solid rgba(253,248,243,0.15);
    border-bottom: 1px solid rgba(253,248,243,0.15);
  }
  .baker {
    padding: 32px 28px;
    border-right: 1px solid rgba(253,248,243,0.15);
    border-bottom: 1px solid rgba(253,248,243,0.15);
  }
  .baker:nth-child(2n) { border-right: none; }
  .baker:nth-last-child(-n+2) { border-bottom: none; }
  .baker-head { display: flex; align-items: center; gap: 14px; margin-bottom: 14px; }
  .baker .baker-icon {
    width: 44px; height: 44px; border-radius: 50%;
    background: var(--cookie-l); position: relative; flex: none;
    box-shadow: inset -4px -5px 10px rgba(92,51,23,0.18);
  }
  .baker .baker-icon::before, .baker .baker-icon::after {
    content: ""; position: absolute; background: #5c3317; border-radius: 50%;
  }
  .baker .baker-icon::before { width: 5px; height: 5px; top: 11px; left: 12px; }
  .baker .baker-icon::after  { width: 4px; height: 4px; bottom: 13px; right: 12px; }
  .baker h3 { font-size: 22px; font-weight: 700; letter-spacing: -0.02em; margin: 0; }
  .baker .baker-tag { color: var(--cookie-l); margin-bottom: 12px; }
  .baker p { color: rgba(253,248,243,0.78); font-size: 15px; line-height: 1.6; }

  /* ---------------- SAMPLE TYPES ---------------- */
  .samples { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .sample {
    background: var(--paper); border: 1.5px solid var(--ink);
    border-radius: 22px; padding: 24px 22px;
    display: flex; flex-direction: column; gap: 12px;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease;
  }
  .sample:hover { transform: translateY(-4px) rotate(-0.3deg); box-shadow: var(--shadow); }
  .sample .sample-meta { color: var(--muted); }
  .sample h3 { font-size: 20px; font-weight: 700; letter-spacing: -0.02em; margin: 0; }
  .sample p { font-size: 14.5px; color: var(--ink-soft); line-height: 1.55; }
  .sample .pills { display: flex; gap: 6px; flex-wrap: wrap; }
  .sample-cookie {
    width: 64px; height: 64px;
    border-radius: 50%;
    position: relative;
    box-shadow: inset -6px -7px 14px rgba(92,51,23,0.18), 0 6px 12px rgba(44,26,14,0.10);
  }
  .sample-cookie.butter { background: radial-gradient(circle at 30% 30%, #f5d597, var(--cookie-l), var(--cookie)); }
  .sample-cookie.honey  { background: radial-gradient(circle at 30% 30%, #f4b969, #d8943f, #b5620a); }
  .sample-cookie.dark   { background: radial-gradient(circle at 30% 30%, #6f4527, #4a2d18, #2c1a0e); }
  .sample-cookie .chip { position: absolute; background: #5c3317; border-radius: 50%; }
  .sample-cookie.dark .chip { background: var(--cookie-l); }
  .sample-cookie .c1 { width: 8px; height: 8px; top: 12px; left: 14px; }
  .sample-cookie .c2 { width: 6px; height: 6px; top: 30px; left: 38px; }
  .sample-cookie .c3 { width: 9px; height: 9px; top: 42px; left: 20px; }
  .sample-cookie .c4 { width: 5px; height: 5px; top: 18px; left: 42px; }
  .sample .pill {
    border: 1px solid var(--ink); padding: 4px 10px;
    border-radius: 999px; font-size: 11.5px; font-weight: 500;
  }
  .samples-foot { text-align: center; margin-top: 32px; }
  .samples-foot a {
    color: var(--ink); font-weight: 600;
    border-bottom: 1.5px solid var(--ink); padding-bottom: 2px;
  }
  .samples-foot a:hover { color: var(--caramel); border-color: var(--caramel); }

  /* ---------------- WHAT'S INCLUDED ---------------- */
  .included {
    display: grid; grid-template-columns: repeat(3, 1fr);
    gap: 0; border: 1.5px solid var(--ink);
    border-radius: 24px; overflow: hidden; background: var(--paper);
  }
  .included .item {
    padding: 26px 24px;
    border-right: 1.5px solid var(--ink);
    border-bottom: 1.5px solid var(--ink);
    background: var(--paper);
  }
  .included .item:nth-child(3n) { border-right: none; }
  .included .item:nth-last-child(-n+3) { border-bottom: none; }
  .included .num {
    color: var(--caramel); font-family: "JetBrains Mono", monospace;
    font-size: 12px; font-weight: 500; letter-spacing: 0.08em; margin-bottom: 10px;
  }
  .included h4 { font-size: 17px; font-weight: 700; letter-spacing: -0.015em; margin: 0 0 6px; }
  .included p { font-size: 14px; color: var(--ink-soft); line-height: 1.55; }

  /* ---------------- FULL BATCH PREVIEW ---------------- */
  .full-batch-preview { background: var(--paper-soft); padding: 96px 0; }
  .preview-grid {
    display: grid; grid-template-columns: 1fr 1fr;
    gap: 24px; max-width: 860px; margin: 0 auto;
  }
  .preview-card {
    background: var(--paper); border: 1.5px solid var(--ink);
    border-radius: 22px; padding: 28px 26px; text-align: center;
  }
  .preview-card .eyebrow { color: var(--caramel); margin-bottom: 18px; display: inline-block; }
  .preview-card svg { margin: 0 auto; display: block; max-width: 100%; height: auto; }
  .preview-card p { font-size: 14px; color: var(--ink-soft); line-height: 1.6; margin-top: 16px; }

  /* ---------------- PRICING ---------------- */
  .pricing-grid {
    display: grid; grid-template-columns: repeat(2, 1fr);
    gap: 16px; margin-bottom: 16px;
  }
  .price {
    background: var(--paper); border: 1.5px solid var(--ink);
    border-radius: 22px; padding: 26px 24px;
    display: flex; flex-direction: column;
    position: relative; transition: transform .2s ease, box-shadow .2s ease;
  }
  .price:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
  .price-flag {
    position: absolute; top: -10px; left: 22px;
    background: var(--caramel); color: var(--cream);
    padding: 4px 12px; border-radius: 999px;
    font-size: 11px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase;
  }
  .price .mono { color: var(--ink-soft); }
  .price-name { font-size: 22px; font-weight: 700; letter-spacing: -0.02em; margin: 8px 0 4px; }
  .price-tagline { font-size: 14px; color: var(--ink-soft); min-height: 40px; margin-bottom: 10px; line-height: 1.5; }
  .price-amount { font-size: 46px; font-weight: 700; letter-spacing: -0.03em; line-height: 1; margin: 6px 0 2px; }
  .price-amount .currency { font-size: 14px; font-weight: 700; opacity: 0.5; }
  .price-amount-sub { color: var(--ink-soft); font-size: 12.5px; margin-bottom: 18px; }
  .price-features { list-style: none; padding: 0; margin: 0 0 22px; font-size: 14px; flex: 1; }
  .price-features li {
    padding: 7px 0 7px 20px; position: relative;
    border-top: 1px solid var(--rule); line-height: 1.45;
  }
  .price-features li:first-child { border-top: none; }
  .price-features li::before {
    content: ""; position: absolute; left: 0; top: 14px;
    width: 11px; height: 2px; background: var(--ink);
  }
  .price-cta {
    margin-top: auto; background: var(--ink); color: var(--paper);
    padding: 13px 18px; border-radius: 999px;
    font-weight: 600; text-align: center; font-size: 14.5px;
    transition: background .15s ease; display: block;
  }
  .price-cta:hover { background: var(--caramel); color: var(--cream); }

  .price-featured {
    background: var(--ink); color: var(--paper);
    border: 1.5px solid var(--ink); border-radius: 22px;
    padding: 36px 36px;
    display: grid; grid-template-columns: 1.1fr 1fr; gap: 36px;
    align-items: start; position: relative;
  }
  .price-featured .price-flag { background: var(--caramel); color: var(--cream); }
  .price-featured .mono { color: var(--cookie-l); }
  .price-featured .price-name { color: var(--paper); }
  .price-featured .price-tagline { color: rgba(253,248,243,0.72); min-height: auto; }
  .price-featured .price-amount { color: var(--paper); font-size: 64px; }
  .price-featured .price-amount-sub { color: rgba(253,248,243,0.65); }
  .price-featured .featured-note {
    background: rgba(232,169,106,0.10); border: 1px solid rgba(232,169,106,0.3);
    border-radius: 12px; padding: 14px 16px;
    font-size: 13.5px; line-height: 1.6; color: rgba(253,248,243,0.82); margin-top: 18px;
  }
  .price-featured .featured-note strong { color: var(--cookie-l); font-weight: 600; }
  .price-featured ul { list-style: none; padding: 0; margin: 0; font-size: 14.5px; }
  .price-featured ul li {
    padding: 9px 0 9px 22px; position: relative;
    border-top: 1px solid rgba(253,248,243,0.15);
    color: rgba(253,248,243,0.88); line-height: 1.5;
  }
  .price-featured ul li:first-child { border-top: none; }
  .price-featured ul li::before {
    content: ""; position: absolute; left: 0; top: 17px;
    width: 12px; height: 2px; background: var(--cookie-l);
  }
  .price-featured ul li strong { color: var(--cookie-l); font-weight: 600; }
  .price-featured .price-cta {
    background: var(--caramel); color: var(--cream);
    margin-top: 22px; padding: 15px 24px; font-size: 15px;
  }
  .price-featured .price-cta:hover { background: var(--caramel-d); }

  .pricing-trust {
    margin-top: 22px; text-align: center;
    padding: 20px 24px; background: var(--paper-soft);
    border: 1px solid var(--rule); border-radius: 14px;
  }
  .pricing-trust p { font-size: 14px; color: var(--ink-soft); line-height: 1.6; }
  .pricing-trust strong { color: var(--caramel); font-weight: 600; }

  /* ---------------- FINAL CTA ---------------- */
  .final-cta {
    background: var(--caramel); color: var(--cream);
    text-align: center; padding: 110px 32px 120px;
    position: relative; overflow: hidden;
  }
  .final-cta h2 {
    font-size: clamp(40px, 6vw, 78px); line-height: 0.98;
    letter-spacing: -0.03em; font-weight: 700;
    margin-bottom: 22px; color: var(--cream); text-wrap: balance;
  }
  .final-cta p { font-size: 17px; opacity: 0.92; margin-bottom: 34px; color: var(--cream); }
  .final-cta .btn { background: var(--cream); color: var(--ink); box-shadow: 0 10px 24px rgba(44,26,14,0.20); }
  .final-cta .btn:hover { background: var(--ink); color: var(--cream); }
  .final-cta .ghost-cookie { opacity: 0.18; }

  /* ---------------- CROSS PROMO ---------------- */
  .cross-promo { background: var(--ink); color: var(--paper); padding: 96px 0; position: relative; overflow: hidden; }
  .cross-promo .sec-head h2 { color: var(--paper); }
  .cross-promo .sec-head .eyebrow { color: var(--cookie-l); }
  .cross-promo-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
  .promo {
    background: rgba(253,248,243,0.04); border: 1px solid rgba(253,248,243,0.14);
    border-radius: 22px; padding: 36px 32px;
  }
  .promo .eyebrow { color: var(--cookie-l); margin-bottom: 14px; display: inline-block; }
  .promo h3 {
    font-size: clamp(26px, 3vw, 36px); font-weight: 700;
    line-height: 1.05; letter-spacing: -0.02em;
    color: var(--paper); margin-bottom: 14px;
  }
  .promo h3 em { color: var(--cookie-l); font-style: italic; font-weight: 800; }
  .promo p { font-size: 15px; color: rgba(253,248,243,0.72); line-height: 1.6; margin-bottom: 24px; max-width: 38ch; }
  .promo .btn { background: var(--caramel); color: var(--cream); }
  .promo .promo-meta { margin-top: 16px; color: rgba(253,248,243,0.55); }
  .promo-wide {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto auto auto;
    column-gap: 48px;
    align-items: start;
  }
  .promo-wide .eyebrow { grid-column: 1; grid-row: 1; }
  .promo-wide h3       { grid-column: 1; grid-row: 2; }
  .promo-wide p        { grid-column: 1; grid-row: 3; margin-bottom: 0; }
  .promo-wide .btn     { grid-column: 2; grid-row: 2; align-self: center; white-space: nowrap; }
  .promo-wide .promo-meta { grid-column: 2; grid-row: 3; text-align: right; }

  /* ---------------- TESTIMONIALS ---------------- */
  .testimonials {
    background: var(--ink);
    padding: 64px 0;
    overflow: hidden;
    position: relative;
  }
  .testimonials .sec-head h2 { color: var(--paper); }
  .testimonials .sec-head .eyebrow { color: var(--cookie-l); }
  .testimonials .sec-head p { color: rgba(253,248,243,0.7); }
  .marquee-wrap {
    overflow: hidden;
    position: relative;
    margin-top: 40px;
  }
  .marquee-wrap::before,
  .marquee-wrap::after {
    content: '';
    position: absolute;
    top: 0; bottom: 0;
    width: 120px;
    z-index: 2;
    pointer-events: none;
  }
  .marquee-wrap::before { left: 0; background: linear-gradient(to right, var(--ink), transparent); }
  .marquee-wrap::after  { right: 0; background: linear-gradient(to left, var(--ink), transparent); }
  .marquee-track {
    display: flex;
    gap: 20px;
    width: max-content;
    animation: marquee 36s linear infinite;
  }
  .marquee-track:hover { animation-play-state: paused; }
  @keyframes marquee {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
  }
  .tcard {
    background: rgba(253,248,243,0.05);
    border: 1px solid rgba(253,248,243,0.12);
    border-radius: 18px;
    padding: 26px 28px;
    min-width: 280px;
    max-width: 300px;
    flex-shrink: 0;
  }
  .tcard-quote {
    color: var(--paper);
    font-size: 17px;
    font-weight: 600;
    line-height: 1.45;
    margin-bottom: 16px;
    font-optical-sizing: auto;
    letter-spacing: -0.01em;
  }
  .tcard-meta {
    display: flex;
    flex-direction: column;
    gap: 3px;
  }
  .tcard-name {
    font-family: "JetBrains Mono", ui-monospace, monospace;
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--cookie-l);
    font-weight: 500;
  }
  .tcard-cookie {
    font-family: "JetBrains Mono", ui-monospace, monospace;
    font-size: 10.5px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(253,248,243,0.38);
    font-weight: 400;
  }

  /* ---------------- ABOUT ---------------- */
  .about { background: var(--paper-soft); padding: 96px 32px; }
  .about-inner { max-width: 720px; margin: 0 auto; display: flex; align-items: flex-start; gap: 36px; }
  .about svg { flex-shrink: 0; }
  .about .eyebrow { color: var(--caramel); margin-bottom: 14px; display: inline-block; }
  .about h2 {
    font-size: clamp(26px, 3vw, 36px); font-weight: 700;
    letter-spacing: -0.02em; line-height: 1.1; margin-bottom: 18px;
    color: var(--ink); text-wrap: balance;
  }
  .about p { font-size: 16px; line-height: 1.7; color: var(--ink-soft); margin-bottom: 14px; text-wrap: pretty; }
  .about p strong { color: var(--ink); font-weight: 600; }

  /* ---------------- FORM FIELDS ---------------- */
  .field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 18px; }
  .field label { font-family: "JetBrains Mono", monospace; font-size: 11.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-soft); }
  .field input, .field textarea, .field select {
    font-family: inherit; font-size: 16px; color: var(--ink);
    background: var(--paper); border: 1.5px solid var(--ink);
    border-radius: 12px; padding: 13px 16px; transition: border-color .15s ease;
  }
  .field input:focus, .field textarea:focus, .field select:focus { outline: none; border-color: var(--caramel); }
  .field-error { color: #b03a2e; font-size: 13px; margin-top: 4px; }

  /* ---------------- FOOTER ---------------- */
  footer { background: var(--ink); color: rgba(253,248,243,0.7); padding: 64px 0 40px; }
  .footer-inner { padding: 0 32px; }
  .footer-grid {
    display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr;
    gap: 36px; padding-bottom: 36px;
    border-bottom: 1px solid rgba(253,248,243,0.14);
  }
  .footer-brand {
    display: flex; align-items: center; gap: 12px;
    color: var(--paper); font-weight: 600; letter-spacing: 0.22em; font-size: 14px; margin-bottom: 14px;
  }
  .footer-brand img { width: 28px; height: 28px; display: block; }
  .footer-tag { color: rgba(253,248,243,0.7); font-size: 15px; line-height: 1.55; max-width: 36ch; }
  footer h5 { color: var(--paper); font-size: 12px; text-transform: uppercase; letter-spacing: 0.14em; margin-bottom: 12px; font-weight: 600; }
  footer ul { list-style: none; padding: 0; }
  footer ul li { padding: 5px 0; }
  footer ul li a { font-size: 14px; color: rgba(253,248,243,0.7); }
  footer ul li a:hover { color: var(--cookie-l); }
  .footer-foot {
    display: flex; justify-content: space-between;
    padding-top: 24px; flex-wrap: wrap; gap: 14px;
    font-size: 12.5px; color: rgba(253,248,243,0.5);
  }

  /* ---------------- RESPONSIVE ---------------- */
  @media (max-width: 860px) {
    .wrap { padding: 0 24px; }
    .footer-inner { padding: 0 24px; }
    section { padding: 72px 0; }
    .hero { padding: 40px 24px 64px; }
    .nav-links a:not(.nav-cta) { display: none; }
    .ingredients { grid-template-columns: 1fr; }
    .samples { grid-template-columns: 1fr; }
    .included { grid-template-columns: 1fr 1fr; }
    .included .item:nth-child(3n) { border-right: 1.5px solid var(--ink); }
    .included .item:nth-child(2n) { border-right: none; }
    .included .item:nth-last-child(-n+3) { border-bottom: 1.5px solid var(--ink); }
    .included .item:nth-last-child(-n+2) { border-bottom: none; }
    .preview-grid { grid-template-columns: 1fr; }
    .pricing-grid { grid-template-columns: 1fr; }
    .price-featured { grid-template-columns: 1fr; padding: 28px 24px; }
    .cross-promo-grid { grid-template-columns: 1fr; }
    .promo-wide { display: block; grid-column: auto; }
    .promo-wide p { margin-bottom: 24px; }
    .promo-wide .promo-meta { text-align: left; }
    .about-inner { flex-direction: column; gap: 20px; }
    .footer-grid { grid-template-columns: 1fr 1fr; }
    .full-batch-preview { padding: 72px 0; }
    .cross-promo { padding: 72px 0; }
    .about { padding: 72px 24px; }
  }
  @media (max-width: 540px) {
    .bakers { grid-template-columns: 1fr; }
    .baker { border-right: none !important; border-bottom: 1px solid rgba(253,248,243,0.15) !important; }
    .baker:last-child { border-bottom: none !important; }
    .included { grid-template-columns: 1fr; }
    .included .item { border-right: none !important; border-bottom: 1.5px solid var(--ink) !important; }
    .included .item:last-child { border-bottom: none !important; }
    .footer-grid { grid-template-columns: 1fr; gap: 24px; }
    .footer-foot { flex-direction: column; align-items: flex-start; }
    nav.topnav .nav-links { gap: 12px; }
  }
