/* ═══════════════════════════════════════════════════════════════════════
   PNC — WARM WHITE PALETTE MASTERPASS (site-wide, loaded last)
   One family of light grounds, ramping warmer toward each page's foot:

     paper        #FDFBF7   the perfect white
     cream        #F8F4EC   creamy white
     beige        #F3ECDE   white beige
     parchment    #EDE3CF   deep beige
     blessing     #E9DCC4   pre-footer ground
     footer sand  #E2D2B3   the page's warm foot

     ink          #2A1810   headlines
     cocoa        #5C3D2E   body
     cocoa-soft   rgba(92,61,46,.72)
     lt-brown     #B99B72   quiet accents / rules
     gold         #B8860B   the single jewel tone
═══════════════════════════════════════════════════════════════════════ */

:root{
  --pp-paper:#FAF5EA; --pp-cream:#F8F4EC; --pp-beige:#F3ECDE;
  --pp-parch:#EDE3CF; --pp-bless:#E9DCC4; --pp-foot:#E2D2B3;
  --pp-ink:#2A1810; --pp-cocoa:#5C3D2E; --pp-lt:#B99B72; --pp-gold:#B8860B;
}
html,body{background:var(--pp-paper) !important}

/* ── grounds: shared sections on every page ───────────────────────── */
.statement-hero{background:var(--pp-paper) !important;background-image:none !important}
.pre-footer-statement{background:linear-gradient(180deg,var(--pp-parch) 0,var(--pp-bless) clamp(120px,16vh,200px)) !important}
footer{background:linear-gradient(180deg,var(--pp-bless) 0,var(--pp-foot) clamp(120px,16vh,200px)) !important}

/* kill former dark-section decorative overlays */
.statement-hero::before,.statement-hero::after,
.philosophy::before,.philosophy::after,
.principles-section::before,.principles-section::after,
.brew-manifesto::before,.brew-manifesto::after,
.source::before,.source::after,
.order::before,.order::after,
.tasting::before,.tasting::after{display:none !important}

/* soft cocoa gridlines live only where the page settles — blessing + footer */
.pre-footer-statement{position:relative}
.pre-footer-statement::before{
  content:'' !important;display:block !important;position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(92,61,46,0.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(92,61,46,0.05) 1px,transparent 1px);
  background-size:72px 72px;
}
footer{position:relative}
footer::before{
  content:'' !important;display:block !important;position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(92,61,46,0.075) 1px,transparent 1px),
    linear-gradient(90deg,rgba(92,61,46,0.075) 1px,transparent 1px);
  background-size:72px 72px;
}
footer > *{position:relative;z-index:1}
.pre-footer-statement > *{position:relative;z-index:1}

/* ── statement heroes (bread + brew) ──────────────────────────────── */
.stmt-line--sm .stmt-word{color:rgba(42,24,16,0.45) !important}
.stmt-line--lg .stmt-word{background:none !important;-webkit-text-fill-color:var(--pp-ink) !important;color:var(--pp-ink) !important}
.stmt-eye-text{color:var(--pp-cocoa) !important;opacity:1 !important}
.stmt-rule{background:linear-gradient(90deg,transparent,var(--pp-lt)) !important}
.stmt-rule:last-child{background:linear-gradient(90deg,var(--pp-lt),transparent) !important}
.stmt-foot-item{color:rgba(92,61,46,0.72) !important}
.stmt-foot-sep{color:var(--pp-lt) !important}
.stmt-bg-rule{background:rgba(42,24,16,0.07) !important}
.hero-grain figcaption{color:rgba(92,61,46,0.65) !important}

/* ── blessing (all pages) ─────────────────────────────────────────── */
.pfs-eyebrow{color:rgba(92,61,46,0.55) !important}
.pfs-mybread{color:rgba(92,61,46,0.62) !important}
.pfs-main,.pfs-word{color:var(--pp-ink) !important}
.pfs-translation{color:rgba(92,61,46,0.7) !important}
.pfs-prayer{color:rgba(92,61,46,0.62) !important}

/* ── footer (all pages) ───────────────────────────────────────────── */
.ft-statement,.ft-statement-line{color:rgba(42,24,16,0.08) !important;-webkit-text-fill-color:rgba(42,24,16,0.08) !important;background:none !important}
.ft-creed{color:rgba(92,61,46,0.75) !important}
footer .footer-link,.ft-link{color:rgba(92,61,46,0.65) !important;border-color:rgba(92,61,46,0.18) !important}
footer .footer-link:hover,.ft-link:hover{color:var(--pp-ink) !important}
.footer-logo{color:rgba(42,24,16,0.65) !important}
.footer-copy{color:rgba(92,61,46,0.62) !important;border-top-color:rgba(92,61,46,0.14) !important}
.ft-coords{color:rgba(92,61,46,0.6) !important}

/* ═══ HOME ═════════════════════════════════════════════════════════ */
.philosophy{background:linear-gradient(180deg,var(--pp-paper) 0,var(--pp-beige) clamp(120px,16vh,200px)) !important}
.phil-quote{color:var(--pp-ink) !important}
.phil-accent-num{color:rgba(42,24,16,0.07) !important}
.principles-section{background:linear-gradient(180deg,var(--pp-beige) 0,var(--pp-parch) clamp(120px,16vh,200px)) !important}
.principles-eyebrow{color:rgba(92,61,46,0.55) !important}
.principles-h2{color:var(--pp-ink) !important}
.principle-item .pi-rule{color:var(--pp-ink) !important}
.principle-item .pi-num{color:rgba(92,61,46,0.5) !important}
.principle-item.open .pi-rule{color:var(--pp-ink) !important}
.principle-item.open .pi-num{color:rgba(92,61,46,0.6) !important}
.principles-coda{color:rgba(92,61,46,0.55) !important}
.principles-cta-row{border-top-color:rgba(92,61,46,0.18) !important}
.principles-cta-row a{
  color:var(--pp-cocoa) !important;border-color:rgba(92,61,46,0.4) !important;background:transparent !important;
}
.principles-cta-row a:hover{background:var(--pp-ink) !important;color:var(--pp-cream) !important;border-color:transparent !important}
.prin-accent-num{color:rgba(42,24,16,0.07) !important}

/* ═══ BREAD — retone the white pass onto the ramp ═════════════════ */
.fmts,.fmts--scrolly .fmts-inner{background:linear-gradient(180deg,var(--pp-paper) 0,var(--pp-cream) clamp(120px,16vh,200px)) !important}
.nutrition{background:var(--pp-paper) !important}
.ingredients{background:linear-gradient(180deg,var(--pp-paper) 0,var(--pp-beige) clamp(120px,16vh,200px)) !important}
.who{background:var(--pp-cream) !important;background-image:none !important}
.summary{background:var(--pp-parch) !important}
.order-section{background:linear-gradient(180deg,var(--pp-paper) 0,var(--pp-beige) clamp(120px,16vh,200px)) !important}
.ship-badge{background:linear-gradient(180deg,var(--pp-cream) 0,var(--pp-paper) 100%) !important}

/* ═══ BREW ═════════════════════════════════════════════════════════ */
.brew-manifesto{background:linear-gradient(180deg,var(--pp-paper) 0,var(--pp-cream) clamp(120px,16vh,200px)) !important}
.brm-wm{color:rgba(42,24,16,0.05) !important;-webkit-text-fill-color:rgba(42,24,16,0.05) !important;background:none !important}
.brm-eyebrow{color:rgba(92,61,46,0.55) !important}
.brm-fact-val{color:var(--pp-ink) !important}
.brm-fact--gold .brm-fact-val{color:var(--pp-gold) !important}
.brm-fact-unit{color:rgba(92,61,46,0.55) !important}
.brm-fact-label{color:rgba(92,61,46,0.7) !important}
.brm-copy{color:rgba(92,61,46,0.85) !important}
.brm-coords{color:rgba(92,61,46,0.5) !important}
.brm-rule{background:rgba(92,61,46,0.18) !important}
.tasting{background:var(--pp-paper) !important}
.tasting .h2{color:var(--pp-ink) !important}
.tasting .eyebrow{color:rgba(92,61,46,0.55) !important}
.tl-num{color:rgba(92,61,46,0.6) !important}
.tl-name{color:var(--pp-ink) !important}
.tl-type,.tl-when,.tl-meta{color:rgba(92,61,46,0.65) !important}
.tl-row{border-color:rgba(92,61,46,0.14) !important}
.source{background:linear-gradient(180deg,var(--pp-cream) 0,var(--pp-beige) clamp(120px,16vh,200px)) !important}
.source-headline{color:var(--pp-ink) !important}
.sc-label{color:rgba(92,61,46,0.55) !important}
.sc-title{color:var(--pp-ink) !important}
.sc-text{color:rgba(92,61,46,0.8) !important}
.source-divider{background:rgba(92,61,46,0.14) !important}
.ss-key{color:rgba(92,61,46,0.55) !important}
.ss-val{color:var(--pp-ink) !important}
.order{background:var(--pp-parch) !important}
.order-eyebrow{color:rgba(92,61,46,0.55) !important}
.order-h2{color:var(--pp-ink) !important}
.order-sub,.order-why{color:rgba(92,61,46,0.8) !important}
.order-method-label{color:rgba(92,61,46,0.55) !important}
.order-value{color:var(--pp-ink) !important}
.batch-headline{color:var(--pp-ink) !important}
.batch-note,.form-note{color:rgba(92,61,46,0.65) !important}
.batch-badge-label{color:rgba(92,61,46,0.7) !important}
.batch-email-row input,#batch-email{
  background:#fff !important;border:1px solid rgba(42,24,16,0.22) !important;
  color:var(--pp-ink) !important;caret-color:var(--pp-ink) !important;
  -webkit-text-fill-color:var(--pp-ink) !important;
}
.batch-email-row input::placeholder{color:rgba(92,61,46,0.6) !important}
.batch-notify-btn{background:var(--pp-ink) !important;color:var(--pp-cream) !important}
.batch-notify-btn:hover{background:var(--pp-cocoa) !important;opacity:1 !important}
.freshness-days,.freshness-core{color:var(--pp-ink) !important}
.arc-text{fill:rgba(92,61,46,0.6) !important}
.freshness-icon{color:var(--pp-cocoa) !important}
.qty-card{background:#fff !important;border-color:rgba(42,24,16,0.16) !important}
.qty-card .qty-num{color:var(--pp-ink) !important}
.qty-card .qty-tag,.qty-card .qty-price{color:rgba(92,61,46,0.7) !important}
.qty-card.selected{background:var(--pp-ink) !important;border-color:var(--pp-ink) !important}
.qty-card.selected .qty-num,.qty-card.selected .qty-tag,.qty-card.selected .qty-price{color:var(--pp-cream) !important}
.btn-light{background:var(--pp-ink) !important;color:var(--pp-cream) !important}
.btn-light:hover{background:var(--pp-cocoa) !important}
.btn-ghost-dark{color:var(--pp-cocoa) !important;border-color:rgba(92,61,46,0.4) !important}
.btn-ghost-dark:hover{background:var(--pp-ink) !important;color:var(--pp-cream) !important}

/* native cursor: never — but only where a custom cursor exists to replace it */
body:has(#cur-dot), body:has(#cur-dot) *, body:has(#cur-dot) *::before, body:has(#cur-dot) *::after{cursor:none !important}
input,textarea{caret-color:var(--pp-cocoa)}
.brm-copy--craft{margin-top:1.2em;color:rgba(92,61,46,0.7) !important}

/* ── relocated CTAs + coda divider ── */
.blessing-cta-row a{
  font-family:'Courier New',monospace;font-weight:700;font-size:13px;
  letter-spacing:0.18em;text-transform:uppercase;
  padding:14px 26px;text-decoration:none;
  color:var(--pp-cocoa) !important;border:1px solid rgba(92,61,46,0.4) !important;
  background:transparent !important;transition:background .2s,color .2s,border-color .2s;
}
.blessing-cta-row a:hover{background:var(--pp-ink) !important;color:var(--pp-cream) !important;border-color:transparent !important}

/* ── ORDER SECTION — texts the white-pass missed (were cream-on-cream) ── */
.price-main{color:var(--pp-ink) !important;-webkit-text-fill-color:var(--pp-ink) !important}
.price-unit{color:rgba(92,61,46,0.6) !important}
.price-note{color:rgba(92,61,46,0.7) !important}
.oi-sub{color:rgba(92,61,46,0.6) !important}

/* ── TEXT BOXES & QTY CARDS — warm off-white, never harsh bright white ── */
.form-row input,.form-row select,
.batch-email-row input,#batch-email{
  background:#F7F1E6 !important;
  border:1px solid rgba(92,61,46,0.22) !important;
  color:var(--pp-ink) !important;-webkit-text-fill-color:var(--pp-ink) !important;
  caret-color:var(--pp-ink) !important;
}
.form-row input::placeholder,.batch-email-row input::placeholder{color:rgba(92,61,46,0.5) !important}
.bread-qty-card,.qty-card{background:#F7F1E6 !important;border-color:rgba(92,61,46,0.18) !important}
.bread-qty-card.selected,.qty-card.selected{background:var(--pp-ink) !important;border-color:var(--pp-ink) !important}
.bqc-count,.qty-num{color:var(--pp-ink) !important}
.bqc-unit,.bqc-price,.qty-tag,.qty-price{color:rgba(92,61,46,0.7) !important}
.bread-qty-card.selected .bqc-count,.bread-qty-card.selected .bqc-unit,.bread-qty-card.selected .bqc-price,
.qty-card.selected .qty-num,.qty-card.selected .qty-tag,.qty-card.selected .qty-price{color:var(--pp-cream) !important}

/* ── BREW legibility: order/why/method/batch texts the sweep missed ── */
.order-why li{color:rgba(92,61,46,0.8) !important}
.order-why li::before{color:rgba(92,61,46,0.4) !important}
.order-method{border-color:rgba(92,61,46,0.18) !important}
.order-method-label{color:rgba(92,61,46,0.55) !important}
.order-method p{color:rgba(92,61,46,0.78) !important}
.batch-body{color:rgba(92,61,46,0.78) !important}
.batch-note{color:rgba(92,61,46,0.55) !important}
.batch-badge-label{color:rgba(92,61,46,0.7) !important}
.brm-fact-label{color:rgba(92,61,46,0.7) !important}
.tl-meta,.tl-type,.tl-when{color:rgba(92,61,46,0.65) !important}
.cert-tag{color:rgba(92,61,46,0.7) !important;border-color:rgba(92,61,46,0.22) !important}
.tasting-certs{opacity:1 !important}

/* ── BREW "The Source": left stats stay static while prose scrolls ── */
@media(min-width:761px){
  .brm-data{position:sticky;top:calc(var(--nav-h,60px) + 48px);align-self:start}
}

/* ── GLOBE ICONS — spin around the VERTICAL middle axis with real 3D depth,
   on every page (perspective baked in so it never reads as a flat flip) ── */
@keyframes pncGlobeSpinY{
  from{transform:perspective(600px) rotateY(0deg)}
  to{transform:perspective(600px) rotateY(360deg)}
}
.ship-globe{
  transform-style:preserve-3d !important;
  backface-visibility:hidden !important;
  transform-origin:center center !important;
  animation:pncGlobeSpinY 9s linear infinite !important;
}
/* orphan guard for the formats note */
.fmts-note .nb{white-space:nowrap}

/* ── retire the old floating CTAs — the gold "ready" banner replaces them ── */
#desk-banner{display:none !important}
#mobile-cta{display:none !important}

/* ═══ MOBILE SCROLL GUARANTEE ═══════════════════════════════════════════
   No script may ever leave vertical scrolling locked on a touch device.
   A stylesheet !important overrides inline style="overflow:hidden" set by
   the preloader / Lenis / gate, so the page is ALWAYS scrollable on mobile.
   (No touch-action override here — the formats rail still needs pan-x.)   */
@media (pointer:coarse){
  html{overflow-y:auto !important; height:auto !important;}
  body{overflow-y:visible !important; height:auto !important; -webkit-overflow-scrolling:touch !important;}
}

/* ── final legibility sweep: texts still cream-on-cream after audit ── */
.ing-desc{color:rgba(92,61,46,0.78) !important}
.ing-terroir{color:rgba(92,61,46,0.62) !important}
.trust-label{color:rgba(92,61,46,0.6) !important}
.trust-sub{color:rgba(92,61,46,0.5) !important}
.ing-name{color:var(--pp-ink) !important}

/* ═══ THE MARK — the buckwheat achene, now the logo icon ═════════════════ */
.pnc-mark{display:inline-block;color:var(--pp-gold)}
.pnc-mark--bless{display:block;width:clamp(34px,3vw,46px);height:auto;margin:0 auto clamp(10px,1.6vh,18px)}
.nav-logo{display:inline-flex !important;align-items:center;gap:10px}
.nav-mark{width:20px;height:20px;flex:0 0 auto}

/* ═══ CONTRAST — WCAG-AA FINAL SWEEP (all widths) ════════════════════════
   The white→paper palette flip left a few texts cream-on-cream (invisible)
   and several mono labels under the 4.5:1 floor. Solid bronze #6B4A37 ≈
   5.3:1 on paper/cream; ink for the big figures. */
.trust-val{color:var(--pp-ink) !important;-webkit-text-fill-color:var(--pp-ink) !important}
.trust-label,.trust-sub{color:#6B4A37 !important}
.order-assure,.order-batch{color:var(--pp-cocoa) !important}
.ing-coords,.ing-coords span,.ing-stat-label,.ing-bar-label,
.price-note,.oi-sub,.order-method-label,.batch-note,.form-note,
.fmts-waternote,.stmt-foot-item,.brm-coords,.nutr-note,
.tl-type,.tl-when,.tl-meta,.cert-tag,.freshness-days,
.hp-origin,.principles-coda,.pfs-prayer,.pfs-eyebrow,
.order-eyebrow,.fmts-eyebrow,.ing-header-eyebrow,.brm-eyebrow,
.principles-eyebrow,.stmt-eye-text,.batch-badge-label{color:#6B4A37 !important}
.ft-creed,.footer-copy,.ft-coords,.nav-drawer-sub,
footer .footer-link,.ft-link{color:#6B4A37 !important}
/* second pass — muted cocoa labels on LIGHT grounds the first sweep missed */
.pfs-translation,.hero-grain figcaption,.pi-num,.principle-item.open .pi-num,
.brm-fact-unit,.brm-fact-label,.tl-num,.tasting .eyebrow,.sc-label,.ss-key,
.price-unit,.hero-eyebrow,.hero-accent-meta,.batch-body,.order-method p,
.brm-copy--craft{color:#6B4A37 !important}
/* home product cards sit on a DARK ink+photo ground — their faint cream
   labels fail by being too dim ON DARK, so they get brighter, not darker. */
.hero-product .hp-tag{color:rgba(250,245,234,0.82) !important}
.hero-product .hp-stat-key{color:rgba(250,245,234,0.82) !important}
.hero-product .hp-origin{color:rgba(250,245,234,0.92) !important;-webkit-text-fill-color:rgba(250,245,234,0.92) !important}
/* third pass — exact axe nodes (measured fg/bg) cleared to AA */
.hero-headline span{color:#6B4A37 !important;-webkit-text-fill-color:#6B4A37 !important}
.hg-spec,.hg-spec *{color:#6B4A37 !important}
.stmt-line--sm .stmt-word{color:#7A5A45 !important;-webkit-text-fill-color:#7A5A45 !important}
.wc-icon{color:rgba(92,61,46,0.68) !important}
.wc-text{color:#6B4A37 !important}
.qty-card .qty-tag,.qty-card .qty-price,.bread-qty-card .bqc-unit,.bread-qty-card .bqc-price,.qty-tag,.qty-price{color:#5C3D2E !important}
.pli{color:#5C3D2E !important;opacity:1 !important}
.qty-card.selected .qty-tag,.qty-card.selected .qty-price,.qty-card.selected .pli,
.qty-card.selected .qty-num,
.bread-qty-card.selected .bqc-unit,.bread-qty-card.selected .bqc-price,
.bread-qty-card.selected .bqc-count{color:var(--pp-cream) !important;-webkit-text-fill-color:var(--pp-cream) !important}
