/* Milk Before 7 main site. Builds on mb7-base.css (tokens, buttons, headings, schemes).
   Phone is below 760px. Every grid sets its columns at every width. */

/* ---------- logo ---------- */
.mb7-logo{display:inline-flex;align-items:center;gap:8px;color:var(--navy)}
.mb7-logo__words{display:flex;flex-direction:column;line-height:.8}
.mb7-logo__word{font-family:var(--font-display);font-size:34px;letter-spacing:-.03em}
.mb7-logo__script{font-family:var(--font-hand);font-size:26px;color:var(--red);margin-top:-2px;margin-left:6px;transform:rotate(-3deg)}
.mb7-logo__badge{display:flex;flex-direction:column;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:var(--red);color:var(--cream);border:3px dashed var(--cream);outline:2px solid var(--red);line-height:.9;transition:transform .5s var(--ease-pop)}
.mb7-logo__num{font-family:var(--font-display);font-size:22px}
.mb7-logo__am{font-size:8px;font-weight:800;line-height:1.5;letter-spacing:.14em}
a:hover .mb7-logo__badge{transform:rotate(360deg)}
.mb7-logo--footer{color:var(--cream)}
.mb7-logo--footer .mb7-logo__word{font-size:40px}
.mb7-logo--footer .mb7-logo__script{font-size:30px}
.mb7-logo--footer .mb7-logo__script{color:var(--gold)}
.mb7-logo--footer .mb7-logo__badge{background:var(--gold);color:var(--navy);outline-color:var(--gold);border-color:var(--navy)}

/* ---------- top bar and header (same as the shop theme) ---------- */
.mb7-topbar{background:var(--navy);color:var(--cream);font-size:14px;font-weight:700;line-height:1.35}
.mb7-topbar__list{list-style:none;margin:0;padding:8px var(--gutter);max-width:var(--container);margin-inline:auto;display:grid;grid-template-columns:repeat(4,auto);justify-content:space-between;gap:12px}
.mb7-topbar__list li{display:flex;align-items:center;gap:8px;white-space:nowrap}
.mb7-topbar__list svg{color:var(--gold)}
.mb7-header{position:sticky;top:0;z-index:30;background:var(--paper);border-bottom:2px solid var(--navy);color:var(--navy)}
.mb7-header__row{max-width:var(--container);margin:0 auto;padding:10px clamp(14px,4vw,24px);display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap}
.mb7-header__logo{flex:none;display:flex;min-height:44px}
.mb7-header__logo:hover{color:inherit}
.mb7-header__nav{flex:1 1 auto;min-width:0;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;padding:4px 4px 10px;margin-bottom:-6px}
.mb7-pill{--pill-bg:var(--cream);--pill-fg:var(--navy);--pill-icon-bg:var(--navy);--pill-icon-fg:var(--cream);--tilt:0deg;display:flex;align-items:center;gap:8px;flex:none;min-height:44px;background:var(--pill-bg);color:var(--pill-fg);border:2px solid var(--navy);border-radius:999px;padding:6px 14px 6px 6px;font-family:var(--font-display);font-size:16px;line-height:1;white-space:nowrap;box-shadow:0 4px 0 var(--navy);transform:rotate(var(--tilt));transition:transform .25s cubic-bezier(.3,1.6,.5,1),box-shadow .15s}
.mb7-pill:hover,.mb7-pill:focus-visible{color:var(--pill-fg);transform:rotate(calc(var(--tilt) * -1.5)) translateY(-3px) scale(1.05);box-shadow:0 7px 0 var(--navy)}
.mb7-pill:active{transform:translateY(3px);box-shadow:0 1px 0 var(--navy)}
.mb7-pill__icon{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--pill-icon-bg);color:var(--pill-icon-fg)}
.mb7-pill--red{--pill-bg:var(--red);--pill-fg:var(--cream);--pill-icon-bg:var(--cream);--pill-icon-fg:var(--red)}
.mb7-pill--gold{--pill-bg:var(--gold);--pill-fg:var(--navy);--pill-icon-bg:var(--navy);--pill-icon-fg:var(--gold)}
.mb7-pill--blue{--pill-bg:var(--blue);--pill-fg:var(--cream);--pill-icon-bg:var(--cream);--pill-icon-fg:var(--blue)}
.mb7-pill--green{--pill-bg:var(--green);--pill-fg:var(--cream);--pill-icon-bg:var(--cream);--pill-icon-fg:var(--green)}
.mb7-pill[aria-current]{outline:3px solid var(--navy);outline-offset:3px}
.mb7-pill--wide{width:100%;font-size:20px;min-height:52px;transform:none;--tilt:0deg}
.mb7-menu{display:none;position:relative}
.mb7-menu summary{list-style:none;cursor:pointer}
.mb7-menu summary::-webkit-details-marker{display:none}
.mb7-menu__button{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:2px solid var(--navy);background:var(--cream);box-shadow:0 3px 0 var(--navy)}
.mb7-menu__close{display:none}
.mb7-menu[open] .mb7-menu__open{display:none}
.mb7-menu[open] .mb7-menu__close{display:block}
.mb7-menu__panel{position:absolute;right:0;top:calc(100% + 14px);width:min(340px,calc(100vw - 28px));background:var(--cream);border:2px solid var(--navy);border-radius:22px;box-shadow:0 6px 0 var(--navy);padding:14px;display:grid;gap:10px}
@media (max-width:1099px){.mb7-header__nav .mb7-pill{font-size:15px;padding-right:12px}}
@media (max-width:959px){.mb7-header__nav{display:none}.mb7-menu{display:block}}
@media (max-width:759px){
  .mb7-topbar__list{grid-template-columns:repeat(2,auto);justify-content:space-between;gap:6px 12px;font-size:13px}
}

/* ---------- picture frame ---------- */
.mb7-frame{margin:0;border:3px solid var(--navy);border-radius:28px;overflow:hidden;background:var(--cream);box-shadow:10px 10px 0 var(--navy)}
.mb7-frame img{width:100%;height:100%;object-fit:cover}
.mb7-frame--tilt{transform:rotate(2deg)}
.mb7-frame--hero{position:relative;aspect-ratio:4/5;max-height:640px;margin-inline:auto;max-width:520px;transform:rotate(1.2deg)}
.mb7-hero__note{position:absolute;left:16px;top:22px;max-width:190px;padding:12px 14px;background:#FFF3C4;transform:rotate(-4deg);box-shadow:5px 5px 0 var(--navy);font-size:26px;line-height:.95;color:var(--navy);z-index:2}
.mb7-hero__art{position:relative}
.mb7-pos-low{object-position:center 78%}.mb7-pos-mid{object-position:center 40%}

/* ---------- postcode checker ---------- */
.mb7-pc{display:flex;flex-direction:column;gap:12px;width:100%;max-width:520px;min-width:0}
.mb7-pc__form{display:flex;gap:8px;padding:6px;background:var(--cream);border:3px solid var(--navy);border-radius:999px;margin:0}
.mb7-pc__input{flex:1;min-width:0;min-height:54px;padding:0 18px;border:0;background:transparent;font-family:inherit;font-size:22px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--navy);outline:none}
.mb7-pc__input::placeholder{color:rgba(20,35,90,.6);text-transform:none;letter-spacing:0;font-weight:700}
.mb7-pc__form:focus-within{outline:3px solid var(--blue);outline-offset:3px}
.mb7-pc__button{flex:none;min-height:54px;padding:0 24px;border-radius:999px;background:var(--red);color:var(--cream);font-weight:800;font-size:17px;white-space:nowrap;transition:background .2s,transform .15s}
.mb7-pc__button:hover{background:var(--navy)}
.mb7-pc__button:active{transform:translateY(2px)}
.mb7-pc__button[disabled]{opacity:.7;cursor:progress}
.mb7-pc--dark .mb7-pc__form{background:var(--navy-deep);border-color:var(--cream)}
.mb7-pc--dark .mb7-pc__input{color:var(--cream)}
.mb7-pc--dark .mb7-pc__input::placeholder{color:rgba(251,247,236,.7)}
.mb7-pc--dark .mb7-pc__form:focus-within{outline-color:var(--gold)}
.mb7-pc__msg{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 18px;border:2px solid var(--navy);border-left-width:8px;border-radius:16px;background:var(--cream);color:var(--navy)}
.mb7-pc__msg[data-state="yes"]{border-color:var(--green);border-left-color:var(--green)}
.mb7-pc__msg[data-state="no"]{border-color:var(--red);border-left-color:var(--red)}
.mb7-pc__msg[data-state="warn"]{border-color:var(--gold);border-left-color:var(--gold)}
.mb7-pc__text{font-weight:700;font-size:16px;line-height:1.4;flex:1 1 220px}
.mb7-pc__link{flex:none}
.mb7-pc noscript .mb7-pc__text{display:block}
@media (max-width:420px){
  .mb7-pc__button{padding:0 16px;font-size:16px}
  .mb7-pc__input{font-size:18px;padding:0 12px}
}

/* ---------- hero ---------- */
.mb7-hero{padding-top:clamp(40px,6vw,80px);padding-bottom:clamp(48px,7vw,96px)}
.mb7-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,5vw,64px);align-items:center}
.mb7-hero__copy{display:flex;flex-direction:column;gap:22px;align-items:flex-start}
.mb7-hero__lede{font-size:clamp(18px,1.5vw,21px);line-height:1.45;max-width:520px}
.mb7-hero__reasons{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px 22px;font-weight:700;font-size:15px;line-height:1.5}
.mb7-hero__reasons li{display:flex;align-items:center;gap:8px}
.mb7-hero__reasons li:nth-child(1) svg{color:var(--red)}
.mb7-hero__reasons li:nth-child(2) svg{color:var(--blue)}
.mb7-hero__reasons li:nth-child(3) svg{color:var(--green)}
@media (max-width:899px){
  .mb7-hero__grid{grid-template-columns:minmax(0,1fr)}
  .mb7-frame{box-shadow:6px 6px 0 var(--navy)}
}

/* ---------- ticker ---------- */
.mb7-ticker{background:var(--gold);border-block:2px solid var(--navy);overflow:hidden;color:var(--navy)}
.mb7-ticker__track{display:flex;align-items:center;gap:28px;width:max-content;padding:14px 0;animation:mb7-ticker 40s linear infinite}
.mb7-ticker__word{font-family:var(--font-display);font-size:clamp(22px,2.1vw,30px);line-height:1.5;white-space:nowrap}
.mb7-ticker__dot{width:14px;height:14px;border-radius:50%;flex:none;border:2px solid var(--navy)}
.mb7-ticker__dot--0{background:var(--blue)}.mb7-ticker__dot--1{background:var(--cream)}.mb7-ticker__dot--2{background:var(--red)}
@keyframes mb7-ticker{to{transform:translateX(-25%)}}
@media (prefers-reduced-motion:reduce){.mb7-ticker__track{animation:none}}

/* ---------- shared bits ---------- */
.mb7-center{text-align:center;display:flex;flex-direction:column;align-items:center;gap:20px}
.mb7-center .mb7-kicker{transform:rotate(-2deg);transform-origin:50% 50%}
.mb7-lede--wide{max-width:860px;font-size:18px}
.mb7-center-cta{display:flex;justify-content:center;margin-top:clamp(28px,4vw,48px)}
.mb7-card{overflow:hidden}
.mb7-card h3{font-family:var(--font-display);font-weight:400;font-size:clamp(22px,1.9vw,26px);line-height:1.05}

/* ---------- hello ---------- */
.mb7-hello__inner{display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px;max-width:900px}
.mb7-hello__lede{font-size:20px;line-height:1.4;font-weight:700}
.mb7-hello__inner .mb7-btn{margin-top:8px}

/* ---------- areas ---------- */
.mb7-areas__panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start;background:var(--navy-deep);border:3px solid var(--cream);border-radius:32px;padding:clamp(24px,4.5vw,64px);box-shadow:10px 10px 0 var(--red)}
.mb7-areas__intro{display:flex;flex-direction:column;gap:20px}
.mb7-areas__title{font-size:18px;font-weight:800;line-height:1.3;margin:0 0 18px;color:var(--gold)}
.mb7-areas__list ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;font-weight:800;font-size:17px}
.mb7-areas__list li{display:flex;align-items:center;gap:12px}
.mb7-areas__list .mb7-cap{border-width:2px;outline-width:2px}
.mb7-areas__note{margin-top:22px;font-size:15px;line-height:1.5}
@media (max-width:899px){.mb7-areas__panel{grid-template-columns:minmax(0,1fr)}}
@media (max-width:420px){.mb7-areas__list ul{font-size:15px;gap:10px 10px}}

/* ---------- why ---------- */
.mb7-why .mb7-center{margin-bottom:clamp(32px,5vw,56px)}
.mb7-why__grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.mb7-why__card{display:flex;flex-direction:column;box-shadow:0 4px 0 var(--navy);background:var(--cream)}
.mb7-why__card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center;border-bottom:2px solid var(--navy)}
.mb7-why__card div{padding:22px;display:flex;flex-direction:column;gap:10px}
.mb7-why__card p{font-size:16px;line-height:1.5}
@media (max-width:1099px){.mb7-why__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:639px){.mb7-why__grid{grid-template-columns:minmax(0,1fr)}}

/* ---------- how it works ---------- */
.mb7-how__grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:clamp(32px,5vw,56px)}
.mb7-how__step{background:var(--paper);padding:clamp(24px,3vw,36px);display:flex;flex-direction:column;gap:14px;box-shadow:0 4px 0 var(--navy)}
.mb7-how__num{display:inline-flex;align-items:center;justify-content:center;color:var(--cream)}
.mb7-how__num span{font-family:var(--font-display);font-size:26px;line-height:1}
.mb7-how__step p{font-size:clamp(17px,1.4vw,20px);line-height:1.4}
@media (max-width:899px){.mb7-how__grid{grid-template-columns:minmax(0,1fr)}}

/* ---------- range ---------- */
.mb7-range__side{display:flex;flex-direction:column;gap:16px;align-items:flex-start;max-width:380px}
.mb7-range__grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:clamp(28px,4vw,48px)}
.mb7-range__card{display:flex;flex-direction:column;height:100%;background:var(--tint,var(--cream));box-shadow:0 4px 0 var(--navy);color:var(--navy);transition:transform .2s var(--ease-out)}
.mb7-range__card:hover{transform:translateY(-4px);color:var(--navy)}
.mb7-range__pic{display:block;aspect-ratio:4/5;overflow:hidden;border-bottom:2px solid var(--navy);background:var(--tint)}
.mb7-range__pic img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.mb7-process__card:nth-child(1){--tint:#F4CDC3}.mb7-process__card:nth-child(2){--tint:#F8DDB8}.mb7-process__card:nth-child(3){--tint:#D6DDF2}
.mb7-range__card h3,.mb7-range__card p{padding-inline:22px}
.mb7-range__card h3{padding-top:18px}
.mb7-range__card p{padding-block:8px 24px;font-size:14px;font-weight:700;line-height:1.5}
@media (max-width:1099px){.mb7-range__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:479px){.mb7-range__card h3,.mb7-range__card p{padding-inline:14px}}

/* ---------- local milkman (gold) ---------- */
.mb7-milkman__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,72px);align-items:center}
.mb7-milkman__list{list-style:none;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:28px}
.mb7-milkman__list li{display:flex;align-items:center;gap:14px;font-weight:800;font-size:18px;line-height:1.3;background:var(--cream);border:2px solid var(--navy);border-radius:999px;padding:10px 20px 10px 12px;box-shadow:0 3px 0 var(--navy)}
.mb7-milkman__list svg{flex:none;box-sizing:content-box;padding:8px;border-radius:50%;background:var(--navy);color:var(--gold)}
@media (max-width:899px){.mb7-milkman__grid{grid-template-columns:minmax(0,1fr)}.mb7-milkman .mb7-frame{width:100%;max-width:560px;margin-inline:auto}}

/* ---------- process ---------- */
.mb7-process__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:start;margin-bottom:clamp(32px,5vw,56px)}
.mb7-process__text{display:flex;flex-direction:column;gap:14px;font-size:17px;line-height:1.5}
.mb7-process__grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.mb7-process__card{display:flex;flex-direction:column;background:var(--paper);box-shadow:0 4px 0 var(--navy)}
.mb7-process__card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center;border-bottom:2px solid var(--navy)}
.mb7-process__card div{padding:22px;display:flex;flex-direction:column;gap:10px}
.mb7-process__card p{font-size:16px;line-height:1.5}
.mb7-process__text strong{line-height:1.5}
@media (max-width:899px){.mb7-process__head,.mb7-process__grid{grid-template-columns:minmax(0,1fr)}}

/* ---------- final call ---------- */
.mb7-final__inner{display:flex;flex-direction:column;align-items:center;text-align:center;gap:22px;max-width:960px}
.mb7-final__inner .mb7-kicker{transform-origin:50% 50%}
.mb7-final__lede{font-size:clamp(18px,1.5vw,21px);line-height:1.45;max-width:640px}
.mb7-final__buttons{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:8px}
@media (max-width:480px){.mb7-final__buttons{flex-direction:column;align-items:stretch;width:100%}}

/* ---------- footer ---------- */
.mb7-footer{background:var(--navy-deep);color:var(--cream);padding-top:clamp(48px,7vw,80px)}
.mb7-footer a{color:var(--cream)}
.mb7-footer a:hover{color:var(--gold)}
.mb7-footer__grid{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr)) minmax(0,1.2fr);gap:32px}
.mb7-footer__brand{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.mb7-footer__brand p{max-width:300px;font-size:15px;line-height:1.5}
.mb7-footer__title{font-family:var(--font-display);font-weight:400;font-size:20px;line-height:1.2;color:var(--gold);margin:0 0 14px}
.mb7-footer__col ul{list-style:none;padding:0;display:grid;gap:2px}
.mb7-footer__col a{display:inline-flex;align-items:center;min-height:44px;font-weight:500;font-size:17px}
.mb7-footer__follow{display:flex;flex-direction:column;align-items:flex-start}
.mb7-footer__cta{display:inline-flex;align-items:center;min-height:48px;padding:0 22px;margin-bottom:26px;border-radius:999px;background:var(--gold);color:var(--navy)!important;font-weight:800;font-size:16px;border:2px solid var(--cream);box-shadow:0 4px 0 var(--red);white-space:nowrap}
.mb7-footer__cta:hover{transform:translateY(2px);box-shadow:0 2px 0 var(--red)}
.mb7-footer__social{display:flex;gap:12px}
.mb7-footer__social-link{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:2px solid var(--cream)}
.mb7-footer__social-link--gold{background:var(--gold);color:var(--navy)!important;border-color:var(--gold)}
.mb7-footer__social-link--cream{background:var(--cream);color:var(--navy)!important}
.mb7-footer__handle{margin-top:12px;font-family:var(--font-hand);font-size:28px;color:var(--gold);line-height:1}
.mb7-footer__base{margin-top:clamp(32px,5vw,56px);padding-block:22px;border-top:2px solid rgba(251,247,236,.2);font-size:15px;display:flex;flex-wrap:wrap;gap:8px 28px;justify-content:space-between;align-items:center}
.mb7-footer__policies{display:flex;flex-wrap:wrap;gap:0 22px}
.mb7-footer__policies a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;letter-spacing:.01em}
.mb7-footer__copy{font-weight:600;letter-spacing:.01em}
@media (max-width:1099px){
  .mb7-footer__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mb7-footer__brand,.mb7-footer__follow{grid-column:1 / -1}
}
@media (max-width:479px){.mb7-footer__col a{font-size:15px}.mb7-footer__grid{gap:24px 12px}}

/* ---------- page hero (inner pages) ---------- */
.mb7-pagehero__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,5vw,64px);align-items:center}
.mb7-pagehero__grid--single{grid-template-columns:minmax(0,1fr)}
.mb7-pagehero__copy{display:flex;flex-direction:column;gap:18px}
.mb7-pagehero__text{font-size:clamp(17px,1.5vw,20px);line-height:1.5;max-width:620px}
@media (max-width:899px){.mb7-pagehero__grid{grid-template-columns:minmax(0,1fr)}}

/* ---------- policy pages ---------- */
.mb7-policy__grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.mb7-policy__grid--single{grid-template-columns:minmax(0,1fr);max-width:860px}
.mb7-policy__menu{position:sticky;top:104px;background:var(--cream);border:2px solid var(--navy);border-radius:22px;padding:18px;box-shadow:0 4px 0 var(--navy)}
.mb7-policy__menutitle{font-family:var(--font-hand);font-size:28px;color:var(--red);margin:0 0 6px;line-height:1}
.mb7-policy__menu ul{list-style:none;padding:0;display:grid;gap:2px}
.mb7-policy__menu a{display:flex;align-items:center;min-height:44px;padding:0 12px;border-radius:12px;font-weight:700}
.mb7-policy__menu a:hover,.mb7-policy__menu a[aria-current]{background:var(--paper);color:var(--red)}
.mb7-policy__body{display:flex;flex-direction:column;gap:28px;max-width:820px}
.mb7-policy__short{background:#FFF3C4;padding:18px 22px;display:flex;flex-direction:column;gap:6px;transform:rotate(-.6deg)}
.mb7-policy__short .mb7-hand{font-size:28px;color:var(--red)}
.mb7-policy__short p{font-size:17px;line-height:1.45}
.mb7-policy__text{font-size:18px;line-height:1.65}
.mb7-policy__text h2{font-family:var(--font-display);font-weight:400;font-size:clamp(26px,2.6vw,34px);line-height:1.05;margin:44px 0 14px;scroll-margin-top:110px}
.mb7-policy__text h2:first-child{margin-top:0}
.mb7-policy__text p{margin:0 0 14px}
.mb7-policy__text ul{margin:0 0 14px;padding-left:22px}
.mb7-policy__text a{color:var(--red);text-decoration:underline;text-underline-offset:3px;font-weight:700}
.mb7-policy__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;background:var(--cream);border:2px solid var(--navy);border-radius:22px;font-weight:800;font-size:19px}
@media (max-width:899px){.mb7-policy__grid{grid-template-columns:minmax(0,1fr)}.mb7-policy__menu{position:static}}

/* ---------- our story ---------- */
.mb7-memories__grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:clamp(28px,4vw,48px)}
.mb7-memories__note{min-height:150px;display:flex;align-items:center;padding:22px;font-family:var(--font-hand);font-size:clamp(26px,2.4vw,32px);line-height:1.05;background:var(--paper);transform:rotate(var(--tilt,-1.5deg))}
.mb7-memories__note--red{background:#F4CDC3}.mb7-memories__note--blue{background:#D6DDF2}.mb7-memories__note--gold{background:#F8DDB8}.mb7-memories__note--green{background:#CFE3D2}
@media (max-width:1099px){.mb7-memories__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:539px){.mb7-memories__grid{grid-template-columns:minmax(0,1fr)}.mb7-memories__note{min-height:0}}
.mb7-timeline__grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:clamp(28px,4vw,48px)}
.mb7-timeline__step{background:var(--cream);color:var(--navy);border:2px solid var(--cream);border-radius:22px;padding:24px;display:flex;flex-direction:column;gap:10px;box-shadow:0 5px 0 var(--red)}
.mb7-timeline__time{align-self:flex-start;padding:4px 14px;border-radius:999px;font-weight:800;font-size:14px;color:var(--cream);background:var(--red)}
.mb7-timeline__step--blue .mb7-timeline__time{background:var(--blue)}.mb7-timeline__step--green .mb7-timeline__time{background:var(--green)}.mb7-timeline__step--navy .mb7-timeline__time{background:var(--navy)}
.mb7-timeline__step p{font-size:16px;line-height:1.45}
@media (max-width:1099px){.mb7-timeline__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:539px){.mb7-timeline__grid{grid-template-columns:minmax(0,1fr)}}
.mb7-values__grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:clamp(28px,4vw,48px)}
.mb7-values__card{background:var(--cream);padding:28px;display:flex;flex-direction:column;gap:12px;box-shadow:0 4px 0 var(--navy)}
.mb7-values__card p{font-size:17px;line-height:1.45}
.mb7-values__icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;color:var(--cream);background:var(--blue)}
.mb7-values__icon--red{background:var(--red)}.mb7-values__icon--gold{background:var(--gold);color:var(--navy)}
@media (max-width:899px){.mb7-values__grid{grid-template-columns:minmax(0,1fr)}}

/* ---------- delivery info cards ---------- */
.mb7-info__grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.mb7-info__card{background:var(--cream);padding:28px;display:flex;flex-direction:column;gap:10px;box-shadow:0 4px 0 var(--navy)}
.mb7-info__card p{font-size:17px;line-height:1.45}
.mb7-info__card a{color:var(--red);font-weight:800;text-decoration:underline}
@media (max-width:899px){.mb7-info__grid{grid-template-columns:minmax(0,1fr)}}

/* ---------- contact ---------- */
.mb7-contact__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr);gap:clamp(24px,4vw,56px);align-items:start}
.mb7-contact__panel{padding:clamp(22px,3.5vw,40px);display:flex;flex-direction:column;gap:18px}
.mb7-form{display:flex;flex-direction:column;gap:18px}
.mb7-form__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.mb7-field{display:flex;flex-direction:column;gap:6px;font-weight:800;font-size:15px}
.mb7-input,.mb7-textarea{width:100%;min-height:52px;padding:12px 16px;border:2px solid var(--navy);border-radius:16px;background:var(--paper);font-size:17px;font-weight:600;color:var(--navy)}
.mb7-textarea{min-height:140px;resize:vertical;line-height:1.45}
.mb7-input:focus,.mb7-textarea:focus{outline:3px solid var(--blue);outline-offset:2px}
.mb7-topics{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}
.mb7-topics legend{font-weight:800;font-size:15px;margin-bottom:10px;padding:0}
.mb7-topic{position:relative}
.mb7-topic input{-webkit-appearance:none;appearance:none;position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;margin:0}
.mb7-topic span{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:2px solid var(--navy);border-radius:999px;font-weight:800;background:var(--paper)}
.mb7-topic input:checked + span{background:var(--navy);color:var(--cream)}
.mb7-topic input:focus-visible + span{outline:3px solid var(--blue);outline-offset:3px}
.mb7-hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.mb7-form-message{padding:14px 18px;border-radius:16px;border:2px solid var(--navy);font-weight:700}
.mb7-form-message--ok{background:#DDEFD9;border-color:var(--green)}
.mb7-form-message--error{background:#F8D9D3;border-color:var(--red)}
.mb7-contact__side{display:flex;flex-direction:column;gap:16px}
.mb7-contact__quick{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 22px;font-weight:800;font-size:18px;background:var(--cream);box-shadow:0 4px 0 var(--navy)}
.mb7-contact__quick:hover{color:var(--red)}
.mb7-rot{display:inline-flex;transform:rotate(90deg)}
@media (max-width:899px){.mb7-contact__grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:559px){.mb7-form__row{grid-template-columns:minmax(0,1fr)}}

/* ---------- plain pages ---------- */
.mb7-prose__body{margin-top:24px;font-size:18px;line-height:1.6;display:flex;flex-direction:column;gap:16px}

/* ---------- FAQ (same as the shop theme) ---------- */
  .mb7-faq__inner {
    display: flex;
    flex-direction: column;
    gap: clamp(32px, 4vw, 48px);
  }
  .mb7-faq__lede {
    font-size: 18px;
    max-width: 360px;
  }
  .mb7-faq__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(24px, 4vw, 48px);
    align-items: start;
  }
  .mb7-faq__list {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  .mb7-faq__q {
    display: flex;
    align-items: center;
    gap: 14px;
    width: 100%;
    min-height: 64px;
    padding: 8px 20px 8px 8px;
    border: 2px solid var(--navy);
    border-radius: var(--radius-pill);
    background: var(--cream);
    color: var(--navy);
    text-align: left;
    box-shadow: 0 3px 0 var(--navy);
    transition: transform 0.3s cubic-bezier(0.3, 1.6, 0.5, 1), box-shadow 0.2s, background 0.2s;
  }
  .mb7-faq__q[aria-expanded='true'] {
    background: var(--gold);
    box-shadow: 0 5px 0 var(--navy);
  }
  .mb7-faq__cap {
    flex: none;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: var(--cap);
    border: 3px dashed var(--cream);
    outline: 2px solid var(--cap);
    transform: rotate(-10deg);
    transition: transform 0.5s cubic-bezier(0.3, 1.4, 0.5, 1);
  }
  .mb7-faq__q[aria-expanded='true'] .mb7-faq__cap {
    transform: rotate(200deg);
  }
  .mb7-faq__q-text {
    flex: 1;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.3;
  }
  .mb7-faq__sign {
    flex: none;
    font-family: var(--font-display);
    font-size: 22px;
  }
  .mb7-faq__arrow,
  .mb7-faq__q[aria-expanded='true'] .mb7-faq__plus {
    display: none;
  }
  .mb7-faq__q[aria-expanded='true'] .mb7-faq__arrow {
    display: inline;
  }
  .mb7-faq__inline {
    margin: -4px 8px 6px 18px;
    padding: 16px 18px 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    background: var(--cream);
    color: var(--navy);
    border: 2px solid var(--navy);
    border-top: 0;
    border-radius: 0 0 18px 18px;
    font-size: 17px;
    line-height: 1.55;
  }
  .mb7-faq__rich p {
    margin: 0 0 0.7em;
  }
  .mb7-faq__rich p:last-child {
    margin-bottom: 0;
  }
  .mb7-faq__link {
    align-self: flex-start;
    display: flex;
    align-items: center;
    min-height: 48px;
    padding: 0 20px;
    border-radius: var(--radius-pill);
    background: var(--navy);
    color: var(--cream);
    font-weight: 800;
    font-size: 15px;
  }
  .mb7-faq__link:hover {
    color: var(--cream);
    background: var(--red);
  }
  .mb7-faq__stage {
    display: none;
  }
  .mb7-faq__stuck {
    font-size: 17px;
    text-wrap: pretty;
  }
  .mb7-faq__stuck a {
    color: var(--gold);
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 4px;
  }
  .mb7-faq__grid.has-open [data-faq-default] {
    display: none;
  }
  @media (min-width: 900px) {
    .mb7-faq__grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .mb7-faq__inline {
      display: none !important;
    }
    .mb7-faq__q:hover {
      transform: translateX(6px);
    }
    .mb7-faq__q[aria-expanded='true'] {
      transform: translateX(10px);
    }
    .mb7-faq__stage {
      display: block;
    }
    .mb7-faq__card {
      position: relative;
      display: flex;
      flex-direction: column;
      gap: 18px;
      min-width: 0;
      padding: clamp(26px, 4vw, 44px);
      background-color: var(--cream);
      background-image: repeating-linear-gradient(var(--cream) 0 39px, rgba(31, 63, 168, 0.12) 39px 40px);
      color: var(--navy);
      border: 3px solid var(--navy);
      border-radius: 8px;
      box-shadow: 10px 10px 0 var(--navy);
      transform: rotate(1deg);
      animation: mb7-faq-pop 0.5s cubic-bezier(0.3, 1.5, 0.5, 1);
    }
  }
  @media (max-width: 899px) {
    .mb7-faq__stage {
      display: none !important;
    }
  }
  .mb7-faq__badge {
    position: absolute;
    top: -26px;
    right: 28px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--cap);
    border: 3px dashed var(--cream);
    outline: 3px solid var(--cap);
    box-shadow: 0 4px 0 3px var(--navy);
  }
  .mb7-faq__card-title {
    padding-right: 60px;
    font-family: var(--font-display);
    font-size: clamp(28px, 3.2vw, 40px);
    line-height: 1.05;
  }
  .mb7-faq__card-text {
    font-size: 20px;
    line-height: 1.55;
  }
  .mb7-faq__card-link {
    align-self: flex-start;
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 52px;
    padding: 0 24px;
    border-radius: var(--radius-pill);
    background: var(--navy);
    color: var(--cream);
    font-weight: 800;
    font-size: 16px;
    white-space: nowrap;
    box-shadow: 0 4px 0 var(--red);
  }
  .mb7-faq__card-link:hover {
    color: var(--cream);
    transform: translateY(2px);
    box-shadow: 0 2px 0 var(--red);
  }
  .mb7-faq__signoff {
    align-self: flex-end;
    font-family: var(--font-hand);
    font-size: 32px;
    line-height: 1;
    color: var(--red);
    transform: rotate(-3deg);
  }
  @keyframes mb7-faq-pop {
    from {
      opacity: 0;
      transform: translateY(24px) rotate(-3deg) scale(0.96);
    }
    to {
      opacity: 1;
      transform: rotate(1deg);
    }
  }

/* ---------- hero pour (same four-picture cross-fade as the shop theme) ---------- */
.mb7-hero__art{display:flex;justify-content:center}
.mb7-hero__pour{position:relative;width:min(100%,360px);aspect-ratio:5/8;background:#1442b8;border:2px solid var(--navy);border-radius:32px;overflow:hidden;box-shadow:10px 10px 0 var(--navy)}
.mb7-hero__frames{position:absolute;inset:0;transform-origin:50% 70%}
.mb7-hero__frames.is-looping{animation:mb7-hero-drift 10s ease-in-out infinite alternate}
.mb7-hero__img{position:absolute;left:0;top:-19.98%;width:100%;max-width:none;height:auto;aspect-ratio:501/1024;display:block}
.mb7-hero__img:nth-child(n+2){opacity:0;animation:mb7-hero-fade-a var(--loop,6.5s) ease-in-out infinite}
.mb7-hero__img:nth-child(3){animation-name:mb7-hero-fade-b}
.mb7-hero__img:nth-child(4){animation-name:mb7-hero-fade-c}
.mb7-hero__pour .mb7-hero__note{transform:rotate(-5deg);max-width:150px;z-index:2}
@keyframes mb7-hero-drift{from{transform:scale(1)}to{transform:scale(1.05) translate(-.6%,-.8%)}}
@keyframes mb7-hero-fade-a{0%,14%{opacity:0}22%,90%{opacity:1}97%,100%{opacity:0}}
@keyframes mb7-hero-fade-b{0%,38%{opacity:0}46%,90%{opacity:1}97%,100%{opacity:0}}
@keyframes mb7-hero-fade-c{0%,62%{opacity:0}70%,90%{opacity:1}97%,100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.mb7-hero__frames,.mb7-hero__img{animation:none!important}.mb7-hero__img:nth-child(n+2){opacity:0}}

/* ---------- top bar: lines up with the logo and the page edge at every width ---------- */
.mb7-topbar ul.mb7-topbar__list{box-sizing:border-box;width:100%;max-width:var(--container);margin-inline:auto;padding:9px clamp(14px,4vw,24px)}
.mb7-topbar__list li{min-width:0}
@media (max-width:759px){
  .mb7-topbar ul.mb7-topbar__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;font-size:12.5px}
  .mb7-topbar__list li{white-space:normal;gap:6px;line-height:1.25}
}

/* ---------- footer: same look as the shop theme ---------- */
.mb7-footer{background:var(--navy);padding-top:clamp(44px,6vw,72px)}
.mb7-footer .mb7-footer__grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:28px 24px;padding-bottom:clamp(28px,4vw,40px);border-bottom:1px solid rgba(251,247,236,.2)}
.mb7-footer .mb7-footer__brand{gap:14px}
.mb7-footer .mb7-footer__brand p{max-width:26ch;font-size:15px;line-height:1.5;color:rgba(251,247,236,.8)}
.mb7-footer .mb7-footer__col ul{gap:0}
.mb7-footer .mb7-footer__col a{font-size:clamp(15px,1.4vw,17px);white-space:nowrap}
.mb7-footer .mb7-footer__follow{gap:16px}
.mb7-footer .mb7-footer__cta{gap:10px;min-height:52px;margin-bottom:10px;background:var(--red);color:var(--cream)!important;border:2px solid var(--cream);box-shadow:0 4px 0 var(--navy-deep);white-space:nowrap}
.mb7-footer .mb7-footer__cta:hover{color:var(--cream)!important;transform:translateY(2px);box-shadow:0 2px 0 var(--navy-deep)}
.mb7-footer .mb7-footer__social{gap:12px}
.mb7-footer .mb7-footer__social-link{width:52px;height:52px;border:3px dashed var(--navy);transition:transform .35s cubic-bezier(.3,1.6,.5,1)}
.mb7-footer .mb7-footer__social-link--gold{background:var(--gold);outline:2px solid var(--gold)}
.mb7-footer .mb7-footer__social-link--cream{background:var(--cream);outline:2px solid var(--cream)}
.mb7-footer .mb7-footer__social-link--gold:hover{transform:rotate(-20deg) translateY(-4px) scale(1.08)}
.mb7-footer .mb7-footer__social-link--cream:hover{transform:rotate(20deg) translateY(-4px) scale(1.08)}
.mb7-footer .mb7-footer__handle{margin:0;color:var(--cream)}
.mb7-footer .mb7-footer__base{margin-top:0;border-top:0;padding:20px var(--gutter) 26px}
.mb7-footer .mb7-footer__copy{display:flex;align-items:center;gap:10px;white-space:nowrap}
.mb7-footer__copy-mark{font-family:var(--font-display);font-size:18px;color:var(--gold)}
.mb7-footer .mb7-footer__policies{gap:8px 22px}
.mb7-footer .mb7-footer__policies a{opacity:.85;white-space:nowrap}
.mb7-footer .mb7-footer__policies a:hover{opacity:1;color:var(--gold);text-decoration:underline;text-underline-offset:4px}
.mb7-logo--footer .mb7-logo__badge{background:var(--red);color:var(--cream);outline-color:var(--red);border-color:var(--cream)}

/* ---------- How it works panel (same as the shop theme) ---------- */
.mb7-how__inner{display:flex;flex-direction:column;gap:clamp(36px,4vw,56px)}
.mb7-how__foot{display:flex;justify-content:center}
.mb7-how__btn{min-height:58px;box-shadow:0 6px 0 var(--red)}

  .mb7-hiw { background: var(--cream); color: var(--navy); border: 3px solid var(--navy); border-radius: 28px; overflow: hidden; box-shadow: 0 8px 0 var(--navy); }
  .mb7-hiw__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: clamp(28px, 4vw, 48px); padding: clamp(24px, 4vw, 40px); }
  .mb7-hiw__col { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
  .mb7-hiw__col:last-child { gap: 16px; }
  .mb7-hiw__title { --h-size: clamp(34px, 3.7vw, 52px); line-height: 1; }
  .mb7-hiw__subtitle { --h-size: clamp(26px, 2.4vw, 34px); line-height: 1.05; }
  .mb7-hiw__steps { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; }
  .mb7-hiw__step { display: flex; align-items: flex-start; gap: 16px; }
  .mb7-hiw__num { flex: none; display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; background: var(--red); color: var(--cream); font-family: var(--font-display); font-size: 24px; }
  .mb7-hiw__num--blue { background: var(--blue); }
  .mb7-hiw__num--gold { background: var(--gold); color: var(--navy); }
  .mb7-hiw__num--green { background: var(--green); }
  .mb7-hiw__num--navy { background: var(--navy); }
  .mb7-hiw__step-text { padding-top: 9px; font-size: 20px; line-height: 1.4; }
  .mb7-hiw__note { padding: 14px 18px; background: var(--paper); border: 1px solid rgba(20, 35, 90, 0.35); border-radius: 14px; font-size: 17px; line-height: 1.5; text-wrap: pretty; }
  .mb7-hiw__note p { margin: 0; }
  .mb7-hiw__note a { color: var(--navy); font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
  .mb7-hiw__window { display: flex; flex-direction: column; gap: 8px; padding: 16px 18px; border: 3px solid rgba(20, 35, 90, 0.2); border-radius: 18px; }
  .mb7-hiw__window.is-today { border-color: var(--red); background: var(--tint-milk); }
  .mb7-hiw__badge { align-self: flex-start; padding: 3px 12px; border-radius: 999px; background: var(--navy); color: var(--cream); font-size: 13px; font-weight: 800; }
  .mb7-hiw__window-title { font-size: 20px; font-weight: 800; line-height: 1.3; }
  .mb7-hiw__window-sub { font-size: 16px; line-height: 1.4; }
  .mb7-hiw__window-result { font-size: 20px; line-height: 1.3; }
  .mb7-hiw__window-result strong { font-weight: 800; }
  .mb7-hiw__today { display: flex; align-items: center; gap: 14px; padding: 16px 18px; background: var(--navy); color: var(--cream); border-radius: 18px; }
  .mb7-hiw__today-icon { flex: none; display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; background: var(--gold); color: var(--navy); }
  .mb7-hiw__today-text { font-size: 19px; line-height: 1.35; }
  .mb7-hiw__today-text strong { font-family: var(--font-display); font-weight: 400; font-size: 24px; color: var(--gold); }

/* ---------- Delivery days (same as the shop theme) ---------- */
  .mb7-week__inner {
    display: flex;
    flex-direction: column;
    gap: 18px;
  }
  .mb7-week .mb7-head-row {
    gap: 12px 24px;
  }
  .mb7-week__hint {
    font-size: 17px;
    font-weight: 700;
  }
  .mb7-week__panel,
  .mb7-week__card {
    overflow: hidden;
    background: var(--cream);
    border: 3px solid var(--navy);
    border-radius: 24px;
    box-shadow: 0 6px 0 var(--navy);
    color: var(--navy);
  }
  .mb7-week__strip {
    display: grid;
    grid-template-columns: repeat(var(--days, 7), minmax(0, 1fr));
  }
  .mb7-week__day {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    padding: 18px 16px 20px;
    text-align: left;
    background: transparent;
    color: var(--navy);
    border-right: 1px solid rgba(20, 35, 90, 0.2);
    transition: background 0.25s;
  }
  .mb7-week__day:last-child {
    border-right: 0;
  }
  .mb7-week__day.is-delivery {
    background: var(--navy);
    color: var(--cream);
  }
  .mb7-week__day[aria-checked='true'] {
    background: var(--gold);
    color: var(--navy);
  }
  .mb7-week__day:hover {
    filter: brightness(0.97);
  }
  .mb7-week__day-name {
    font-family: var(--font-display);
    font-size: 26px;
    line-height: 1;
    transition: transform 0.35s cubic-bezier(0.3, 1.6, 0.5, 1);
  }
  .mb7-week__day[aria-checked='true'] .mb7-week__day-name {
    transform: translateY(-3px) rotate(-3deg);
  }
  .mb7-week__day-note {
    font-size: 14px;
    line-height: 1.35;
    font-weight: 600;
  }
  .mb7-week__day-tag {
    margin-top: 2px;
    min-height: 15px;
    font-size: 12px;
    font-weight: 800;
  }
  .mb7-week__result {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: clamp(14px, 3vw, 28px);
    padding: clamp(18px, 3vw, 26px);
    background: var(--paper);
    border-top: 3px solid var(--navy);
  }
  .mb7-week__col {
    display: flex;
    flex-direction: column;
    gap: 2px;
  }
  .mb7-week__col--grow {
    flex: 1;
    min-width: 200px;
  }
  .mb7-week__small {
    font-size: 15px;
    font-weight: 700;
  }
  .mb7-week__big {
    font-family: var(--font-display);
    font-size: clamp(26px, 3vw, 34px);
    line-height: 1;
  }
  .mb7-week__big--red {
    color: var(--red);
  }
  .mb7-week__note {
    font-size: 15px;
    font-weight: 600;
  }
  .mb7-week__arrow {
    display: flex;
    align-items: center;
    gap: 8px;
    animation: mb7-week-truck 1.6s ease-in-out infinite;
  }
  .mb7-week__arrow i {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--navy);
    opacity: 0.3;
  }
  .mb7-week__arrow i + i {
    opacity: 0.6;
  }
  .mb7-week__arrow b {
    font-family: var(--font-display);
    font-weight: 400;
    font-size: 34px;
    line-height: 1;
  }
  .mb7-week__order {
    min-height: 56px;
  }
  .mb7-week__narrow {
    display: none;
  }
  .mb7-week__card-top {
    padding: 20px 18px;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  .mb7-week__card-intro {
    font-size: 15px;
    font-weight: 700;
  }
  .mb7-week__card-date {
    font-family: var(--font-display);
    font-size: 28px;
    line-height: 1.05;
    color: var(--red);
  }
  .mb7-week__card-doorstep {
    font-size: 15px;
    font-weight: 600;
  }
  .mb7-week__card-btn {
    margin-top: 10px;
    min-height: 54px;
    box-shadow: 0 4px 0 var(--navy);
  }
  .mb7-week__rules {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 16px 18px;
    background: var(--paper);
    border-top: 3px solid var(--navy);
  }
  .mb7-week__rules-title {
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .mb7-week__rule-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  .mb7-week__rule {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 15px;
    line-height: 1.4;
  }
  .mb7-week__rule-num {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--cream);
    border: 2px solid var(--navy);
    font-weight: 800;
    font-size: 14px;
  }
  .mb7-week__rule-num.is-first {
    background: var(--gold);
  }
  @keyframes mb7-week-truck {
    0%, 100% { transform: translateX(-10px); }
    50% { transform: translateX(10px); }
  }
  @media (max-width: 759px) {
    .mb7-week__hint {
      display: none;
    }
    .mb7-week__wide {
      display: none;
    }
    .mb7-week__narrow {
      display: block;
    }
  }

.mb7-week__card-btn{display:flex;width:100%;justify-content:center}

/* ---------- Contact page (same as the shop theme) ---------- */
  .mb7-contact__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 56px;
    align-items: start;
  }
  .mb7-contact__intro { display: flex; flex-direction: column; gap: 26px; min-width: 0; }
  .mb7-contact__title { --h-size: clamp(52px, 6.6vw, 92px); line-height: 0.88; }
  .mb7-contact__lede { font-size: 19px; line-height: 1.55; max-width: 40ch; text-wrap: pretty; }
  .mb7-contact__links { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
  .mb7-contact__link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    min-height: 44px;
    padding: 18px 20px;
    background: var(--cream);
    color: var(--navy);
    border: 2px solid var(--navy);
    border-radius: 18px;
    font-weight: 800;
    font-size: 17px;
    box-shadow: 0 5px 0 var(--navy);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
  }
  .mb7-contact__link:hover { color: var(--navy); transform: translateY(2px); box-shadow: 0 3px 0 var(--navy); }
  .mb7-contact__link-arrow { font-family: var(--font-display); font-size: 22px; }
  .mb7-contact__note {
    min-width: 0;
    padding: 36px clamp(22px, 4vw, 44px) 40px;
    background: var(--cream);
    color: var(--navy);
    border: 2px solid var(--navy);
    border-radius: 6px;
    box-shadow: 8px 8px 0 var(--navy);
    transform: rotate(-0.8deg);
  }
  .mb7-contact__note form { display: flex; flex-direction: column; gap: 18px; }
  .mb7-contact__dear { font-size: 44px; }
  .mb7-contact__topics { display: flex; flex-wrap: wrap; gap: 8px; border: 0; margin: 0; padding: 0; min-width: 0; }
  .mb7-contact__topic { position: relative; }
  .mb7-contact__topic input { position: absolute; opacity: 0; inset: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
  .mb7-contact__topic label {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0 16px;
    border: 2px solid var(--navy);
    border-radius: 999px;
    font-weight: 700;
    font-size: 14px;
    white-space: nowrap;
    cursor: pointer;
  }
  .mb7-contact__topic input:checked + label { background: var(--navy); color: var(--cream); }
  .mb7-contact__topic input:focus-visible + label { outline: 3px solid var(--blue); outline-offset: 3px; }
  .mb7-contact__field { display: flex; flex-direction: column; gap: 6px; }
  .mb7-contact__field label { font-size: 14px; font-weight: 800; }
  .mb7-contact__field input,
  .mb7-contact__field textarea {
    width: 100%;
    border: 0;
    border-bottom: 3px solid var(--navy);
    border-radius: 0;
    background: transparent;
    padding: 10px 2px;
    min-height: 44px;
    font-size: 19px;
    color: var(--navy);
  }
  .mb7-contact__field textarea {
    border: 2px solid var(--navy);
    border-radius: 12px;
    background: repeating-linear-gradient(var(--cream) 0 31px, rgba(31, 63, 168, 0.15) 31px 32px);
    padding: 6px 12px;
    font-family: var(--font-hand);
    font-size: 28px;
    line-height: 32px;
    min-height: 140px;
    resize: vertical;
  }
  .mb7-contact__field input:focus,
  .mb7-contact__field textarea:focus { outline: 3px solid var(--blue); outline-offset: 3px; }
  .mb7-contact__field input[aria-invalid='true'] { border-bottom-color: var(--red); }
  .mb7-contact__field textarea[aria-invalid='true'] { border-color: var(--red); }
  .mb7-contact__error { font-size: 14px; font-weight: 700; color: var(--red); }
  .mb7-contact__errors ul { margin: 8px 0 0; padding-left: 20px; }
  .mb7-contact__errors a { text-decoration: underline; font-weight: 800; }
  .mb7-contact__submit { align-self: flex-start; }
  .mb7-contact__success { display: flex; flex-direction: column; gap: 18px; align-items: flex-start; }
  .mb7-contact__success:focus { outline: none; }
  .mb7-contact__success-title { font-size: 48px; }
  .mb7-contact__success-text { font-size: 18px; line-height: 1.5; }
  .mb7-contact__again { font-weight: 800; font-size: 16px; text-decoration: underline; text-underline-offset: 4px; min-height: 44px; display: inline-flex; align-items: center; }
  .mb7-contact-faq__inner { max-width: 960px; margin-inline: auto; display: flex; flex-direction: column; gap: 32px; }
  .mb7-contact-faq__list { list-style: none; margin: 0; padding: 0; border-top: 2px solid var(--cream); }
  .mb7-contact-faq__item { border-bottom: 2px solid var(--cream); }
  .mb7-contact-faq__q { margin: 0; font: inherit; }
  .mb7-contact-faq__button {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    min-height: 44px;
    padding: 20px 0;
    color: var(--cream);
    font-size: 19px;
    font-weight: 800;
    text-align: left;
  }
  .mb7-contact-faq__plus {
    width: 34px;
    height: 34px;
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--cream);
    color: var(--navy);
    font-size: 20px;
    transition: transform 0.25s ease, background 0.25s ease;
  }
  .mb7-contact-faq__button[aria-expanded='true'] .mb7-contact-faq__plus { transform: rotate(45deg); background: var(--gold); }
  .mb7-contact-faq__a { margin: 0 0 22px; font-size: 17px; line-height: 1.55; max-width: 60ch; text-wrap: pretty; }
  .mb7-contact-faq__a p + p { margin-top: 10px; }
  .mb7-contact-faq__a a { text-decoration: underline; font-weight: 700; }
  .js .mb7-contact-faq__a:not(.is-open) { display: none; }
  @media (min-width: 900px) {
    .mb7-contact__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 56px; }
  }
  @media (max-width: 759px) {
    .mb7-contact__note { transform: none; }
    .mb7-contact__dear { font-size: 38px; }
  }

.mb7-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mb7-contact .mb7-contact__title{font-size:clamp(52px,6.6vw,92px)}

.mb7-contact__topic input{-webkit-appearance:none;appearance:none}

/* postcode box: a lighter, calmer placeholder, and the typed text matches the buttons */
.mb7-pc__input{font-size:20px;font-weight:700;letter-spacing:.05em}
.mb7-pc__input::placeholder{font-size:19px;font-weight:500;letter-spacing:0;color:rgba(20,35,90,.62)}
.mb7-pc--dark .mb7-pc__input::placeholder{color:rgba(251,247,236,.72)}
@media (max-width:759px){.mb7-pc__input{font-size:18px}.mb7-pc__input::placeholder{font-size:17px}}
