:root{--neo-primary:#65A9D1;--neo-secondary:#B77832;--neo-accent:#E6A4AF;--neo-text:#2B201C;--neo-text-secondary:#76655E;--neo-background:#111827;--neo-surface:#FFFFFF;--neo-text-light:#FFFFFF;--neo-text-muted:#76655E;--neo-bg:#111827;--neo-bg-dark:#0F172A;--bg:var(--neo-background);--background:var(--neo-background);--ink:var(--neo-text);--text:var(--neo-text);--accent:var(--neo-accent);--primary:var(--neo-primary);--secondary:var(--neo-secondary);--surface:var(--neo-surface);--muted:var(--neo-text-secondary);--line:#E2EBF2;--accent-2:var(--neo-secondary);--shadow-sm:0 4px 16px rgba(0,0,0,0.06);--shadow-md:0 12px 36px rgba(0,0,0,0.10);--shadow-lg:0 24px 60px rgba(0,0,0,0.14);--radius-card:16px;--radius-button:999px;--radius-image:20px;--font-heading:'Rubik',sans-serif;--font-body:'Rubik',sans-serif;--neo-radius:18px;--neo-spacing:1rem;--neo-max-width:1200px;--neo-font-family:'Rubik',sans-serif;--neo-font-heading:'Rubik',sans-serif;--neo-font-title:'Rubik',sans-serif;--neo-font-body:'Rubik',sans-serif;--fs-display:clamp(2.75rem,6.5vw,4.75rem);--fs-h1:clamp(2rem,5vw,3.5rem);--fs-h2:clamp(1.75rem,4vw,2.75rem);--fs-h3:clamp(1.4rem,3vw,2rem);--fs-h4:clamp(1.2rem,2.4vw,1.5rem);--fs-body:clamp(0.95rem,1.2vw,1.1rem);--fs-small:clamp(0.8rem,1vw,0.9rem);--neo-space-section-tight:clamp(52px,7vw,96px);--neo-space-section-normal:clamp(80px,10vw,140px);--neo-space-section-loose:clamp(110px,13vw,190px);--neo-space-section-mobile:56px;--neo-header-height:72px}
/* Etx editorContract v2 — authored source */
/* v2 sector: sec_alfa770_fullsite_1655 page: home */
@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@300;400;500;600;700;800&display=swap');

:root {
  --chocolate: #2b160f;
  --cocoa: #4c291d;
  --caramel: #a9682a;
  --gold: #c99645;
  --cream: #ffffff;
  --sand: #e7d6be;
  --sky: #73add3;
  --ink: #2b201c;
  --muted: #6e5d54;
  --white: #ffffff;
  --line: rgba(42, 23, 18, .14);
  --shadow: 0 24px 70px rgba(42, 23, 18, .13);
  --radius: 28px;
  --container: min(1180px, calc(100% - 40px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  direction: rtl;
  color: var(--ink);
  background: var(--cream);
  font-family: 'Rubik', Arial, sans-serif;
  font-size: 17px;
  line-height: 1.65;
  overflow-x: hidden;
}
body.menu-open, body.chat-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; display: block; }

.skip-link { position: fixed; inset: 8px auto auto 8px; z-index: 1000; transform: translateY(-150%); background: var(--chocolate); color: white; padding: 10px 16px; }
.skip-link:focus { transform: none; }
.container { width: var(--container); margin-inline: auto; }
.section { padding: 110px 0; position: relative; }
.section-sm { padding: 70px 0; }
.eyebrow { color: var(--caramel); font-size: .74rem; letter-spacing: .18em; font-weight: 700; text-transform: uppercase; margin: 0 0 14px; }
.eyebrow.light { color: var(--sky); }
.display, h1, h2, h3 { font-weight: 500; line-height: 1.07; margin: 0; letter-spacing: -.035em; }
h1 { font-size: clamp(3.35rem, 8vw, 7.25rem); }
h2 { font-size: clamp(2.35rem, 5vw, 4.7rem); }
h3 { font-size: clamp(1.35rem, 2.2vw, 2rem); }
.lede { font-size: clamp(1.08rem, 2vw, 1.4rem); color: var(--muted); max-width: 630px; margin: 24px 0 0; }
.prose { color: var(--muted); max-width: 700px; }
.latin { direction: ltr; font-family: 'Rubik', Arial, sans-serif; letter-spacing: .08em; }
.mini-label { color: var(--muted); font-size: .78rem; }
.kicker-line { display: flex; align-items: center; gap: 14px; }
.kicker-line::before { content: ''; width: 42px; height: 1px; background: currentColor; }

.site-header {
  position: fixed; inset: 0 0 auto; z-index: 100;
  background: rgba(255, 255, 255, .92); backdrop-filter: blur(14px);
  border-bottom: 1px solid transparent; transition: .25s ease;
}
.site-header.scrolled { border-color: var(--line); }
.header-inner { min-height: 88px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 22px; }
.brand { display: flex; align-items: center; gap: 11px; justify-self: start; }
.brand-logo { display: block; width: 104px; height: 80px; object-fit: contain; }
.footer-logo { width: 132px; height: auto; }
.brand-mark { position: relative; width: 48px; height: 48px; border: 1px solid var(--chocolate); border-radius: 50%; overflow: hidden; }
.brand-mark::before { content: ''; position: absolute; width: 20px; height: 20px; border-radius: 50%; background: var(--gold); left: 13px; top: 8px; box-shadow: 0 16px 0 -8px var(--sky); }
.brand-mark::after { content: ''; position: absolute; width: 58px; height: 20px; border-radius: 50%; border-top: 2px solid var(--chocolate); left: -6px; bottom: 1px; }
.brand-copy { line-height: .98; }
.brand-copy strong { display: block; font-family: 'Rubik', Arial, sans-serif; font-size: 1.22rem; letter-spacing: .03em; font-weight: 700; }
.brand-copy small { font-size: .57rem; letter-spacing: .23em; }
.desktop-nav { display: flex; align-items: center; gap: 30px; font-size: .91rem; }
.mobile-menu { display: none; }
.desktop-nav a { position: relative; padding: 31px 0; }
.desktop-nav a::after { content: ''; position: absolute; inset: auto 0 22px; height: 1px; background: var(--caramel); transform: scaleX(0); transition: transform .2s; }
.desktop-nav a:hover::after, .desktop-nav a.active::after { transform: scaleX(1); }
.header-actions { display: flex; justify-self: end; gap: 10px; }
.menu-toggle { display: none; border: 1px solid var(--line); background: transparent; width: 46px; height: 46px; border-radius: 50%; font-size: 1.3rem; }

.btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 12px 24px; border-radius: 999px; border: 1px solid var(--chocolate); background: transparent; color: var(--chocolate); font-weight: 600; transition: .2s ease; }
.btn:hover { transform: translateY(-2px); box-shadow: 0 9px 22px rgba(42,23,18,.12); }
.btn-primary { background: var(--chocolate); color: var(--white); }
.btn-light { background: var(--white); color: var(--chocolate); border-color: var(--white); }
.btn-ghost-light { color: var(--white); border-color: rgba(255,255,255,.42); }
.btn-text { padding-inline: 0; min-height: auto; border: 0; border-radius: 0; border-bottom: 1px solid currentColor; }
.arrow { transition: transform .2s; }
.btn:hover .arrow { transform: translateX(-4px); }
.actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }

main { padding-top: 88px; }
.hero-assembly {
  --top-y: -170px;
  --bottom-y: 170px;
  --middle-scale: .86;
  --label-opacity: 1;
  --top-rotate: -7deg;
  --bottom-rotate: 7deg;
  height: 185vh;
  min-height: 1100px;
  background: #fff;
  position: relative;
}
.hero-sticky { position: sticky; top: 88px; height: calc(100vh - 88px); min-height: 650px; display: grid; align-items: center; overflow: hidden; }
.hero-sticky::before { content: ''; position: absolute; width: 580px; height: 580px; border: 1px solid rgba(42,23,18,.08); border-radius: 50%; right: -260px; top: -270px; }
.hero-grid { width: var(--container); margin: auto; display: grid; grid-template-columns: .88fr 1.12fr; align-items: center; gap: clamp(30px, 5vw, 82px); padding: 36px 0; }
.hero-copy { position: relative; z-index: 6; }
.hero-copy h1 { font-size: clamp(4.2rem, 7.7vw, 8.2rem); font-weight: 700; line-height: .88; letter-spacing: -.07em; }
.hero-copy h1 span { color: #d0798c; display: block; }
.hero-lead { max-width: 580px; margin: 28px 0 0; font-size: clamp(1.05rem, 1.55vw, 1.32rem); color: var(--muted); }
.hero-proof { margin-top: 36px; display: flex; align-items: center; gap: 13px; color: var(--muted); font-size: .76rem; }
.hero-proof i { width: 4px; height: 4px; background: #d0798c; border-radius: 50%; }
.assembly-visual { min-height: 650px; position: relative; display: grid; place-items: center; isolation: isolate; }
.assembly-visual::before { content: ''; position: absolute; width: min(520px, 90%); aspect-ratio: 1; border-radius: 50%; background: linear-gradient(135deg, #dff3fb, #8dcfe8); z-index: -3; box-shadow: inset 0 0 0 1px rgba(42,23,18,.05); }
.assembly-visual::after { content: ''; position: absolute; width: 90px; height: 90px; border-radius: 50%; background: #f4c766; left: 4%; top: 14%; box-shadow: 0 0 0 16px rgba(244,199,102,.15); z-index: -2; }
.assembly-orbit { position: absolute; border: 1px solid rgba(42,23,18,.16); border-radius: 50%; z-index: -1; }
.orbit-one { width: 570px; height: 330px; transform: rotate(-18deg); }
.orbit-two { width: 420px; height: 600px; transform: rotate(25deg); border-color: rgba(208,121,140,.23); }
.assembly-index { position: absolute; top: 12%; right: 4%; color: var(--muted); font-size: .68rem; font-weight: 600; }
.assembly-stage { width: 520px; height: 520px; position: relative; perspective: 1200px; transform-style: preserve-3d; display: grid; place-items: center; }
.assembly-layer { position: absolute; left: 50%; top: 50%; transition: transform .08s linear, filter .08s linear; transform-style: preserve-3d; }
.cookie-layer { width: 380px; height: 150px; margin-left: -190px; margin-top: -75px; border-radius: 50%; filter: drop-shadow(0 26px 19px rgba(77,37,40,.18)); }
.cookie-texture { position: absolute; inset: 0; border-radius: 50%; overflow: hidden; background-image: var(--alfa-bg-0); background-size: 151%; background-position: 33% 36%; box-shadow: inset 0 0 34px rgba(89,28,41,.25), inset 0 -12px 18px rgba(105,40,55,.22); border: 1px solid rgba(105,40,55,.16); }
.cookie-edge { position: absolute; inset: 20px 3px -22px; border-radius: 50%; background: linear-gradient(180deg, #d77e92 0, #ae5369 60%, #874052 100%); z-index: -1; box-shadow: 0 14px 20px rgba(89,28,41,.18); }
.cookie-top { z-index: 5; transform: translate3d(0, var(--top-y), 75px) rotateX(66deg) rotateZ(var(--top-rotate)); }
.cookie-bottom { z-index: 1; transform: translate3d(0, var(--bottom-y), -35px) rotateX(66deg) rotateZ(var(--bottom-rotate)); }
.dulce-layer { width: 330px; height: 122px; margin-left: -165px; margin-top: -61px; z-index: 3; transform: translate3d(0, 0, 20px) rotateX(66deg) scale(var(--middle-scale)); filter: drop-shadow(0 18px 16px rgba(116,61,24,.25)); }
.dulce-surface { position: absolute; inset: 0; border-radius: 50%; background: radial-gradient(circle at 38% 28%, #f2bd73 0, #cc7b35 48%, #9f4f1f 100%); box-shadow: inset 0 -15px 20px rgba(116,61,24,.25), inset 0 4px 8px rgba(255,235,190,.4); }
.dulce-drip { position: absolute; width: 34px; height: 45px; left: 52px; bottom: -14px; border-radius: 8px 8px 22px 22px; background: linear-gradient(90deg, #a65320, #dc8a42 55%, #b55c27); transform: rotate(18deg); }
.layer-label { position: absolute; z-index: 10; display: flex; gap: 8px; align-items: center; color: var(--chocolate); font-size: .76rem; font-weight: 500; opacity: var(--label-opacity); transition: opacity .12s linear, transform .12s linear; }
.layer-label b { color: #bf6579; font-size: .64rem; }
.label-top { top: 22%; left: -4%; }.label-middle { top: 49%; right: -3%; }.label-bottom { bottom: 20%; left: 2%; }
.assembly-caption { position: absolute; inset: auto 5% 5%; display: flex; align-items: center; gap: 12px; color: var(--muted); font-size: .72rem; }
.scroll-line { width: 50px; height: 1px; background: var(--chocolate); position: relative; overflow: hidden; }
.scroll-line::after { content: ''; position: absolute; inset: 0; background: #d0798c; transform-origin: right; animation: scrollPulse 1.6s ease-in-out infinite; }
.assembly-caption small { font-size: inherit; }
.reference-note { position: absolute; left: 6%; bottom: 12%; font-size: .62rem; color: rgba(42,23,18,.46); }
@keyframes scrollPulse { 0% { transform: scaleX(0); } 55%,100% { transform: scaleX(1); transform-origin: left; } }
.hero-photo {
  min-height: 680px;
  height: calc(100svh - 88px);
  max-height: 980px;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: var(--sand) var(--alfa-bg-1) center center / cover no-repeat;
}
.hero-photo-shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(43,22,15,.03) 0%, rgba(43,22,15,.10) 34%, rgba(43,22,15,.73) 68%, rgba(43,22,15,.92) 100%),
    linear-gradient(0deg, rgba(43,22,15,.24), transparent 42%);
}
.hero-brand-motion { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
.hero-brand-motion svg { position: absolute; display: block; will-change: transform, opacity; }
.hero-sun-wrap { position: absolute; left: 46%; top: 20%; width: clamp(140px, 15vw, 235px); aspect-ratio: 1; transform: translate(-50%, -50%); }
.hero-sun-glow { position: absolute; inset: 0; border-radius: 50%; opacity: .56; background: radial-gradient(circle, rgba(255,250,240,.52) 0 23%, rgba(201,150,69,.28) 24% 31%, rgba(201,150,69,.07) 50%, transparent 69%); filter: drop-shadow(0 0 16px rgba(201,150,69,.24)); animation: heroSunEnter 1.15s cubic-bezier(.18,.86,.32,1.18) both, heroSunPulse 5.8s 1.15s ease-in-out infinite; will-change: transform, opacity; }
.hero-wave-ribbon { left: 40%; top: 18%; width: 51%; height: 25%; fill: none; stroke: var(--sky); stroke-width: 7; stroke-linecap: round; opacity: .38; filter: drop-shadow(0 3px 9px rgba(43,22,15,.09)); animation: heroWaveFlow 7.5s ease-in-out infinite alternate; }
.hero-wave-ribbon path:last-child { opacity: .72; stroke-width: 5; }
.hero-bird-flight { right: -9%; top: 10%; width: clamp(54px, 5vw, 82px); fill: var(--caramel); opacity: 0; filter: drop-shadow(0 5px 9px rgba(43,22,15,.2)); animation: heroBirdCross 5.4s 1s cubic-bezier(.22,.61,.36,1) 1 both; }
.hero-olive { width: clamp(130px, 16vw, 245px); overflow: visible; fill: #526348; stroke: #526348; filter: drop-shadow(0 5px 9px rgba(43,22,15,.12)); transform-origin: 8px 144px; opacity: .38; }
.hero-olive .olive-stem { fill: none; stroke-width: 5; stroke-linecap: round; }
.hero-olive-top { left: -2.5%; top: -3%; animation: heroOliveSway 5.6s ease-in-out infinite alternate; }
.hero-olive-bottom { left: -4%; bottom: 2%; transform: rotate(-14deg); animation: heroOliveSwayLower 6.4s .5s ease-in-out infinite alternate; opacity: .32; }
.hero-photo-inner { height: 100%; display: flex; align-items: center; position: relative; z-index: 2; }
.hero-photo-copy { width: min(650px, 52%); color: white; padding-block: 50px; }
.hero-photo-eyebrow { margin: 0 0 20px; color: #f2d497; font-size: .73rem; font-weight: 600; letter-spacing: .16em; }
.hero-photo h1 { font-size: clamp(4.1rem, 7.1vw, 7.6rem); font-weight: 700; line-height: .91; letter-spacing: -.065em; }
.hero-photo h1 span { display: block; color: #f2d497; }
.hero-photo-copy > p:not(.hero-photo-eyebrow) { max-width: 590px; margin: 28px 0 0; color: rgba(255,255,255,.82); font-size: clamp(1rem, 1.45vw, 1.25rem); }
.hero-photo-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.btn-order { background: var(--gold); border-color: var(--gold); color: #241209; padding-inline: 29px; box-shadow: 0 16px 42px rgba(201,150,69,.28); }
.btn-order:hover { background: #e2b667; border-color: #e2b667; }
.btn-order span { font-size: 1.1rem; }
.btn-hero-secondary { color: white; border-color: rgba(255,255,255,.55); background: rgba(255,255,255,.06); backdrop-filter: blur(8px); }
.hero-order-note { margin-top: 24px; display: flex; align-items: center; gap: 9px; color: rgba(255,255,255,.65); font-size: .75rem; }
.live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--sky); box-shadow: 0 0 0 6px rgba(115,173,211,.14); }
.hero-scroll { position: absolute; z-index: 2; left: clamp(24px, 5vw, 80px); bottom: 34px; color: rgba(255,255,255,.76); display: flex; align-items: center; gap: 12px; font-size: .75rem; writing-mode: vertical-rl; }
.hero-scroll span { width: 1px; height: 46px; background: rgba(255,255,255,.62); }
@keyframes heroSunEnter {
  0% { transform: scale(.35); opacity: 0; }
  70% { transform: scale(1.06); opacity: .78; }
  100% { transform: scale(1); opacity: .72; }
}
@keyframes heroSunPulse {
  0%, 100% { transform: scale(1); opacity: .64; }
  50% { transform: scale(1.08); opacity: .88; }
}
@keyframes heroWaveFlow {
  0% { transform: translate3d(-10px, 2px, 0) rotate(-.35deg) scaleY(.96); }
  50% { transform: translate3d(5px, -5px, 0) rotate(.35deg) scaleY(1.04); }
  100% { transform: translate3d(17px, 1px, 0) rotate(-.15deg) scaleY(.98); }
}
@keyframes heroBirdCross {
  0% { transform: translate3d(0, 18px, 0) rotate(7deg) scale(.82); opacity: 0; }
  12% { opacity: .9; }
  58% { transform: translate3d(-43vw, -12px, 0) rotate(-3deg) scale(1); opacity: .9; }
  88% { opacity: .82; }
  100% { transform: translate3d(-78vw, 9px, 0) rotate(4deg) scale(.9); opacity: 0; }
}
@keyframes heroOliveSway {
  0% { transform: rotate(-3deg) translate3d(0,0,0); }
  100% { transform: rotate(2.5deg) translate3d(4px,2px,0); }
}
@keyframes heroOliveSwayLower {
  0% { transform: rotate(-17deg) translate3d(0,0,0); }
  100% { transform: rotate(-11deg) translate3d(5px,-2px,0); }
}

/* Layered hero: the base photograph contains no animated brand symbols. */
.hero-world { min-height: 680px; height: calc(100svh - 88px); max-height: 980px; position: relative; overflow: hidden; isolation: isolate; background: var(--sand); }
.hero-world-scene { position: absolute; inset: 0; z-index: 0; overflow: hidden; }
.hero-world-base { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero-world-motion { position: absolute; inset: 0; z-index: 1; pointer-events: none; overflow: hidden; }
.hero-world-motion svg, .hero-world-motion .world-sun { position: absolute; display: block; will-change: transform, opacity; }
.hero-world-shade { position: absolute; inset: 0; z-index: 2; background: linear-gradient(90deg, rgba(43,22,15,.01) 0%, rgba(43,22,15,.10) 39%, rgba(43,22,15,.72) 69%, rgba(43,22,15,.94) 100%), linear-gradient(0deg, rgba(43,22,15,.2), transparent 44%); }
.hero-world-inner { height: 100%; display: flex; align-items: center; position: relative; z-index: 3; }
.hero-world h1 { font-size: clamp(4.1rem, 7.1vw, 7.6rem); font-weight: 700; line-height: .91; letter-spacing: -.065em; }
.hero-world h1 span { display: block; color: #f2d497; }

.world-sun { left: 42%; top: 8%; width: clamp(155px, 17vw, 255px); aspect-ratio: 1; border-radius: 50%; background: repeating-conic-gradient(from -1deg, rgba(201,150,69,.92) 0deg 1.8deg, transparent 1.8deg 15deg); filter: drop-shadow(0 0 24px rgba(201,150,69,.3)); transform-origin: center; animation: worldSunArrive 1.05s .18s cubic-bezier(.2,.8,.2,1.1) both; }
.world-sun-shape { position: absolute; inset: 28%; border-radius: 50%; background: linear-gradient(145deg, #f6d890, var(--gold)); border: 1px solid rgba(43,22,15,.28); box-shadow: 0 0 0 7px rgba(255,250,240,.16); transform-origin: center; animation: worldSunBreathe 6.5s 1.25s ease-in-out infinite; }
.world-waves { left: 39%; top: 22%; width: 52%; height: 23%; overflow: visible; fill: none; stroke: var(--sky); stroke-width: 13; stroke-linecap: round; opacity: .82; filter: drop-shadow(0 4px 12px rgba(43,22,15,.12)); animation: worldWavesFloat 8s ease-in-out infinite alternate; }
.world-waves path:last-child { stroke-width: 9; opacity: .86; }
.world-bird { right: -9%; top: 12%; width: clamp(54px, 5vw, 78px); fill: var(--caramel); opacity: 0; filter: drop-shadow(0 5px 8px rgba(43,22,15,.2)); animation: worldBirdCross 5.6s 1.15s cubic-bezier(.2,.64,.3,1) 1 both; }
.world-olive { width: clamp(145px, 18vw, 275px); overflow: visible; fill: #526348; stroke: #526348; opacity: .74; filter: drop-shadow(0 7px 11px rgba(43,22,15,.13)); transform-origin: 8px 144px; }
.world-olive-stem { fill: none; stroke-width: 5; stroke-linecap: round; }
.world-olive-top { left: -3%; top: -2%; animation: worldOliveTop 6.2s ease-in-out infinite alternate; }
.world-olive-bottom { left: -4%; bottom: -2%; animation: worldOliveBottom 7s .55s ease-in-out infinite alternate; }

@keyframes worldSunArrive {
  0% { transform: scale(.35); opacity: 0; }
  72% { transform: scale(1.06); opacity: 1; }
  100% { transform: scale(1); opacity: 1; }
}
@keyframes worldSunBreathe {
  0%, 100% { transform: scale(1); opacity: .9; }
  50% { transform: scale(1.035); opacity: 1; }
}
@keyframes worldWavesFloat {
  0% { transform: translate3d(-10px,3px,0) rotate(-.3deg) scaleY(.97); }
  50% { transform: translate3d(3px,-5px,0) rotate(.25deg) scaleY(1.035); }
  100% { transform: translate3d(15px,2px,0) rotate(-.12deg) scaleY(.985); }
}
@keyframes worldBirdCross {
  0% { transform: translate3d(0,18px,0) rotate(6deg) scale(.82); opacity: 0; }
  12% { opacity: .92; }
  58% { transform: translate3d(-43vw,-10px,0) rotate(-3deg) scale(1); opacity: .92; }
  88% { opacity: .84; }
  100% { transform: translate3d(-78vw,8px,0) rotate(3deg) scale(.9); opacity: 0; }
}
@keyframes worldOliveTop {
  0% { transform: rotate(-2.5deg) translate3d(0,0,0); }
  100% { transform: rotate(2deg) translate3d(4px,2px,0); }
}
@keyframes worldOliveBottom {
  0% { transform: rotate(-15deg) translate3d(0,0,0); }
  100% { transform: rotate(-10deg) translate3d(5px,-2px,0); }
}

.bakery-hero {
  min-height: 680px;
  height: calc(100svh - 88px);
  max-height: 920px;
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: #75b9de;
}
.bakery-hero-image { position: absolute; inset: 0; z-index: -3; width: 100%; height: 100%; object-fit: cover; object-position: center; animation: bakeryHeroImageIn 1.1s cubic-bezier(.2,.8,.2,1) both; }
.bakery-hero-wash { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(117,185,222,0) 0%, rgba(117,185,222,.05) 41%, rgba(117,185,222,.78) 70%, rgba(117,185,222,.97) 100%); }
.bakery-hero::after { content: ''; position: absolute; inset: 22px; z-index: 2; border: 1px solid rgba(255,255,255,.5); pointer-events: none; }
.bakery-hero-inner { height: 100%; display: grid; align-items: center; position: relative; z-index: 1; }
.bakery-hero-copy { width: min(580px, 47%); justify-self: start; padding: 54px 0; color: var(--chocolate); }
.bakery-hero-kicker { margin: 0 0 20px; font-size: .7rem; font-weight: 700; letter-spacing: .18em; }
.bakery-hero h1 { max-width: 660px; color: var(--chocolate); font-size: clamp(4.5rem, 7.4vw, 8.25rem); font-weight: 700; line-height: .86; letter-spacing: -.07em; }
.bakery-hero h1 span { color: var(--white); text-shadow: 0 2px 18px rgba(43,22,15,.08); }
.bakery-hero-lede { max-width: 520px; margin: 28px 0 0; color: rgba(43,22,15,.78); font-size: clamp(1rem, 1.35vw, 1.22rem); line-height: 1.65; }
.bakery-hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 32px; }
.bakery-order { background: var(--chocolate); color: var(--white); border-color: var(--chocolate); min-width: 176px; }
.bakery-products { background: rgba(255,255,255,.24); border-color: rgba(43,22,15,.48); backdrop-filter: blur(8px); }
.bakery-hero-note { display: flex; align-items: center; gap: 9px; margin: 18px 0 0; color: rgba(43,22,15,.7); font-size: .75rem; font-weight: 500; }
.bakery-hero-note .live-dot { width: 7px; height: 7px; border-radius: 50%; background: #23754a; box-shadow: 0 0 0 5px rgba(35,117,74,.12); }
.bakery-hero-scroll { position: absolute; z-index: 3; right: 50%; bottom: 26px; transform: translateX(50%); display: flex; align-items: center; gap: 10px; color: rgba(43,22,15,.66); font-size: .7rem; font-weight: 600; }
.bakery-hero-scroll span { width: 30px; height: 30px; border: 1px solid rgba(43,22,15,.32); border-radius: 50%; position: relative; }
.bakery-hero-scroll span::after { content: ''; position: absolute; left: 50%; top: 8px; width: 5px; height: 5px; border: solid var(--chocolate); border-width: 0 1px 1px 0; transform: translateX(-50%) rotate(45deg); }
@keyframes bakeryHeroImageIn { from { opacity: .45; transform: scale(1.025); } to { opacity: 1; transform: scale(1); } }

#flavors { scroll-margin-top: 88px; }
.trust-strip { background: var(--chocolate); color: var(--cream); overflow: hidden; }
.trust-inner { min-height: 62px; display: flex; align-items: center; justify-content: center; gap: 34px; font-size: .88rem; }
.trust-inner i { width: 4px; height: 4px; background: var(--sky); border-radius: 50%; }

.about-landmarks { min-height: 720px; position: relative; display: grid; align-items: center; overflow: clip; clip-path: inset(0); scroll-margin-top: 88px; background: var(--white); isolation: isolate; }
.about-landmarks::before { content: ''; position: absolute; inset: 0; z-index: -3; background: var(--white); }
.about-landmarks::after { content: none; }
.about-fine-art { position: absolute; inset: 0; z-index: -1; overflow: clip; clip-path: inset(0); contain: paint; pointer-events: none; }
.landmark { position: absolute; display: block; fill: none; stroke: currentColor; stroke-width: 2.1; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.landmark-primary { stroke-width: 3.4; }
.landmark-detail { stroke-width: 1.9; }
.landmark-context { stroke-width: 1.5; opacity: .56; }
.landmark-kotel { width: 62%; right: -12%; bottom: 0; color: var(--caramel); opacity: .45; transform: none; }
.landmark-obelisk { width: 38.4%; left: 11.6%; top: 0; bottom: auto; color: #408dbb; opacity: .52; transform: none; }
.about-bridge-line { position: absolute; left: 16%; right: 17%; top: 51%; height: 1px; background: repeating-linear-gradient(90deg, rgba(43,22,15,.2) 0 6px, transparent 6px 15px); transform: rotate(-2deg); opacity: .52; }
.about-landmarks-inner { max-width: 720px; padding: 100px 32px; display: flex; flex-direction: column; align-items: center; text-align: center; position: relative; z-index: 2; }
.about-landmarks-inner::before { content: ''; position: absolute; z-index: -1; inset: 55px -55px; border-radius: 50%; background: radial-gradient(ellipse, rgba(255,255,255,.99) 0%, rgba(255,255,255,.96) 54%, rgba(255,255,255,.28) 77%, transparent 100%); }
.about-kicker { margin: 0 0 20px; color: var(--caramel); font-size: .72rem; font-weight: 700; letter-spacing: .17em; }
.about-landmarks h2 { max-width: 690px; color: var(--chocolate); font-size: clamp(4rem, 7vw, 7rem); font-weight: 600; line-height: .9; letter-spacing: -.06em; }
.about-landmarks h2 span { color: #4e97c0; }
.about-intro { max-width: 650px; margin: 28px 0 0; color: rgba(43,32,28,.78); font-size: clamp(1.02rem, 1.5vw, 1.22rem); line-height: 1.75; }
.about-signature { margin: 22px 0 28px; color: var(--caramel); font-size: .68rem; font-weight: 600; letter-spacing: .15em; }

.section-head { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 58px; }
.section-head .lede { margin-bottom: 6px; }
.taste-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(40px, 7vw, 100px); align-items: center; }
.taste-tabs { display: grid; border-top: 1px solid var(--line); }
.taste-tab { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 17px 0; border: 0; border-bottom: 1px solid var(--line); background: transparent; color: var(--muted); text-align: right; }
.taste-tab span:first-child { font-size: 1.12rem; }
.taste-tab .num { font-size: .7rem; color: var(--caramel); }
.taste-tab.active { color: var(--chocolate); font-weight: 700; }
.taste-tab.active span:first-child::before { content: '←'; margin-left: 10px; color: var(--caramel); }
.taste-stage { background: var(--sand); border-radius: var(--radius); min-height: 550px; position: relative; display: grid; place-items: center; overflow: hidden; }
.taste-stage::before { content: attr(data-word); position: absolute; direction: ltr; font-family: 'Rubik', Arial, sans-serif; font-size: clamp(5rem, 15vw, 11rem); color: rgba(255,250,241,.35); bottom: -25px; left: -10px; white-space: nowrap; font-weight: 800; }
.taste-product { transform: scale(1.12); transition: .32s ease; }
.taste-stage.changing .taste-product { opacity: 0; transform: scale(.95) rotate(5deg); }
.taste-info { position: absolute; inset: auto 28px 28px; padding: 22px; border-radius: 20px; background: rgba(255,255,255,.9); backdrop-filter: blur(10px); display: flex; align-items: end; justify-content: space-between; gap: 20px; z-index: 5; }
.taste-info p { margin: 6px 0 0; color: var(--muted); font-size: .92rem; max-width: 430px; }

.story-split { display: grid; grid-template-columns: 1fr 1fr; min-height: 650px; }
.story-visual { background: var(--sky); position: relative; overflow: hidden; display: grid; place-items: center; }
.story-visual::before { content: ''; position: absolute; width: 440px; height: 440px; border-radius: 50%; border: 60px solid rgba(255,250,241,.35); }
.route-illustration { position: relative; z-index: 2; width: 75%; height: 330px; }
.route-line { position: absolute; inset: 50% 8%; border-top: 2px dashed var(--chocolate); transform: rotate(-7deg); }
.route-dot { position: absolute; top: calc(50% - 11px); width: 22px; height: 22px; border-radius: 50%; background: var(--gold); border: 5px solid var(--cream); box-shadow: 0 0 0 1px var(--chocolate); }
.route-dot.arg { left: 6%; }.route-dot.il { right: 6%; top: calc(50% - 40px); }
.route-label { position: absolute; font-family: 'Rubik', Arial, sans-serif; direction: ltr; font-size: 1.2rem; }
.route-label.arg { left: 0; top: 60%; }.route-label.il { right: 0; top: 28%; }
.route-heart { position: absolute; left: 48%; top: 36%; font-size: 3rem; color: var(--cocoa); transform: rotate(-8deg); }
.story-copy { background: var(--chocolate); color: var(--cream); padding: clamp(60px, 8vw, 120px); display: flex; flex-direction: column; justify-content: center; }
.story-copy .lede { color: rgba(255,250,241,.72); }

.recipe-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 76px; align-items: center; }
.cutaway { background: var(--cocoa); border-radius: var(--radius); min-height: 520px; position: relative; overflow: hidden; display: grid; place-items: center; }
.cutaway .half { width: 350px; height: 230px; border-radius: 180px 180px 24px 24px; background: linear-gradient(#3b1e16 0 18%, #d3a060 18% 38%, #b96b32 38% 62%, #d3a060 62% 82%, #3b1e16 82%); transform: rotate(-8deg); box-shadow: var(--shadow); }
.cutaway::after { content: 'המחשה גרפית'; position: absolute; bottom: 18px; left: 22px; color: rgba(255,255,255,.55); font-size: .72rem; }
.recipe-list { display: grid; margin-top: 42px; }
.recipe-item { display: grid; grid-template-columns: 44px 1fr; gap: 18px; padding: 22px 0; border-bottom: 1px solid var(--line); }
.recipe-item b { color: var(--caramel); font-family: 'Rubik', Arial, sans-serif; direction: ltr; }
.recipe-item p { margin: 5px 0 0; color: var(--muted); font-size: .92rem; }

.product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.product-card { background: rgba(255,255,255,.72); border: 1px solid var(--line); border-radius: 22px; overflow: hidden; transition: .25s ease; min-width: 0; }
.product-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
.product-image { height: 270px; position: relative; display: grid; place-items: center; overflow: hidden; background: var(--sand); }
.product-image.sky { background: #cce6ef; }.product-image.caramel { background: #d9aa7f; }.product-image.cream { background: #eee0c8; }.product-image.cocoa { background: #5d3729; }
.product-disc { width: 145px; height: 62px; background: radial-gradient(circle at 44% 18%, #754938, #28120d 68%); border-radius: 50%; box-shadow: 0 24px 22px rgba(42,23,18,.28); transform: rotate(-8deg); position: relative; }
.product-disc::after { content: ''; position: absolute; inset: 27px 1px auto; height: 9px; background: #bd7541; }
.product-disc.white { background: radial-gradient(circle at 44% 18%, #fff8eb, #d8c0a2 76%); }
.product-disc.nut { background: radial-gradient(circle at 20% 20%, #be8d58 0 5%, transparent 6%), radial-gradient(circle at 65% 35%, #a97845 0 4%, transparent 5%), radial-gradient(circle at 44% 18%, #8c5c38, #4c2a19 70%); }
.product-jar { width: 115px; height: 145px; border-radius: 16px 16px 28px 28px; background: linear-gradient(90deg, #b46b33, #e0a35e 45%, #a85f2d); border: 7px solid rgba(255,255,255,.25); box-shadow: 0 22px 30px rgba(42,23,18,.2); position: relative; }
.product-jar::before { content: ''; position: absolute; width: 125px; height: 25px; left: -12px; top: -16px; border-radius: 7px; background: var(--chocolate); }
.product-jar::after { content: 'ALFA 770'; position: absolute; inset: 45px 8px auto; padding: 10px 2px; text-align: center; background: var(--cream); font-family: 'Rubik', Arial, sans-serif; font-size: .68rem; font-weight: 700; }
.product-body { padding: 22px; }
.product-meta { color: var(--caramel); font-size: .72rem; letter-spacing: .08em; }
.product-body h3 { font-size: 1.35rem; margin-top: 7px; }
.product-body p { color: var(--muted); font-size: .88rem; margin: 10px 0 18px; min-height: 46px; }
.card-link { font-weight: 700; font-size: .88rem; border-bottom: 1px solid var(--chocolate); }

.wide-feature { display: grid; grid-template-columns: 1fr 1fr; border-radius: var(--radius); overflow: hidden; background: var(--sky); }
.wide-feature-copy { padding: clamp(45px, 7vw, 95px); }
.wide-feature-art { min-height: 520px; position: relative; display: grid; place-items: center; background: #c6dfda; }
.pour { position: absolute; top: 0; width: 22px; height: 48%; background: linear-gradient(90deg, #9e5529, #db8b48, #9e5529); border-radius: 0 0 14px 14px; }
.dessert-plate { width: 270px; height: 55px; background: var(--white); border-radius: 50%; box-shadow: 0 30px 40px rgba(42,23,18,.18); position: absolute; bottom: 110px; }
.dessert-plate::before { content: ''; position: absolute; width: 170px; height: 90px; border-radius: 50%; background: linear-gradient(#493027, #21100c); left: 50px; bottom: 22px; }

.business-cta { background: var(--chocolate); color: var(--cream); padding: 90px 0; overflow: hidden; position: relative; }
.business-cta::before { content: '770'; position: absolute; direction: ltr; left: -30px; top: -100px; font-family: 'Rubik', Arial, sans-serif; font-size: 24rem; font-weight: 800; color: rgba(255,255,255,.035); }
.business-cta-inner { display: flex; justify-content: space-between; align-items: center; gap: 50px; position: relative; }
.business-cta p { color: rgba(255,250,241,.68); max-width: 650px; }
.faq-list { border-top: 1px solid var(--line); }
.faq-item { border-bottom: 1px solid var(--line); }
.faq-question { width: 100%; border: 0; background: transparent; padding: 25px 0; display: flex; justify-content: space-between; text-align: right; color: var(--ink); font-weight: 600; }
.faq-question span:last-child { font-size: 1.4rem; font-weight: 300; transition: transform .2s; }
.faq-answer { display: none; max-width: 760px; color: var(--muted); padding: 0 0 25px; margin: 0; }
.faq-item.open .faq-answer { display: block; }
.faq-item.open .faq-question span:last-child { transform: rotate(45deg); }

/* Home — unified fine-line visual language */
body[data-page="home"] .graphic-section {
  position: relative;
  overflow: clip;
  isolation: isolate;
  background: var(--cream);
}
body[data-page="home"] .graphic-section::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  background: var(--alfa-bg-2) center / cover no-repeat;
  opacity: var(--motif-opacity, .2);
  transform: var(--motif-transform, none);
}
body[data-page="home"] .graphic-section::after {
  content: '';
  position: absolute;
  inset: 7% 22%;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(ellipse, rgba(255,255,255,.99) 0 56%, rgba(255,255,255,.74) 72%, transparent 100%);
}
body[data-page="home"] .graphic-section > .container { position: relative; z-index: 1; }
body[data-page="home"] main,
body[data-page="home"] .about-landmarks,
body[data-page="home"] .about-landmarks::before { background: var(--cream); }
body[data-page="home"] .about-landmarks-inner::before {
  background: radial-gradient(ellipse, rgba(255,255,255,.99) 0%, rgba(255,255,255,.96) 54%, rgba(255,255,255,.28) 77%, transparent 100%);
}
body[data-page="home"] .graphic-section h2,
body[data-page="home"] .graphic-story h2,
body[data-page="home"] .graphic-business h2 {
  color: var(--chocolate);
  font-size: clamp(3.3rem, 5.6vw, 6.35rem);
  font-weight: 600;
  line-height: .93;
  letter-spacing: -.06em;
}
body[data-page="home"] .graphic-section .eyebrow,
body[data-page="home"] .graphic-story .eyebrow,
body[data-page="home"] .graphic-business .eyebrow { color: var(--caramel); }

.flavors-section {
  --motif-opacity: .14;
  --motif-transform: scaleX(-1);
  padding-bottom: 76px;
}
.flavors-section .collection-head { margin-bottom: 48px; }
.flavors-section .collection-head > div { max-width: 800px; }
.flavors-section .collection-head .lede { max-width: 690px; margin-top: 20px; }
.product-marquee {
  position: relative;
  z-index: 2;
  width: 100%;
  overflow: hidden;
  border-block: 1px solid rgba(179,122,63,.24);
  background: rgba(255,255,255,.76);
  direction: ltr;
  isolation: isolate;
}
.product-marquee::before,
.product-marquee::after {
  content: '';
  position: absolute;
  z-index: 4;
  top: 0;
  bottom: 0;
  width: clamp(28px, 7vw, 120px);
  pointer-events: none;
}
.product-marquee::before { left: 0; background: linear-gradient(90deg, var(--white), rgba(255,255,255,0)); }
.product-marquee::after { right: 0; background: linear-gradient(-90deg, var(--white), rgba(255,255,255,0)); }
.product-marquee-track {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  direction: ltr;
  width: max-content;
  gap: 18px;
  padding: 28px 0;
  will-change: transform;
  animation: productLineFlow 58s linear infinite;
}
.product-marquee:not(.is-ready) .product-marquee-track,
.product-marquee:hover .product-marquee-track,
.product-marquee:focus-within .product-marquee-track,
.product-marquee.is-paused .product-marquee-track { animation-play-state: paused; }
.product-marquee-group { display: flex; flex: none; gap: 18px; }
.line-product {
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 0 0 280px;
  min-height: 472px;
  padding: 12px 12px 14px;
  overflow: hidden;
  direction: rtl;
  color: var(--chocolate);
  background: #fff;
  border: 1px solid rgba(43,22,15,.12);
  border-radius: 24px;
  box-shadow: 0 8px 28px rgba(43,22,15,.06);
  cursor: pointer;
  transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
}
.line-product:hover,
.line-product:focus-visible {
  z-index: 2;
  transform: translateY(-6px);
  border-color: rgba(78,151,192,.58);
  box-shadow: 0 22px 52px rgba(43,22,15,.14);
  outline: none;
}
.line-product:focus-visible { box-shadow: 0 0 0 3px rgba(78,151,192,.28), 0 18px 42px rgba(43,22,15,.12); }
.line-product-media {
  display: grid;
  place-items: center;
  width: 100%;
  height: 285px;
  margin: 0 auto;
  overflow: hidden;
  background: #fff;
  border-radius: 17px;
  transition: transform .32s ease;
}
.line-product-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.line-product:hover .line-product-media,
.line-product:focus-visible .line-product-media { transform: scale(1.035); }
.line-product-copy { display: grid; gap: 4px; padding: 14px 8px 12px; border-top: 1px solid rgba(43,22,15,.1); }
.line-product-copy small { color: var(--caramel); font-size: .67rem; font-weight: 700; letter-spacing: .08em; }
.line-product-copy strong { font-size: 1.12rem; line-height: 1.3; }
.line-product-copy > span { color: var(--muted); font-size: .76rem; }
.line-product-cta {
  min-height: 46px;
  margin-top: auto;
  padding: 10px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-radius: 13px;
  background: var(--chocolate);
  color: #fff;
  font-size: .78rem;
  font-weight: 700;
  transition: background-color .22s ease, transform .22s ease;
}
.line-product:hover .line-product-cta,
.line-product:focus-visible .line-product-cta { background: #4e97c0; }
.line-product:active .line-product-cta { transform: scale(.98); }
.marquee-hint {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin: 18px auto 0;
  color: var(--muted);
  font-size: .7rem;
  text-align: center;
}
.marquee-hint > span { color: var(--sky); font-size: 1rem; }
.marquee-toggle {
  min-height: 34px;
  padding: 6px 12px;
  border: 1px solid rgba(43,22,15,.2);
  border-radius: 999px;
  background: rgba(255,255,255,.78);
  color: var(--chocolate);
  font: inherit;
  font-weight: 700;
}
.marquee-toggle:hover,
.marquee-toggle:focus-visible { border-color: var(--sky); outline: none; }
@keyframes productLineFlow {
  to { transform: translateX(calc(-50% - 9px)); }
}

.graphic-story {
  position: relative;
  min-height: 720px;
  overflow: clip;
  isolation: isolate;
  background: var(--cream);
}
.graphic-story::after {
  content: '';
  position: absolute;
  inset: 10% auto 10% 50%;
  width: 1px;
  z-index: 2;
  background: linear-gradient(var(--sky), var(--caramel));
  opacity: .36;
}
.graphic-story .story-visual {
  background: rgba(117,185,222,.12);
}
.graphic-story .story-visual::before {
  inset: 0;
  width: auto;
  height: auto;
  border: 0;
  border-radius: 0;
  background: var(--alfa-bg-2) center / cover no-repeat;
  opacity: .58;
  transform: scaleX(-1);
}
.graphic-story .route-illustration { width: 78%; }
.graphic-story .route-line { border-color: var(--caramel); }
.graphic-story .story-copy {
  position: relative;
  background: rgba(255,255,255,.98);
  color: var(--chocolate);
}
.graphic-story .story-copy::before {
  content: '';
  position: absolute;
  inset: 12% -10% 12% 4%;
  z-index: -1;
  background: radial-gradient(ellipse, rgba(255,255,255,1) 0 68%, transparent 100%);
}
.graphic-story .story-copy .lede { color: rgba(43,32,28,.76); }
.graphic-story .btn-light,
.graphic-business .btn-light { background: var(--chocolate); color: var(--white); border-color: var(--chocolate); }

.recipe-section { --motif-opacity: .17; --motif-transform: scaleX(-1); }
.recipe-section .recipe-grid { position: relative; }
.recipe-section .cutaway {
  min-height: 590px;
  border-radius: 0;
  background: linear-gradient(145deg, rgba(117,185,222,.22), rgba(255,255,255,.92));
  isolation: isolate;
}
.recipe-section .cutaway::before {
  content: '';
  position: absolute;
  width: 76%;
  aspect-ratio: 1;
  border: 1px solid rgba(78,151,192,.32);
  border-radius: 50%;
  z-index: -1;
  box-shadow: 0 0 0 44px rgba(179,122,63,.045);
}
.recipe-section .cutaway::after { color: rgba(43,22,15,.48); }
.recipe-section .cutaway .half { box-shadow: 0 30px 52px rgba(43,22,15,.18); }
.recipe-section .recipe-item { border-bottom-color: rgba(179,122,63,.24); }

.scroll-recipe {
  --recipe-progress: 0;
  --bottom-y: 76px;
  --dulce-y: -112px;
  --dulce-opacity: 0;
  --top-y: -244px;
  --top-opacity: 0;
  position: relative;
  min-height: 140vh;
  background: var(--cream);
}
.scroll-recipe-sticky {
  position: sticky;
  top: 88px;
  height: calc(100vh - 88px);
  min-height: 0;
  display: grid;
  align-items: center;
  overflow: hidden;
}
.scroll-recipe-grid {
  display: grid;
  grid-template-columns: .86fr 1.14fr;
  gap: clamp(42px, 7vw, 110px);
  align-items: center;
}
.scroll-recipe-copy { position: relative; z-index: 4; }
.scroll-recipe-copy h2 { font-size: clamp(3.4rem, 6.2vw, 6.8rem); line-height: .9; }
.scroll-recipe-lede { max-width: 440px; margin: 24px 0 30px; color: var(--muted); font-size: 1.02rem; }
.recipe-progress { width: min(360px, 100%); height: 2px; margin-bottom: 10px; overflow: hidden; background: rgba(43,22,15,.12); }
.recipe-progress span { display: block; width: 100%; height: 100%; transform: scaleX(var(--recipe-progress)); transform-origin: right; background: linear-gradient(90deg, var(--caramel), #4e97c0); }
.recipe-steps { width: min(440px, 100%); }
.recipe-step {
  display: grid;
  grid-template-columns: 14px 1fr;
  gap: 14px;
  align-items: start;
  padding: 14px 0;
  color: var(--muted);
  opacity: .3;
  transition: opacity .2s ease, color .2s ease, transform .2s ease;
}
.recipe-step.is-active { color: var(--chocolate); opacity: 1; transform: translateX(-5px); }
.recipe-step i { width: 9px; height: 9px; margin-top: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 5px rgba(117,185,222,.14); }
.recipe-step strong, .recipe-step span { display: block; }
.recipe-step strong { font-size: .98rem; }
.recipe-step span { margin-top: 2px; font-size: .79rem; }
.alfajor-build {
  position: relative;
  min-height: min(68vh, 670px);
  display: grid;
  place-items: center;
  border-radius: 0;
  background: transparent;
  isolation: isolate;
}
.build-sun { display: none; }
.alfajor-stage { position: relative; width: min(540px, 94%); height: 430px; perspective: 950px; transform-style: preserve-3d; }
.alfajor-layer {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(440px, 86%);
  margin-left: min(-220px, -43%);
  margin-top: min(-220px, -43%);
  will-change: transform, opacity;
  filter: drop-shadow(0 18px 16px rgba(66,31,15,.14));
}
.alfajor-layer img { display: block; width: 100%; height: auto; }
.cookie-bottom { transform: translate3d(0, var(--bottom-y), 0); }
.cookie-top { opacity: var(--top-opacity); transform: translate3d(0, var(--top-y), 18px) rotate(-2deg); }
.dulce-layer { opacity: var(--dulce-opacity); transform: translate3d(0, var(--dulce-y), 8px) scale(.94); filter: drop-shadow(0 18px 18px rgba(113,56,20,.2)); }
.alfajor-shadow { position: absolute; left: 15%; right: 15%; bottom: 36px; height: 46px; border-radius: 50%; background: rgba(55,27,14,.18); filter: blur(17px); transform: scale(calc(.72 + var(--recipe-progress) * .28)); }
.build-caption { position: absolute; bottom: 28px; display: flex; align-items: center; gap: 10px; margin: 0; color: rgba(43,22,15,.64); font-size: .67rem; font-weight: 700; }
.build-caption i { width: 24px; height: 1px; background: rgba(43,22,15,.24); }

.products-section { --motif-opacity: .13; }
.shelf-cta-section { min-height: 720px; display: grid; place-items: center; padding: 120px 0; }
.shelf-cta-container { position: relative; z-index: 2; display: grid; place-items: center; }
.shelf-cta-shell {
  position: relative;
  width: min(920px, 100%);
  padding: clamp(64px, 8vw, 112px) clamp(24px, 9vw, 120px);
  text-align: center;
  border: 1px solid rgba(179,122,63,.3);
  border-radius: 54px;
  background: rgba(255,255,255,.84);
  box-shadow: 0 32px 90px rgba(78,44,25,.1), inset 0 0 0 10px rgba(255,255,255,.24);
  backdrop-filter: blur(5px);
}
.shelf-cta-shell::before,
.shelf-cta-shell::after { content: ''; position: absolute; top: 50%; width: clamp(36px, 8vw, 110px); height: 1px; background: linear-gradient(90deg, transparent, var(--caramel)); opacity: .55; }
.shelf-cta-shell::before { right: 2%; }.shelf-cta-shell::after { left: 2%; transform: scaleX(-1); }
.shelf-cta-shell .eyebrow { margin-bottom: 22px; }
.shelf-cta-shell h2 { font-size: clamp(4.3rem, 7.5vw, 8rem) !important; }
.shelf-cta-copy { max-width: 620px; margin: 30px auto 0; color: rgba(43,32,28,.72); font-size: clamp(1rem, 1.5vw, 1.25rem); }
.shelf-cta-button { min-height: 62px; margin-top: 34px; padding-inline: 34px; font-size: 1.05rem; box-shadow: 0 18px 38px rgba(43,22,15,.18); }
.shelf-cta-note { margin: 24px 0 0; color: rgba(43,32,28,.52); font-size: .72rem; letter-spacing: .1em; }
.product-confetti { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
.mini-alfajor {
  position: absolute;
  display: block;
  width: clamp(52px, 5.2vw, 88px);
  aspect-ratio: 1;
  background: var(--alfa-bg-3) 0 0 / 300% 200% no-repeat;
  opacity: .48;
  filter: drop-shadow(0 10px 12px rgba(43,22,15,.16));
  animation: miniAlfajorFloat 5.6s ease-in-out infinite alternate;
}
.mini-natural { background-position: 0 0; }.mini-dark { background-position: 50% 0; }
.mini-white { background-position: 100% 0; }.mini-nuts { background-position: 0 100%; }
.mini-pink { background-position: 50% 100%; }.mini-cut { background-position: 100% 100%; }
.mini-a1 { top: 6%; right: 3%; transform: rotate(14deg); }.mini-a2 { top: 19%; right: 17%; transform: rotate(-11deg); animation-delay: -.7s; }
.mini-a3 { top: 4%; left: 8%; transform: rotate(-16deg); animation-delay: -1.4s; }.mini-a4 { top: 24%; left: 23%; transform: rotate(12deg); animation-delay: -2.1s; }
.mini-a5 { top: 48%; right: 5%; transform: rotate(-9deg); animation-delay: -2.8s; }.mini-a6 { top: 62%; right: 20%; transform: rotate(15deg); animation-delay: -3.5s; }
.mini-a7 { top: 45%; left: 5%; transform: rotate(10deg); animation-delay: -1.1s; }.mini-a8 { top: 66%; left: 18%; transform: rotate(-13deg); animation-delay: -1.8s; }
.mini-a9 { bottom: 5%; right: 4%; transform: rotate(18deg); animation-delay: -2.5s; }.mini-a10 { bottom: 12%; right: 34%; transform: rotate(-10deg); animation-delay: -3.2s; }
.mini-a11 { bottom: 4%; left: 7%; transform: rotate(-17deg); animation-delay: -.4s; }.mini-a12 { bottom: 15%; left: 31%; transform: rotate(12deg); animation-delay: -1.6s; }
.mini-a13 { top: 37%; right: 42%; transform: rotate(-8deg); animation-delay: -2.3s; }.mini-a14 { top: 31%; left: 42%; transform: rotate(9deg); animation-delay: -3s; }
@keyframes miniAlfajorFloat { to { translate: 0 -9px; rotate: 4deg; } }
.dulce-section { --motif-opacity: .14; --motif-transform: scaleX(-1); }
.dulce-section .wide-feature {
  position: relative;
  border-radius: 0;
  background: rgba(117,185,222,.16);
  isolation: isolate;
}
.dulce-section .wide-feature-copy { position: relative; z-index: 2; background: rgba(255,255,255,.7); }
.dulce-section .wide-feature-art {
  overflow: hidden;
  background: linear-gradient(145deg, rgba(117,185,222,.16), rgba(255,255,255,.76));
}
.dulce-section .wide-feature-art::before {
  content: '';
  position: absolute;
  width: 430px;
  height: 430px;
  border: 1px solid rgba(179,122,63,.28);
  border-radius: 50%;
  box-shadow: 0 0 0 38px rgba(78,151,192,.045);
}
.dulce-section .wide-feature-art::after {
  content: '';
  position: absolute;
  left: -10%;
  right: -10%;
  bottom: 56px;
  height: 62px;
  border-top: 2px solid rgba(78,151,192,.26);
  border-radius: 50%;
  box-shadow: 0 -22px 0 -20px rgba(179,122,63,.35), 0 22px 0 -20px rgba(78,151,192,.3);
}
.dulce-section .pour,
.dulce-section .dessert-plate { z-index: 1; }

.graphic-business {
  min-height: 430px;
  display: grid;
  align-items: center;
  padding: 110px 0;
  overflow: clip;
  isolation: isolate;
  background: var(--cream);
  color: var(--chocolate);
}
.graphic-business::before {
  content: '770';
  left: -32px;
  top: -122px;
  color: transparent;
  -webkit-text-stroke: 2px rgba(78,151,192,.2);
  font-size: 25rem;
}
.graphic-business::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--alfa-bg-2) center / cover no-repeat;
  opacity: .18;
  transform: scaleX(-1);
}
.graphic-business .business-cta-inner { z-index: 1; }
.graphic-business p { color: rgba(43,32,28,.74); }
.graphic-business .eyebrow.light { color: var(--caramel); }

.faq-section { --motif-opacity: .16; }
.faq-section .faq-list { background: rgba(255,255,255,.78); border-top-color: rgba(78,151,192,.28); }
.faq-section .faq-item { border-bottom-color: rgba(179,122,63,.25); }
.faq-section .faq-question { min-height: 72px; }
.faq-section .faq-question span:last-child { color: #4e97c0; }

/* About page */
.story-crumb {
  display: block;
  width: 220px;
  aspect-ratio: 1;
  background: var(--alfa-bg-3) 0 0 / 300% 200% no-repeat;
  filter: drop-shadow(0 20px 18px rgba(43,22,15,.16));
  pointer-events: none;
}
.crumb-natural { background-position: 0 0; }
.crumb-dark { background-position: 50% 0; }
.crumb-white { background-position: 100% 0; }
.crumb-nuts { background-position: 0 100%; }
.crumb-pink { background-position: 50% 100%; clip-path: inset(0 3% 0 0); filter: none; }
.crumb-cut { background-position: 100% 100%; }
.about-page-hero {
  --about-progress: 0;
  position: relative;
  min-height: 820px;
  background: #eef8fd;
}
.about-page-hero-sticky {
  position: relative;
  top: auto;
  height: 820px;
  min-height: 820px;
  display: grid;
  place-items: center;
  overflow: hidden;
  isolation: isolate;
}
.about-page-hero-sticky::before { content: ''; position: absolute; inset: 0; z-index: -2; background: radial-gradient(circle at 50% 68%, rgba(255,255,255,.64), rgba(238,248,253,.2) 55%, transparent 82%); }
.about-page-hero-inner { position: relative; z-index: 5; max-width: 820px; padding: 360px 20px 40px; text-align: center; }
.about-page-hero h1 { width: 100%; display: grid; justify-items: center; font-size: clamp(4rem, 7vw, 7.2rem); line-height: .88; letter-spacing: -.06em; text-align: center; }
.hero-line { display: block; width: 100%; text-align: center; }
.hero-line-bottom { white-space: nowrap; }
.about-page-hook { max-width: 680px; margin: 28px auto; color: rgba(43,32,28,.76); font-size: clamp(1.05rem, 1.8vw, 1.35rem); font-weight: 500; line-height: 1.65; }
.about-page-actions { justify-content: center; }
.about-page-signature { margin: 26px 0 0; color: var(--caramel); font-size: .6rem; font-weight: 700; letter-spacing: .18em; }
.about-trails {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: visible;
  pointer-events: none;
}
@property --trail-progress { syntax: '<number>'; inherits: true; initial-value: 0; }
.about-trail { position: absolute; width: min(25vw, 360px); height: 6vw; min-height: 64px; max-height: 92px; transform: rotate(48deg); transform-origin: left center; animation: trailLoop 8s cubic-bezier(.4,0,.2,1) infinite both; }
.about-trail i {
  position: absolute;
  inset: 0;
  overflow: hidden;
  transform: scaleX(var(--trail-progress,0));
  transform-origin: left center;
  background-image: var(--alfa-bg-4);
  background-repeat: no-repeat;
  background-size: 100% 500%;
  background-position: center var(--smear-y, 0%);
  filter: drop-shadow(0 8px 7px rgba(43,22,15,.16));
}
.about-trail i::after { content: none; }
.trail-cookie {
  position: absolute;
  z-index: 2;
  display: block;
  width: clamp(142px, 12vw, 205px);
  aspect-ratio: 441.2 / 713;
  right: -6vw;
  top: 50%;
  background: var(--alfa-bg-5) 0 0 / 500% 100% no-repeat;
  filter: drop-shadow(0 18px 15px rgba(43,22,15,.24));
  transform: translateY(-50%) translateX(calc((1 - var(--trail-progress,0)) * -25vw)) rotate(-48deg);
  opacity: clamp(0, calc(var(--trail-progress,0) * 3), 1);
}
.trail-cookie-natural { background-position: 0 0; }
.trail-cookie-pink { background-position: 25% 0; clip-path: inset(0 0 0 1%); filter: none; }
.trail-cookie-dark { background-position: 50% 0; }
.trail-cookie-white { background-position: 75% 0; clip-path: inset(0 1% 0 0); filter: none; }
.trail-cookie-nuts { background-position: 100% 0; }
.trail-caramel { left: -3%; top: -13%; --smear-y: 0%; animation-delay: -2.2s; }
.trail-pink { left: 16%; top: -18%; --smear-y: 25%; animation-delay: -2s; }
.trail-brown { left: 35%; top: -10%; --smear-y: 50%; animation-delay: -2s; }
.trail-cream { left: 54%; top: -17%; --smear-y: 75%; animation-delay: -1.6s; }
.trail-gold { left: 73%; top: -9%; --smear-y: 100%; animation-delay: -1.6s; }
@keyframes trailLoop {
  0%, 2% { --trail-progress: 0; }
  24%, 72% { --trail-progress: 1; }
  90%, 100% { --trail-progress: 0; }
}
@keyframes trailWeave { to { transform: translate3d(2.5%,1%,0); } }
.about-story-page, .about-recipe-story, .about-heart { position: relative; overflow: hidden; }
.about-story-page { padding: 150px 0 170px; background: #fff; }
.about-recipe-story { padding: 150px 0; background: rgba(117,185,222,.12); }
.about-chapter { position: relative; display: grid; grid-template-columns: 72px minmax(0,1fr) minmax(380px,.9fr); gap: clamp(36px, 6vw, 90px); align-items: center; }
.about-chapter-number { align-self: stretch; padding-top: 5px; writing-mode: vertical-rl; color: rgba(43,22,15,.42); font-size: .6rem; font-weight: 700; letter-spacing: .18em; border-left: 1px solid rgba(179,122,63,.26); }
.about-chapter-copy { position: relative; z-index: 3; }
.about-chapter-copy h2 { font-size: clamp(3.6rem, 6.7vw, 7rem); line-height: .9; margin-bottom: 28px; }
.about-chapter-copy > p { max-width: 680px; margin: 0 0 18px; color: rgba(43,32,28,.76); font-size: 1rem; line-height: 1.85; }
.about-chapter-copy .about-lead { color: var(--chocolate); font-size: 1.15rem; line-height: 1.65; }
.about-chapter-art { position: relative; min-height: 620px; display: grid; place-items: center; border-radius: 50% 50% 42% 42%; background: radial-gradient(circle, #fff 0 36%, rgba(117,185,222,.32) 37% 70%, rgba(117,185,222,.1) 71%); }
.chapter-sun { position: absolute; width: 72%; aspect-ratio: 1; border: 1px solid rgba(179,122,63,.32); border-radius: 50%; box-shadow: 0 0 0 40px rgba(179,122,63,.04); }
.chapter-product-main { position: relative; z-index: 2; width: min(400px, 88%); transform: rotate(-5deg); }
.chapter-product-small { position: absolute; z-index: 3; width: 155px; left: -18px; bottom: 35px; transform: rotate(12deg); }
.chapter-route { position: absolute; inset: auto 8% 42px; z-index: 1; display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 10px; direction: ltr; color: rgba(43,22,15,.62); font-size: .58rem; letter-spacing: .12em; }
.chapter-route i { height: 1px; background: repeating-linear-gradient(90deg,var(--caramel) 0 5px,transparent 5px 9px); }
.story-float { position: absolute; z-index: 1; opacity: .82; }
.float-one { width: 118px; right: -26px; top: 15%; transform: rotate(17deg); }.float-two { width: 150px; left: -38px; bottom: 8%; transform: rotate(-13deg); }
.float-three { width: 128px; right: -28px; bottom: 12%; transform: rotate(10deg); }.float-four { width: 160px; left: -34px; top: 8%; transform: rotate(-8deg); }
.about-chapter-recipe { grid-template-columns: minmax(380px,.9fr) minmax(0,1fr); }
.recipe-still { min-height: 650px; background: radial-gradient(circle, rgba(255,255,255,.96) 0 40%, rgba(255,255,255,.42) 41% 69%, transparent 70%); }
.recipe-main { position: relative; z-index: 2; width: min(510px, 100%); transform: rotate(3deg); }
.recipe-ring { position: absolute; border: 1px solid rgba(78,151,192,.27); border-radius: 50%; }.ring-one { width: 76%; aspect-ratio: 1; }.ring-two { width: 92%; aspect-ratio: 1; border-color: rgba(179,122,63,.18); }
.mini-word { position: absolute; bottom: 34px; color: var(--caramel); font-size: .57rem; font-weight: 700; letter-spacing: .16em; }
.about-heart { min-height: 760px; padding: 160px 0; display: grid; place-items: center; background: #fff; }
.about-heart::before { content: ''; position: absolute; width: 740px; aspect-ratio: 1; border: 1px solid rgba(78,151,192,.22); border-radius: 50%; box-shadow: 0 0 0 80px rgba(117,185,222,.035), 0 0 0 160px rgba(179,122,63,.025); }
.about-heart-inner { position: relative; z-index: 3; max-width: 950px; text-align: center; }
.about-heart h2 { font-size: clamp(4rem, 8vw, 8rem); line-height: .9; }
.about-heart h2 span { color: #5b9fc5; }
.about-heart-inner > p:not(.eyebrow) { max-width: 720px; margin: 32px auto; color: var(--muted); font-size: 1.05rem; line-height: 1.8; }
.about-heart-route { display: flex; align-items: center; justify-content: center; gap: 16px; margin: 38px auto; color: var(--caramel); font-size: .62rem; letter-spacing: .12em; direction: ltr; }
.about-heart-route i { width: 70px; height: 1px; background: currentColor; }.about-heart-route span { color: var(--chocolate); font-size: 1.35rem; }
.about-heart .actions { justify-content: center; }
.about-heart > .story-crumb { position: absolute; z-index: 2; }
.heart-crumb-one { width: 160px; right: 4%; top: 8%; transform: rotate(9deg); }.heart-crumb-two { width: 120px; left: 9%; top: 15%; transform: rotate(-11deg); }.heart-crumb-three { width: 190px; left: 2%; bottom: 1%; transform: rotate(13deg); }

.inner-hero { padding: 110px 0 80px; position: relative; overflow: hidden; }
.inner-hero::after { content: attr(data-ghost); position: absolute; direction: ltr; left: -30px; bottom: -65px; font-family: 'Rubik', Arial, sans-serif; font-size: clamp(7rem, 18vw, 15rem); font-weight: 800; color: rgba(42,23,18,.035); pointer-events: none; }
.inner-hero.compact { padding-block: 80px 55px; }
.inner-hero-grid { display: grid; grid-template-columns: 1fr .8fr; gap: 60px; align-items: end; }
.notice { display: inline-flex; align-items: center; gap: 9px; padding: 10px 15px; background: rgba(145,204,229,.28); border-radius: 999px; color: var(--cocoa); font-size: .82rem; }

.filter-bar { position: sticky; top: 88px; z-index: 30; background: rgba(245,237,221,.95); backdrop-filter: blur(12px); border-block: 1px solid var(--line); padding: 16px 0; }
.filter-inner { display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.filter-buttons { display: flex; gap: 8px; overflow: auto; scrollbar-width: none; }
.filter-btn { flex: 0 0 auto; border: 1px solid var(--line); background: transparent; padding: 9px 16px; border-radius: 999px; color: var(--muted); }
.filter-btn.active { background: var(--chocolate); color: white; }
.search-field { min-width: 250px; border: 0; border-bottom: 1px solid var(--chocolate); background: transparent; padding: 10px 4px; outline: 0; }
.catalog-grid { grid-template-columns: repeat(4, 1fr); }
.catalog-empty { display: none; text-align: center; padding: 80px 20px; }

.product-hero-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 80px; align-items: center; }
.product-gallery { min-height: 620px; border-radius: var(--radius); display: grid; place-items: center; background: var(--sky); position: relative; overflow: hidden; }
.product-gallery::before { content: ''; position: absolute; width: 460px; height: 460px; border: 1px solid rgba(42,23,18,.15); border-radius: 50%; }
.product-gallery .product-disc { transform: scale(2.25) rotate(-8deg); }
.product-gallery .product-jar { transform: scale(1.8); }
.gallery-label { position: absolute; bottom: 20px; left: 24px; color: var(--muted); font-size: .75rem; }
.details-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); border-radius: 20px; overflow: hidden; margin-top: 40px; }
.detail-box { background: var(--cream); padding: 24px; }
.detail-box strong { display: block; margin-bottom: 8px; }
.detail-box span { color: var(--muted); font-size: .88rem; }

.timeline { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin-top: 60px; }
.timeline-item { padding: 30px; border-top: 1px solid var(--chocolate); position: relative; }
.timeline-item::before { content: ''; position: absolute; width: 13px; height: 13px; border-radius: 50%; background: var(--caramel); top: -7px; right: 30px; box-shadow: 0 0 0 7px var(--cream); }
.timeline-item small { color: var(--caramel); }
.timeline-item p { color: var(--muted); font-size: .9rem; }
.quote-block { padding: clamp(60px, 10vw, 140px); background: var(--chocolate); color: var(--cream); text-align: center; }
.quote-block blockquote { max-width: 850px; margin: auto; font-size: clamp(2rem, 4vw, 4.2rem); line-height: 1.2; }

.symbol-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.symbol-card { border: 1px solid var(--line); border-radius: 24px; padding: 35px; min-height: 250px; }
.symbol-icon { width: 64px; height: 64px; border: 1px solid var(--chocolate); border-radius: 50%; margin-bottom: 40px; display: grid; place-items: center; font-size: 1.8rem; background: var(--gold); }
.symbol-card p { color: var(--muted); }

.business-paths { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.path-card { border-radius: var(--radius); padding: 50px; min-height: 340px; display: flex; flex-direction: column; justify-content: end; }
.path-card:first-child { background: var(--sky); }.path-card:last-child { background: var(--sand); }
.path-card p { color: var(--muted); max-width: 460px; }
.form-wrap { display: grid; grid-template-columns: .72fr 1.28fr; gap: 80px; align-items: start; }
.form-card { padding: clamp(26px, 5vw, 58px); border: 1px solid var(--line); border-radius: var(--radius); background: rgba(255,255,255,.72); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.field { display: grid; gap: 7px; }
.field.full { grid-column: 1 / -1; }
.field label { font-size: .84rem; font-weight: 600; }
.field input, .field select, .field textarea { width: 100%; border: 0; border-bottom: 1px solid rgba(42,23,18,.35); background: transparent; padding: 12px 2px; outline: 0; border-radius: 0; }
.field textarea { min-height: 110px; resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--caramel); }
.form-note { font-size: .77rem; color: var(--muted); margin-top: 18px; }
.form-error { display: none; color: #9c2f24; padding: 10px 14px; background: #f9dfd7; border-radius: 12px; margin-top: 16px; }

.contact-options { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 50px; }
.contact-option { border: 1px solid var(--line); border-radius: 24px; padding: 36px; transition: .2s; }
.contact-option:hover { background: var(--white); transform: translateY(-3px); }
.contact-list { display: grid; gap: 17px; margin-top: 30px; }
.contact-row { display: flex; gap: 15px; align-items: center; }
.contact-row span:first-child { width: 42px; height: 42px; border-radius: 50%; background: var(--sky); display: grid; place-items: center; }

.site-footer { min-height: 620px; padding: 68px 0; position: relative; display: grid; align-items: stretch; overflow: hidden; color: var(--chocolate); background: var(--caramel) var(--alfa-bg-6) center / cover no-repeat; isolation: isolate; }
.site-footer::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(43,22,15,.12), rgba(43,22,15,.02) 56%, rgba(43,22,15,.25)); }
.footer-frame { display: flex; justify-content: flex-end; align-items: stretch; }
.footer-panel { width: min(720px, 66%); padding: clamp(34px, 4vw, 58px); display: flex; flex-direction: column; background: rgba(117,185,222,.96); box-shadow: 0 25px 75px rgba(43,22,15,.24); backdrop-filter: blur(12px); }
.footer-brand { max-width: 500px; }
.footer-brand p { max-width: 440px; margin: 18px 0 0; color: rgba(43,22,15,.76); font-size: 1rem; }
.footer-order { margin-top: 22px; background: var(--chocolate); color: var(--white); border-color: var(--chocolate); }
.footer-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 34px; margin-top: 48px; }
.footer-title { color: var(--chocolate); font-size: .75rem; font-weight: 700; letter-spacing: .08em; margin-bottom: 14px; }
.footer-links { display: grid; gap: 9px; color: rgba(43,22,15,.76); font-size: .86rem; }
.footer-links a { width: fit-content; border-bottom: 1px solid transparent; transition: border-color .2s ease; }
.footer-links a:hover { border-color: currentColor; }
.footer-bottom { border-top: 1px solid rgba(43,22,15,.2); margin-top: auto; padding-top: 22px; display: flex; justify-content: space-between; gap: 20px; color: rgba(43,22,15,.58); font-size: .7rem; }

.chat-launcher { position: fixed; z-index: 110; left: 24px; bottom: 24px; width: 64px; height: 64px; border-radius: 50%; background: var(--sky); color: var(--chocolate); border: 1px solid var(--chocolate); box-shadow: 0 12px 35px rgba(42,23,18,.25); display: grid; place-items: center; font-size: 1.5rem; }
.chat-launcher::after { content: 'אפשר לשאול אותי'; position: absolute; left: 74px; white-space: nowrap; background: var(--chocolate); color: white; padding: 8px 12px; border-radius: 10px; font-size: .72rem; pointer-events: none; opacity: 0; transform: translateX(-7px); transition: .2s; }
.chat-launcher:hover::after { opacity: 1; transform: none; }
.chat-panel { position: fixed; z-index: 120; inset: 0 0 0 auto; width: min(430px, 100%); background: var(--cream); box-shadow: -20px 0 70px rgba(42,23,18,.22); transform: translateX(110%); transition: transform .3s ease; display: grid; grid-template-rows: auto 1fr auto; }
.chat-open .chat-panel { transform: none; }
.chat-head { background: var(--chocolate); color: var(--cream); padding: 26px; display: flex; justify-content: space-between; align-items: center; }
.chat-close { border: 1px solid rgba(255,255,255,.3); background: transparent; color: white; width: 38px; height: 38px; border-radius: 50%; }
.chat-body { overflow: auto; padding: 24px; }
.bubble { max-width: 88%; padding: 14px 16px; border-radius: 17px 17px 4px 17px; background: white; box-shadow: 0 5px 20px rgba(42,23,18,.07); margin-bottom: 12px; font-size: .9rem; }
.bubble.user { margin-right: auto; background: var(--sky); border-radius: 17px 17px 17px 4px; }
.quick-replies { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0; }
.quick-reply { border: 1px solid var(--line); border-radius: 999px; background: transparent; padding: 8px 12px; font-size: .8rem; }
.chat-foot { padding: 18px 24px; border-top: 1px solid var(--line); }
.chat-foot a { width: 100%; }

.reveal { opacity: 0; transform: translateY(25px); transition: opacity .7s ease, transform .7s ease; }
.reveal.visible { opacity: 1; transform: none; }

@media (max-width: 1020px) {
  .desktop-nav, .header-actions .btn { display: none; }
  .header-inner { grid-template-columns: 1fr auto; }
  .header-actions { grid-column: 2; grid-row: 1; }
  .menu-toggle { display: block; }
  .mobile-menu { position: fixed; inset: 88px 0 0; background: var(--cream); padding: 40px 20px; display: none; z-index: 90; }
  .menu-open .mobile-menu { display: grid; align-content: start; gap: 10px; }
  .mobile-menu a { font-size: 1.5rem; border-bottom: 1px solid var(--line); padding: 14px 0; }
  .taste-layout, .recipe-grid, .product-hero-grid, .form-wrap { grid-template-columns: 1fr; }
  .hero-grid { gap: 12px; }
  .assembly-stage { transform: scale(.84); }
  .assembly-visual { min-height: 590px; }
  .hero-photo-copy { width: 60%; }
  .product-grid, .catalog-grid { grid-template-columns: repeat(3, 1fr); }
  .footer-grid { grid-template-columns: 1.3fr 1fr 1fr; }.footer-brand { grid-column: 1 / -1; }
  .details-grid { grid-template-columns: 1fr 1fr; }
  .about-chapter { grid-template-columns: 54px 1fr; }
  .about-chapter-art { grid-column: 2; min-height: 560px; }
  .about-chapter-recipe { grid-template-columns: 1fr 1fr; }
  .about-chapter-recipe .about-chapter-art { grid-column: auto; }
}

@media (max-width: 760px) {
  :root { --container: min(100% - 28px, 680px); --radius: 22px; }
  body { font-size: 16px; }
  .section { padding: 76px 0; }
  .header-inner { min-height: 76px; }
  .brand-logo { width: 88px; height: 68px; }
  main { padding-top: 76px; }
  .mobile-menu { inset-block-start: 76px; }
  .brand-copy small { display: none; }
  .hero-assembly { height: 165svh; min-height: 1030px; }
  .hero-sticky { top: 76px; height: calc(100svh - 76px); min-height: 680px; }
  .hero-grid { height: 100%; grid-template-columns: 1fr; grid-template-rows: auto 1fr; gap: 0; padding: 22px 0 8px; align-items: center; }
  .hero-copy { padding: 0; }
  .hero-copy h1 { font-size: clamp(3.15rem, 15vw, 4.6rem); line-height: .9; }
  .hero-lead { margin-top: 14px; font-size: .96rem; line-height: 1.55; }
  .hero-copy .actions { margin-top: 18px; gap: 8px; }
  .hero-copy .btn { min-height: 44px; padding: 9px 15px; font-size: .82rem; }
  .hero-proof { display: none; }
  .assembly-visual { min-height: 365px; margin-inline: -14px; }
  .assembly-visual::before { width: 310px; }
  .assembly-visual::after { width: 58px; height: 58px; left: 5%; top: 10%; box-shadow: 0 0 0 10px rgba(244,199,102,.15); }
  .orbit-one { width: 350px; height: 190px; }.orbit-two { width: 250px; height: 350px; }
  .assembly-stage { width: 350px; height: 350px; transform: none; }
  .cookie-layer { width: 270px; height: 106px; margin-left: -135px; margin-top: -53px; }
  .cookie-edge { inset: 14px 2px -16px; }
  .dulce-layer { width: 235px; height: 88px; margin-left: -117px; margin-top: -44px; }
  .dulce-drip { width: 24px; height: 32px; left: 37px; bottom: -10px; }
  .layer-label { display: none; }
  .assembly-index { top: 6%; right: 7%; }
  .assembly-caption { inset: auto 7% 1%; }
  .reference-note { left: 7%; bottom: 9%; }
  .hero-photo { height: calc(100svh - 76px); min-height: 680px; max-height: none; background-position: 34% center; }
  .hero-photo-shade { background: linear-gradient(0deg, rgba(43,22,15,.97) 0%, rgba(43,22,15,.84) 43%, rgba(43,22,15,.18) 75%, rgba(43,22,15,.07) 100%); }
  .hero-photo-inner { align-items: end; }
  .hero-photo-copy { width: 100%; padding: 90px 0 58px; }
  .hero-sun-wrap { left: 60%; top: 21%; width: clamp(128px, 38vw, 190px); }
  .hero-wave-ribbon { left: 52%; top: 20%; width: 76%; height: 24%; stroke-width: 5; opacity: .3; }
  .hero-wave-ribbon path:last-child { stroke-width: 3.5; }
  .hero-bird-flight { top: 9%; width: 56px; }
  .hero-olive-top { left: -8%; top: 1%; width: 25%; opacity: .32; }
  .hero-olive-bottom { left: -10%; bottom: 13%; width: 24%; opacity: .25; }
  .hero-photo-eyebrow { margin-bottom: 12px; font-size: .61rem; }
  .hero-photo h1 { font-size: clamp(3rem, 14vw, 4.4rem); line-height: .91; }
  .hero-photo-copy > p:not(.hero-photo-eyebrow) { margin-top: 16px; max-width: 520px; font-size: .94rem; line-height: 1.55; }
  .hero-photo-actions { margin-top: 22px; gap: 8px; }
  .hero-photo-actions .btn { min-height: 48px; padding: 10px 17px; font-size: .84rem; }
  .btn-order { flex: 1 1 165px; }
  .btn-hero-secondary { flex: 1 1 135px; }
  .hero-order-note { margin-top: 16px; font-size: .66rem; }
  .hero-scroll { display: none; }
  .hero-world { height: calc(100svh - 76px); min-height: 700px; max-height: none; }
  .hero-world-base { object-position: 36% center; transform: scale(1.05) translateY(-12%); transform-origin: center; }
  .hero-world-shade { background: linear-gradient(0deg, rgba(43,22,15,.98) 0%, rgba(43,22,15,.88) 42%, rgba(43,22,15,.18) 73%, rgba(43,22,15,.04) 100%); }
  .hero-world-inner { align-items: end; }
  .hero-world .hero-photo-copy { width: 100%; padding: 92px 0 58px; }
  .hero-world h1 { font-size: clamp(3rem, 14vw, 4.4rem); line-height: .91; }
  .world-sun { left: 26%; top: 8%; width: clamp(135px, 36vw, 185px); }
  .world-waves { left: 30%; top: 23%; width: 83%; height: 22%; stroke-width: 9; }
  .world-waves path:last-child { stroke-width: 6; }
  .world-bird { top: 10%; width: 54px; }
  .world-olive-top { left: -12%; top: 0; width: 33%; opacity: .62; }
  .world-olive-bottom { left: -12%; bottom: 12%; width: 30%; opacity: .48; }
  #flavors { scroll-margin-top: 76px; }
  .about-landmarks { min-height: 720px; scroll-margin-top: 76px; }
  .landmark-kotel { width: 96%; right: -46%; bottom: 0; opacity: .34; }
  .landmark-obelisk { width: 78%; left: -28%; top: 18%; bottom: auto; opacity: .4; transform: none; }
  .about-bridge-line { left: 5%; right: 5%; top: 52%; opacity: .32; }
  .about-landmarks-inner { padding: 92px 16px; }
  .about-landmarks-inner::before { inset: 56px -15px; background: radial-gradient(ellipse, rgba(255,255,255,.99) 0%, rgba(255,255,255,.97) 58%, rgba(255,255,255,.42) 76%, transparent 100%); }
  .about-kicker { margin-bottom: 13px; font-size: .62rem; }
  .about-landmarks h2 { font-size: clamp(3.25rem, 15vw, 5rem); line-height: .91; }
  .about-intro { margin-top: 20px; font-size: 1rem; line-height: 1.7; }
  .about-signature { margin: 18px 0 24px; font-size: .56rem; letter-spacing: .1em; }
  .trust-inner { justify-content: flex-start; overflow-x: auto; padding: 0 14px; white-space: nowrap; scrollbar-width: none; }
  .trust-inner::-webkit-scrollbar { display: none; }
  .section-head { display: block; margin-bottom: 38px; }
  .section-head .btn { margin-top: 22px; }
  .taste-stage { min-height: 480px; }
  .taste-product { transform: scale(.84); }
  .taste-info { display: block; inset: auto 14px 14px; }
  .taste-info .btn { margin-top: 12px; min-height: 42px; }
  .story-split { grid-template-columns: 1fr; }
  .story-visual { min-height: 470px; }.story-copy { padding: 60px 24px; }
  .cutaway { min-height: 400px; }.cutaway .half { transform: scale(.72) rotate(-8deg); }
  .product-grid, .catalog-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .product-image { height: 190px; }.product-disc { transform: scale(.76); }.product-jar { transform: scale(.78); }
  .product-body { padding: 16px; }.product-body p { display: none; }.product-body h3 { font-size: 1rem; min-height: 44px; }
  .wide-feature, .business-cta-inner, .inner-hero-grid { grid-template-columns: 1fr; display: grid; }
  .wide-feature-art { min-height: 390px; }
  .business-cta-inner { text-align: center; }.business-cta-inner .btn { justify-self: center; }
  .inner-hero { padding: 75px 0 55px; }
  .about-page-hero { min-height: 740px; }
  .about-page-hero-sticky { top: auto; height: 740px; min-height: 740px; }
  .about-page-hero-inner { padding: 310px 14px 24px; }
  .about-page-hero h1 { font-size: clamp(2.7rem, 10.8vw, 4rem); line-height: .87; }
  .about-page-hook { max-width: 520px; margin: 12px auto; font-size: .83rem; line-height: 1.5; }
  .about-page-actions { display: grid; gap: 9px; width: min(330px,100%); margin-inline: auto; }
  .about-page-actions .btn { width: 100%; }
  .about-page-signature { display: none; }
  .about-trail { width: 172px; height: 58px; min-height: 58px; transform: rotate(48deg); }
  .about-trail .trail-cookie { width: 92px; right: -30px; transform: translateY(-50%) translateX(calc((1 - var(--trail-progress,0)) * -160px)) rotate(-48deg); }
  .trail-caramel { left: -12%; top: -8%; }.trail-pink { left: 10%; top: -16%; }.trail-brown { left: 32%; top: -9%; }.trail-cream { left: 54%; top: -17%; }.trail-gold { left: 76%; top: -8%; }
  .about-story-page, .about-recipe-story { padding: 90px 0; }
  .about-chapter, .about-chapter-recipe { grid-template-columns: 1fr; gap: 42px; }
  .about-chapter-number { display: none; }
  .about-chapter-copy h2 { font-size: clamp(3.15rem, 14vw, 4.5rem); }
  .about-chapter-copy > p { font-size: .95rem; line-height: 1.75; }
  .about-chapter-art, .recipe-still, .about-chapter-recipe .about-chapter-art { grid-column: auto; min-height: 390px; order: 2; }
  .chapter-product-main { width: 300px; max-width: 90%; }
  .chapter-product-small { width: 100px; left: 0; bottom: 12px; }
  .recipe-main { width: 340px; max-width: 100%; }
  .story-float { opacity: .45; }
  .float-one, .float-three { width: 80px; }.float-two, .float-four { width: 90px; }
  .about-heart { min-height: 690px; padding: 110px 0; }
  .about-heart h2 { font-size: clamp(3.4rem, 14vw, 5.1rem); }
  .about-heart-route i { width: 26px; }
  .about-heart .actions { display: grid; }
  .about-heart .actions .btn { width: 100%; }
  .heart-crumb-one, .heart-crumb-two { width: 78px; }.heart-crumb-three { width: 105px; }
  .filter-bar { top: 76px; }
  .filter-inner { display: grid; }
  .search-field { width: 100%; min-width: 0; }
  .product-gallery { min-height: 430px; order: -1; }.product-gallery .product-disc { transform: scale(1.55); }.product-gallery .product-jar { transform: scale(1.35); }
  .timeline { grid-template-columns: 1fr; }.timeline-item { border-top: 0; border-right: 1px solid var(--chocolate); }.timeline-item::before { right: -7px; top: 35px; }
  .symbol-grid, .business-paths, .contact-options { grid-template-columns: 1fr; }
  .form-grid { grid-template-columns: 1fr; }.field.full { grid-column: auto; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 35px; }.footer-brand { grid-column: 1 / -1; }
  .footer-bottom { display: block; }
  .chat-launcher { width: 56px; height: 56px; left: 14px; bottom: 14px; }
  .chat-launcher::after { display: none; }
}

/* Business page — editorial B2B flow aligned with the story page */
body[data-page="business"] { background: #fff; }
body[data-page="business"] main { background: #fff; }

.business-page-hero {
  position: relative;
  isolation: isolate;
  min-height: calc(100svh - 88px);
  padding: clamp(82px, 10vh, 132px) 0 78px;
  overflow: hidden;
  display: grid;
  align-items: center;
  background: #fff;
}
.business-hero-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(460px, 1.08fr);
  gap: clamp(28px, 5vw, 82px);
  align-items: center;
}
.business-hero-copy { position: relative; z-index: 4; }
.business-hero-copy h1 {
  max-width: 760px;
  font-size: clamp(4.5rem, 7.2vw, 7.6rem);
  font-weight: 600;
  line-height: .87;
  letter-spacing: -.065em;
}
.business-hero-copy h1 span { color: #5b9fc5; }
.business-hero-copy > p {
  max-width: 650px;
  margin: 30px 0 0;
  color: rgba(43,32,28,.76);
  font-size: clamp(1.05rem, 1.55vw, 1.28rem);
  line-height: 1.78;
}
.business-hero-actions { margin-top: 34px; }
.business-proof-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin: 42px 0 0;
  padding: 20px 0 0;
  list-style: none;
  border-top: 1px solid rgba(43,22,15,.14);
  color: rgba(43,32,28,.67);
  font-size: .79rem;
  font-weight: 500;
}
.business-proof-list li { display: flex; align-items: center; }
.business-proof-list li:not(:last-child)::after {
  content: '';
  width: 4px;
  height: 4px;
  margin: 0 15px;
  border-radius: 50%;
  background: var(--caramel);
}
.business-hero-visual {
  position: relative;
  min-height: clamp(520px, 49vw, 700px);
  display: grid;
  place-items: center;
  isolation: isolate;
}
.business-hero-product {
  position: absolute;
  z-index: 2;
  object-fit: contain;
  filter: drop-shadow(0 24px 24px rgba(43,22,15,.1));
}
.business-hero-product-main { width: min(560px, 86%); right: 5%; bottom: 1%; transform: rotate(2deg); }
.business-hero-product-side { z-index: 1; width: min(280px, 45%); left: -1%; top: 1%; transform: rotate(-8deg); }

.business-fit-section {
  position: relative;
  padding: clamp(105px, 11vw, 165px) 0;
  overflow: hidden;
  background: #fff;
}
.business-fit-heading {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .65fr);
  gap: 60px;
  align-items: end;
  margin-bottom: 86px;
}
.business-fit-heading h2 { font-size: clamp(4rem, 7vw, 7.15rem); line-height: .88; }
.business-fit-heading p {
  max-width: 510px;
  margin: 0 0 8px;
  color: var(--muted);
  font-size: 1.08rem;
  line-height: 1.8;
}
.business-offers { position: relative; z-index: 2; display: grid; gap: 0; border-top: 1px solid rgba(43,22,15,.16); }
.business-offer {
  min-height: 610px;
  padding: clamp(50px, 7vw, 96px) 0;
  display: grid;
  grid-template-columns: minmax(380px, .95fr) minmax(0, 1.05fr);
  gap: clamp(45px, 8vw, 115px);
  align-items: center;
  border-bottom: 1px solid rgba(43,22,15,.16);
}
.business-offer-visual {
  position: relative;
  min-height: 490px;
  display: grid;
  place-items: center;
  isolation: isolate;
}
.business-offer-visual img {
  width: min(500px, 94%);
  object-fit: contain;
  filter: drop-shadow(0 22px 24px rgba(43,22,15,.1));
}
.business-offer-copy h3 { max-width: 670px; font-size: clamp(2.8rem, 4.8vw, 5.25rem); line-height: .95; }
.business-offer-copy > p { max-width: 620px; margin: 28px 0; color: var(--muted); font-size: 1.02rem; line-height: 1.8; }
.business-offer-copy ul { margin: 0 0 30px; padding: 0; list-style: none; color: rgba(43,32,28,.76); }
.business-offer-copy li { position: relative; padding: 8px 25px 8px 0; border-bottom: 1px solid rgba(43,22,15,.09); }
.business-offer-copy li::before { content: ''; position: absolute; right: 0; top: 19px; width: 9px; height: 1px; background: var(--caramel); }

.business-form-section {
  position: relative;
  isolation: isolate;
  padding: clamp(110px, 12vw, 175px) 0;
  overflow: hidden;
  background: #fff;
}
.business-form-layout {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: minmax(320px, .76fr) minmax(0, 1.24fr);
  gap: clamp(52px, 8vw, 118px);
  align-items: start;
}
.business-form-intro { position: sticky; top: 132px; }
.business-form-intro h2 { font-size: clamp(3.8rem, 6.3vw, 6.6rem); line-height: .89; }
.business-form-intro > p { max-width: 560px; margin: 30px 0 0; color: var(--muted); font-size: 1.05rem; line-height: 1.8; }
.business-steps { display: grid; gap: 0; margin: 42px 0 38px; padding: 0; list-style: none; counter-reset: none; }
.business-steps li { display: grid; grid-template-columns: 46px 1fr; gap: 16px; padding: 17px 0; border-bottom: 1px solid rgba(43,22,15,.11); }
.business-steps li > span { width: 36px; height: 36px; border: 1px solid rgba(78,151,192,.48); border-radius: 50%; display: grid; place-items: center; color: #4e97c0; font-size: .78rem; font-weight: 700; }
.business-steps strong, .business-steps small { display: block; }
.business-steps strong { font-size: .95rem; }
.business-steps small { margin-top: 3px; color: var(--muted); font-size: .78rem; }
.business-contact-links { display: grid; gap: 10px; }
.business-contact-links a { display: flex; align-items: center; gap: 13px; width: fit-content; }
.business-contact-links svg { width: 38px; height: 38px; padding: 9px; border-radius: 50%; background: rgba(115,173,211,.18); fill: none; stroke: var(--cocoa); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.business-contact-links strong, .business-contact-links small { display: block; direction: ltr; text-align: right; }
.business-contact-links strong { font-size: .9rem; }
.business-contact-links small { color: var(--muted); font-size: .72rem; }
.business-form-card {
  position: relative;
  padding: clamp(28px, 4.5vw, 58px);
  border: 1px solid rgba(43,22,15,.13);
  border-radius: 32px;
  background: rgba(255,255,255,.93);
  box-shadow: 0 30px 80px rgba(43,22,15,.08);
}
body[data-page="business"] .business-form-card .form-grid { gap: 21px 18px; }
body[data-page="business"] .business-form-card .field { gap: 8px; }
body[data-page="business"] .business-form-card .field label { color: var(--cocoa); font-size: .78rem; font-weight: 600; }
body[data-page="business"] .business-form-card .field input,
body[data-page="business"] .business-form-card .field select,
body[data-page="business"] .business-form-card .field textarea {
  min-height: 54px;
  padding: 13px 15px;
  border: 1px solid rgba(43,22,15,.15);
  border-radius: 14px;
  background: #fff;
  transition: border-color .2s, box-shadow .2s;
}
body[data-page="business"] .business-form-card .field textarea { min-height: 132px; }
body[data-page="business"] .business-form-card .field input:focus,
body[data-page="business"] .business-form-card .field select:focus,
body[data-page="business"] .business-form-card .field textarea:focus { border-color: #4e97c0; box-shadow: 0 0 0 3px rgba(78,151,192,.12); }
.business-form-submit { width: 100%; margin-top: 28px; }
.business-form-card .form-note { max-width: 620px; margin: 16px auto 0; text-align: center; }

@media (max-width: 1020px) {
  .business-hero-grid { grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr); gap: 24px; }
  .business-hero-copy h1 { font-size: clamp(4.1rem, 8vw, 6.2rem); }
  .business-offer { grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr); gap: 42px; }
  .business-form-layout { grid-template-columns: minmax(290px, .72fr) minmax(0, 1.28fr); gap: 44px; }
}

@media (max-width: 760px) {
  .business-page-hero { min-height: auto; padding: 70px 0 74px; }
  .business-hero-grid { grid-template-columns: 1fr; }
  .business-hero-copy h1 { font-size: clamp(3.65rem, 16vw, 5.05rem); }
  .business-hero-copy > p { margin-top: 22px; font-size: .98rem; line-height: 1.72; }
  .business-hero-actions { display: grid; }
  .business-hero-actions .btn { width: 100%; }
  .business-proof-list { display: grid; gap: 9px; margin-top: 30px; }
  .business-proof-list li::before { content: ''; width: 5px; height: 5px; margin-left: 10px; border-radius: 50%; background: var(--caramel); }
  .business-proof-list li:not(:last-child)::after { display: none; }
  .business-hero-visual { min-height: 470px; margin-top: 12px; }
  .business-hero-product-main { width: 88%; right: 5%; bottom: 1%; }
  .business-hero-product-side { width: 43%; left: -3%; top: 2%; }
  .business-fit-section { padding: 94px 0; }
  .business-fit-heading { grid-template-columns: 1fr; gap: 24px; margin-bottom: 52px; }
  .business-fit-heading h2 { font-size: clamp(3.55rem, 15vw, 4.85rem); }
  .business-fit-heading p { font-size: .96rem; }
  .business-offer { min-height: 0; grid-template-columns: 1fr; gap: 22px; padding: 58px 0; }
  .business-offer:nth-child(2) .business-offer-copy { order: 2; }
  .business-offer:nth-child(2) .business-offer-visual { order: 1; }
  .business-offer-visual { min-height: 360px; }
  .business-offer-visual img { width: min(390px, 94%); }
  .business-offer-copy h3 { font-size: clamp(2.65rem, 11vw, 3.65rem); }
  .business-offer-copy > p { font-size: .96rem; }
  .business-form-section { padding: 96px 0; }
  .business-form-layout { grid-template-columns: 1fr; gap: 52px; }
  .business-form-intro { position: static; }
  .business-form-intro h2 { font-size: clamp(3.45rem, 14.5vw, 4.7rem); }
  .business-form-card { padding: 25px 20px; border-radius: 24px; }
  .business-contact-links strong { font-size: .78rem; }
}

@media (max-width: 760px) {
  body[data-page="home"] .graphic-section::before,
  .graphic-business::after { background-size: auto 100%; background-position: center; }
  body[data-page="home"] .graphic-section::after { inset: 5% 1%; }
  body[data-page="home"] .graphic-section h2,
  body[data-page="home"] .graphic-story h2,
  body[data-page="home"] .graphic-business h2 {
    font-size: clamp(3rem, 14vw, 4.25rem);
    line-height: .94;
  }
  .flavors-section { padding-bottom: 62px; }
  .flavors-section .collection-head { margin-bottom: 32px; }
  .flavors-section .collection-head .lede { margin-top: 16px; }
  .product-marquee-track { padding-block: 20px; animation-duration: 44s; }
  .line-product { flex-basis: 238px; min-height: 420px; padding: 10px 10px 12px; border-radius: 20px; }
  .line-product-media { width: 100%; height: 238px; }
  .marquee-hint { flex-wrap: wrap; padding-inline: 20px; }
  .graphic-story { min-height: 0; }
  .graphic-story::after { display: none; }
  .graphic-story .story-visual { min-height: 430px; }
  .graphic-story .route-illustration { width: 84%; }
  .graphic-story .story-copy { padding: 72px 24px 80px; }
  .recipe-section .cutaway { min-height: 440px; }
  .recipe-section .cutaway::before { width: 92%; }
  .scroll-recipe { min-height: 150vh; }
  .scroll-recipe { --bottom-y: 28px; }
  .scroll-recipe-sticky { top: 76px; height: calc(100svh - 76px); min-height: 0; align-items: start; padding-top: 10px; }
  .scroll-recipe-grid { grid-template-columns: 1fr; gap: 0; }
  .scroll-recipe-copy h2 { font-size: clamp(2.55rem, 11.5vw, 3.55rem); }
  .scroll-recipe-lede { margin: 7px 0 9px; font-size: .82rem; line-height: 1.45; }
  .recipe-progress { margin-bottom: 3px; }
  .recipe-step { padding: 3px 0; }
  .recipe-step span { display: none; }
  .alfajor-build { min-height: 220px; align-self: end; border-radius: 50% 50% 30% 30%; }
  .alfajor-stage { width: min(360px, 96%); height: 204px; }
  .alfajor-layer { width: 210px; margin-left: -105px; margin-top: -105px; }
  .alfajor-shadow { bottom: 8px; }
  .build-caption { bottom: 7px; font-size: .58rem; }
  .products-section .product-grid { position: relative; z-index: 1; }
  .dulce-section .wide-feature-copy { padding: 54px 24px; }
  .dulce-section .wide-feature-art::before { width: 340px; height: 340px; }
  .graphic-business { min-height: 520px; padding: 92px 0; }
  .graphic-business::before { top: -50px; left: -40px; font-size: 14rem; }
  .graphic-business .business-cta-inner { gap: 34px; }
  .faq-section .faq-question { min-height: 74px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
  .product-marquee { overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; }
  .product-marquee::before, .product-marquee::after { display: none; }
  .product-marquee-track { animation: none !important; }
  .line-product { scroll-snap-align: start; }
  .scroll-recipe { min-height: auto; }
  .scroll-recipe-sticky { position: relative; top: auto; height: auto; min-height: 0; padding: 80px 0; }
  .scroll-recipe { --recipe-progress: 1; --bottom-y: 76px; --dulce-y: 18px; --dulce-opacity: 1; --top-y: -48px; --top-opacity: 1; }
  .recipe-step { opacity: 1; color: var(--chocolate); }
  .about-page-hero { min-height: auto; }
  .about-page-hero-sticky { position: relative; top: auto; height: auto; min-height: 760px; }
  .about-trail { animation: none !important; --trail-progress: 1 !important; }
  .marquee-toggle { display: none; }
  .hero-brand-motion { display: none; }
  .hero-world-motion svg, .world-sun-shape { animation: none !important; }
  .world-bird { right: 15%; opacity: .78; transform: none; }
  .reveal { opacity: 1; transform: none; }
  .hero-assembly { --top-y: -30px !important; --bottom-y: 30px !important; --middle-scale: 1 !important; --label-opacity: 0 !important; }
}

@media (max-width: 1020px) {
  .bakery-hero-copy { width: min(560px, 55%); }
  .bakery-hero h1 { font-size: clamp(4rem, 8vw, 6.2rem); }
  .footer-panel { width: min(760px, 82%); }
}

@media (max-width: 760px) {
  .bakery-hero { height: calc(100svh - 76px); min-height: 640px; max-height: 820px; }
  .bakery-hero-image { object-position: 34% center; }
  .bakery-hero-wash { background: linear-gradient(0deg, rgba(117,185,222,1) 0%, rgba(117,185,222,.97) 38%, rgba(117,185,222,.42) 61%, rgba(117,185,222,.02) 100%); }
  .bakery-hero::after { inset: 10px; }
  .bakery-hero-inner { align-items: end; }
  .bakery-hero-copy { width: 100%; justify-self: stretch; padding: 240px 0 42px; }
  .bakery-hero-kicker { margin-bottom: 10px; font-size: .58rem; letter-spacing: .12em; }
  .bakery-hero h1 { max-width: 100%; font-size: clamp(3.15rem, 14.5vw, 4.6rem); line-height: .88; }
  .bakery-hero-lede { max-width: 480px; margin-top: 14px; font-size: .92rem; line-height: 1.5; }
  .bakery-hero-actions { margin-top: 18px; gap: 8px; }
  .bakery-hero-actions .btn { min-height: 48px; padding: 10px 16px; font-size: .82rem; }
  .bakery-order { flex: 1 1 168px; }
  .bakery-products { flex: 1 1 132px; }
  .bakery-hero-note { margin-top: 13px; font-size: .66rem; }
  .bakery-hero-scroll { display: none; }
  .site-footer { min-height: 0; padding: 34px 0; background-position: 62% center; }
  .footer-panel { width: 100%; padding: 30px 24px 24px; background: rgba(117,185,222,.95); }
  .footer-brand p { font-size: .9rem; }
  .footer-order { min-height: 48px; padding: 10px 17px; font-size: .84rem; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 28px 20px; margin-top: 36px; }
  .footer-grid > div:last-child { grid-column: 1 / -1; }
  .footer-bottom { display: grid; gap: 8px; margin-top: 34px; }
}

@media (max-width: 380px) {
  .bakery-hero-copy { padding-top: 218px; padding-bottom: 34px; }
  .bakery-hero h1 { font-size: 3.05rem; }
  .bakery-hero-lede { font-size: .86rem; }
  .bakery-hero-note { display: none; }
}

@media (max-width: 760px) and (max-height: 650px) {
  .bakery-hero { height: calc(100svh - 76px); min-height: 0; }
  .bakery-hero-image { object-position: 34% 44%; }
  .bakery-hero-wash { background: linear-gradient(0deg, rgba(117,185,222,1) 0%, rgba(117,185,222,.98) 52%, rgba(117,185,222,.22) 100%); }
  .bakery-hero-copy { padding: 122px 0 18px; }
  .bakery-hero-kicker { margin-bottom: 6px; font-size: .52rem; }
  .bakery-hero h1 { font-size: clamp(2.75rem, 11vw, 3.55rem); line-height: .86; }
  .bakery-hero-lede { margin-top: 8px; font-size: .78rem; line-height: 1.35; }
  .bakery-hero-actions { margin-top: 10px; }
  .bakery-hero-actions .btn { min-height: 42px; padding: 7px 14px; }
  .bakery-hero-note { display: none; }
}

@media (max-width: 760px) {
  .footer-frame { width: 100%; }
  .footer-panel { width: 90%; }
}

/* Story page — one continuous narrative */
body[data-page="story"] { background: #fff; }
body[data-page="story"] .about-inner-hero {
  position: relative;
  z-index: 4;
  isolation: isolate;
  min-height: calc(100svh - 88px);
  padding: clamp(124px, 15vh, 184px) 0 148px;
  display: grid;
  align-items: center;
  background: #fff;
  overflow-x: clip;
  overflow-y: visible;
}
body[data-page="story"] .about-inner-hero::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: auto 0 0;
  height: min(50vh, 460px);
  background: var(--alfa-bg-2) center bottom / cover no-repeat;
  opacity: .15;
  -webkit-mask-image: linear-gradient(to bottom, transparent 3%, #000 44%);
  mask-image: linear-gradient(to bottom, transparent 3%, #000 44%);
}
body[data-page="story"] .about-inner-hero::after { display: none; }
body[data-page="story"] .about-inner-hero .inner-hero-grid {
  width: min(900px, 100%);
  grid-template-columns: 1fr;
  gap: 30px;
  text-align: center;
}
body[data-page="story"] .about-inner-hero h1 {
  margin: 0;
  font-size: clamp(5rem, 9vw, 9rem);
  line-height: .84;
  letter-spacing: -.065em;
}
body[data-page="story"] .about-inner-hero .lede {
  max-width: 690px;
  margin: 0 auto;
  color: rgba(43,32,28,.76);
  font-size: clamp(1.05rem, 1.55vw, 1.3rem);
  line-height: 1.75;
}
.about-hero-thread {
  position: absolute;
  z-index: 3;
  left: 50%;
  bottom: 0;
  width: 2px;
  height: 108px;
  transform: translateX(-50%);
  background: linear-gradient(to bottom, transparent, rgba(115,173,211,.72));
}
.about-hero-thread::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -7px;
  width: 13px;
  height: 13px;
  border: 3px solid #fff;
  border-radius: 50%;
  background: var(--sky);
  box-shadow: 0 0 0 1px rgba(115,173,211,.34);
  transform: translateX(-50%);
}
.about-story-flow {
  --story-progress: 0;
  position: relative;
  isolation: isolate;
  background: #fff;
}
.about-story-flow::before,
.about-story-flow::after {
  content: '';
  position: absolute;
  z-index: 3;
  top: 0;
  bottom: clamp(440px, 43vw, 650px);
  left: calc(50% - 1px);
  width: 2px;
  pointer-events: none;
}
.about-story-flow::before { background: rgba(115,173,211,.2); }
.about-story-flow::after {
  background: linear-gradient(to bottom, var(--sky), #c8935a 68%, var(--caramel));
  transform: scaleY(var(--story-progress));
  transform-origin: top;
  will-change: transform;
}
body[data-page="story"] .about-story-page,
body[data-page="story"] .about-recipe-story {
  overflow: clip;
  padding: clamp(130px, 14vw, 190px) 0;
}
body[data-page="story"] .about-story-page {
  background: linear-gradient(180deg, #fff 0%, #fbfdfe 52%, #f6fbfd 100%);
}
body[data-page="story"] .about-recipe-story {
  background: linear-gradient(180deg, #f6fbfd 0%, #fff 100%);
}
body[data-page="story"] .about-chapter {
  z-index: 4;
  grid-template-columns: minmax(0, 1fr) 92px minmax(380px, 1fr);
  gap: clamp(34px, 4.5vw, 76px);
}
body[data-page="story"] .about-chapter-origin { grid-template-areas: 'copy marker art'; }
body[data-page="story"] .about-chapter-origin .about-chapter-copy { grid-area: copy; }
body[data-page="story"] .about-chapter-origin .about-chapter-number { grid-area: marker; }
body[data-page="story"] .about-chapter-origin .about-flow-marker { grid-area: marker; }
body[data-page="story"] .about-chapter-origin .about-chapter-art { grid-area: art; }
body[data-page="story"] .about-chapter-recipe {
  grid-template-columns: minmax(380px, 1fr) 92px minmax(0, 1fr);
  grid-template-areas: 'art marker copy';
}
body[data-page="story"] .about-chapter-recipe .about-chapter-art { grid-area: art; }
body[data-page="story"] .about-chapter-recipe .about-flow-marker { grid-area: marker; }
body[data-page="story"] .about-chapter-recipe .about-chapter-copy { grid-area: copy; }
body[data-page="story"] .about-chapter-number,
body[data-page="story"] .about-flow-marker {
  position: relative;
  z-index: 5;
  align-self: stretch;
  border: 0;
}
body[data-page="story"] .about-chapter-number {
  padding: 16px 0 0;
  writing-mode: vertical-rl;
  text-align: right;
  color: rgba(43,22,15,.46);
  font-size: .58rem;
  line-height: 1;
  letter-spacing: .18em;
}
body[data-page="story"] .about-chapter-number::before,
body[data-page="story"] .about-flow-marker::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 18px;
  border: 4px solid var(--sky);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 7px rgba(115,173,211,.12);
  transform: translate(-50%, -50%);
}
body[data-page="story"] .about-flow-marker::before {
  border-color: var(--caramel);
  box-shadow: 0 0 0 7px rgba(169,104,42,.1);
}
body[data-page="story"] .origin-flow-marker::before {
  border-color: var(--sky);
  box-shadow: 0 0 0 7px rgba(115,173,211,.12);
}
body[data-page="story"] .about-flow-marker span {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--caramel);
  transform: translate(-50%, -50%);
}
body[data-page="story"] .origin-flow-marker span { background: var(--sky); }
body[data-page="story"] .about-chapter-copy { padding-block: 36px; }
body[data-page="story"] .about-chapter-copy h2 {
  max-width: 720px;
  font-size: clamp(3.7rem, 6.1vw, 6.55rem);
  line-height: .91;
}
body[data-page="story"] .about-chapter-copy > p { max-width: 630px; }
body[data-page="story"] .about-chapter-art {
  min-height: clamp(560px, 48vw, 660px);
  overflow: visible;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body[data-page="story"] .about-chapter-art::before {
  content: none;
}
body[data-page="story"] .recipe-still {
  min-height: clamp(580px, 50vw, 690px);
  background: transparent;
}
body[data-page="story"] .story-section-symbol {
  position: absolute;
  z-index: 0;
  display: block;
  max-width: none;
  pointer-events: none;
  user-select: none;
}
body[data-page="story"] .story-section-floralis {
  left: -18%;
  bottom: -10%;
  width: min(820px, 56vw);
  opacity: .82;
}
body[data-page="story"] .story-section-olive {
  right: -20%;
  top: 2%;
  width: min(860px, 58vw);
  opacity: .76;
}
body[data-page="story"] .chapter-product-main,
body[data-page="story"] .chapter-product-small,
body[data-page="story"] .recipe-main { z-index: 2; }
body[data-page="story"] .story-float { opacity: .5; }
body[data-page="story"] .about-heart {
  min-height: 840px;
  padding: 190px 0 150px;
  overflow-x: clip;
  overflow-y: visible;
  background:
    radial-gradient(circle 450px at 50% 50%, transparent 0 448px, rgba(117,185,222,.07) 449px 450px, transparent 451px),
    radial-gradient(circle 530px at 50% 50%, transparent 0 528px, rgba(179,122,63,.05) 529px 530px, transparent 531px),
    #fff;
}
body[data-page="story"] .about-heart::before {
  content: none;
}
.about-flow-finale {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 50%;
  width: 24px;
  height: 24px;
  border: 5px solid var(--caramel);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 9px rgba(169,104,42,.09);
  transform: translate(-50%, -50%);
}
body[data-page="story"] .about-heart-inner {
  max-width: 1020px;
  padding: 42px 30px;
}
body[data-page="story"] .about-heart-route {
  position: relative;
  z-index: 4;
  width: fit-content;
  padding: 12px 20px;
  border-radius: 999px;
  background: rgba(255,255,255,.86);
  box-shadow: 0 8px 35px rgba(43,22,15,.06);
}
body[data-page="story"] .about-heart .actions { margin-top: 38px; }

@media (max-width: 1060px) {
  body[data-page="story"] .about-chapter,
  body[data-page="story"] .about-chapter-recipe {
    grid-template-columns: minmax(0, 1fr) 70px minmax(340px, .9fr);
    gap: 28px;
  }
  body[data-page="story"] .about-chapter-art,
  body[data-page="story"] .about-chapter-recipe .about-chapter-art { grid-column: auto; }
  body[data-page="story"] .about-chapter-copy h2 { font-size: clamp(3.45rem, 6.5vw, 5.4rem); }
}

@media (max-width: 760px) {
  body[data-page="story"] .about-inner-hero {
    min-height: calc(100svh - 76px);
    padding: 108px 0 118px;
  }
  body[data-page="story"] .about-inner-hero .inner-hero-grid { gap: 24px; }
  body[data-page="story"] .about-inner-hero h1 {
    font-size: clamp(3.8rem, 18vw, 5.3rem);
    line-height: .87;
  }
  body[data-page="story"] .about-inner-hero .lede {
    max-width: 480px;
    font-size: .96rem;
    line-height: 1.65;
  }
  .about-hero-thread {
    right: 29px;
    left: auto;
    height: 88px;
    transform: none;
  }
  .about-story-flow::before,
  .about-story-flow::after {
    right: 29px;
    left: auto;
    bottom: 500px;
  }
  body[data-page="story"] .about-story-page,
  body[data-page="story"] .about-recipe-story { padding: 98px 0 112px; }
  body[data-page="story"] .about-chapter,
  body[data-page="story"] .about-chapter-recipe {
    grid-template-columns: 1fr;
    gap: 46px;
    padding-right: 48px;
  }
  body[data-page="story"] .about-chapter-origin { grid-template-areas: 'copy' 'art'; }
  body[data-page="story"] .about-chapter-recipe { grid-template-areas: 'copy' 'art'; }
  body[data-page="story"] .about-chapter-number {
    display: block;
    position: absolute;
    top: 0;
    right: 6px;
    width: 22px;
    height: 170px;
    padding: 34px 0 0;
  }
  body[data-page="story"] .about-chapter-number::before {
    top: 9px;
    width: 15px;
    height: 15px;
    border-width: 3px;
  }
  body[data-page="story"] .about-flow-marker {
    display: block;
    position: absolute;
    top: 0;
    right: 6px;
    width: 22px;
    height: 22px;
  }
  body[data-page="story"] .about-flow-marker::before { width: 15px; height: 15px; border-width: 3px; }
  body[data-page="story"] .about-flow-marker span { width: 5px; height: 5px; }
  body[data-page="story"] .about-chapter-copy { padding-block: 0; }
  body[data-page="story"] .about-chapter-copy h2 {
    font-size: clamp(3.05rem, 14vw, 4.45rem);
    line-height: .92;
  }
  body[data-page="story"] .about-chapter-copy > p {
    font-size: .94rem;
    line-height: 1.78;
  }
  body[data-page="story"] .about-chapter-art,
  body[data-page="story"] .recipe-still,
  body[data-page="story"] .about-chapter-recipe .about-chapter-art {
    min-height: 390px;
    order: initial;
  }
  body[data-page="story"] .story-section-floralis {
    left: -70%;
    bottom: -1%;
    width: 124%;
    opacity: .72;
  }
  body[data-page="story"] .story-section-olive {
    right: -70%;
    top: auto;
    bottom: -2%;
    width: 124%;
    opacity: .68;
  }
  body[data-page="story"] .chapter-product-small { width: 118px; left: -8px; bottom: 26px; }
  body[data-page="story"] .about-heart {
    min-height: 720px;
    padding: 126px 0 100px;
  }
  .about-flow-finale {
    right: 19px;
    left: auto;
    width: 20px;
    height: 20px;
    border-width: 4px;
    transform: translateY(-50%);
  }
  body[data-page="story"] .about-heart-inner { padding: 28px 22px; }
  body[data-page="story"] .about-heart h2 { font-size: clamp(3.25rem, 14vw, 5rem); }
  body[data-page="story"] .about-heart-inner > p:not(.eyebrow) { font-size: .96rem; }
  body[data-page="story"] .about-heart-route {
    width: 100%;
    padding-inline: 10px;
    gap: 9px;
  }
  body[data-page="story"] .about-heart-route i { width: 20px; }
  body[data-page="story"] .heart-crumb-one { right: -34px; }
  body[data-page="story"] .heart-crumb-two { left: -28px; }
  body[data-page="story"] .heart-crumb-three { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .about-story-flow { --story-progress: 1 !important; }
}

/* Story rail markers — real alfajores instead of abstract dots */
body[data-page="story"] .about-hero-thread::after,
body[data-page="story"] .about-flow-marker::before,
body[data-page="story"] .about-flow-finale {
  border: 0;
  border-radius: 0;
  background-color: transparent;
  background-image: var(--alfa-bg-3);
  background-repeat: no-repeat;
  background-size: 300% 200%;
  box-shadow: none;
  filter: drop-shadow(0 9px 8px rgba(43,22,15,.2));
}
body[data-page="story"] .about-hero-thread::after {
  width: 54px;
  height: 54px;
  bottom: -27px;
  background-position: 100% 0;
}
body[data-page="story"] .about-flow-marker::before {
  width: 64px;
  height: 64px;
  z-index: 2;
  background-position: 100% 100%;
  transform: translate(-50%, -50%) rotate(-4deg);
}
body[data-page="story"] .about-flow-marker::after {
  content: '';
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: 46px;
  height: 48px;
  border-radius: 48%;
  background: #fafcfd;
  transform: translate(-50%, -50%);
}
body[data-page="story"] .origin-flow-marker::before {
  background-position: 0 0;
  transform: translate(-50%, -50%) rotate(4deg);
}
body[data-page="story"] .about-flow-marker span { display: none; }
body[data-page="story"] .about-flow-finale {
  width: 68px;
  height: 68px;
  background-position: 50% 0;
  transform: translate(-50%, -50%) rotate(5deg);
}
body[data-page="story"] .about-heart { z-index: 4; }

/* Product catalog — clean editorial grid with full PNG product photography */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
body[data-page="collection"],
body[data-page="collection"] main { background: #fff; }
.catalog-hero {
  min-height: 560px;
  padding: clamp(110px, 12vw, 175px) 0 90px;
  display: grid;
  align-items: end;
  border-bottom: 1px solid rgba(43,22,15,.12);
  background: #fff;
}
.catalog-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(340px, .65fr);
  gap: clamp(48px, 8vw, 130px);
  align-items: end;
}
.catalog-hero-copy h1 {
  max-width: 900px;
  font-size: clamp(5rem, 8.4vw, 9rem);
  font-weight: 600;
  line-height: .86;
  letter-spacing: -.065em;
}
.catalog-hero-copy h1 span { color: #5b9fc5; }
.catalog-hero-intro > p {
  max-width: 580px;
  color: rgba(43,32,28,.76);
  font-size: clamp(1rem, 1.35vw, 1.16rem);
  line-height: 1.8;
}
.catalog-hero-actions { margin-top: 30px; display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.catalog-note { color: var(--muted); font-size: .78rem; }
.catalog-filter-bar {
  top: 88px;
  padding: 14px 0;
  background: rgba(255,255,255,.96);
  border-top: 0;
  border-bottom-color: rgba(43,22,15,.12);
}
.catalog-filter-bar .filter-btn {
  min-height: 44px;
  padding: 9px 17px;
  border-color: rgba(43,22,15,.16);
  background: #fff;
  color: rgba(43,32,28,.72);
  cursor: pointer;
  transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}
.catalog-filter-bar .filter-btn:hover { border-color: var(--chocolate); color: var(--chocolate); }
.catalog-filter-bar .filter-btn.active { border-color: var(--chocolate); background: var(--chocolate); color: #fff; }
.catalog-search { position: relative; flex: 0 0 285px; }
.catalog-search svg {
  position: absolute;
  right: 0;
  top: 50%;
  width: 20px;
  height: 20px;
  fill: none;
  stroke: var(--chocolate);
  stroke-width: 1.6;
  transform: translateY(-50%);
  pointer-events: none;
}
.catalog-search .search-field {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 8px 30px 8px 4px;
  color: var(--chocolate);
}
.catalog-section { padding: 56px 0 clamp(110px, 11vw, 165px); background: #fff; }
.catalog-section-head { margin-bottom: 34px; padding-bottom: 18px; border-bottom: 1px solid rgba(43,22,15,.12); color: var(--muted); font-size: .82rem; }
.catalog-section-head strong { color: var(--chocolate); }
body[data-page="collection"] .catalog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 46px 24px; }
.catalog-product-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(43,22,15,.12);
  border-radius: 0;
  background: #fff;
  box-shadow: none;
  transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}
.catalog-product-card:hover {
  border-color: rgba(43,22,15,.28);
  box-shadow: 0 22px 50px rgba(43,22,15,.08);
  transform: translateY(-4px);
}
.catalog-product-image {
  --media-pad: clamp(12px, 2vw, 24px);
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  margin: 0;
  padding: 0;
  background: #fff;
  border-bottom: 1px solid rgba(43,22,15,.1);
}
.catalog-product-image img {
  --product-scale: 1;
  display: block;
  position: absolute;
  inset: var(--media-pad);
  width: calc(100% - (var(--media-pad) * 2));
  height: calc(100% - (var(--media-pad) * 2));
  object-fit: contain;
  object-position: center;
  transform: scale(var(--product-scale));
  transition: transform .28s ease;
}
.catalog-product-card[data-product="dulce-diet"] .catalog-product-image img { --product-scale: 1.036; }
.catalog-product-card[data-product="dulce-syrup"] .catalog-product-image img { --product-scale: .98; }
.catalog-product-card:hover .catalog-product-image img { transform: scale(calc(var(--product-scale) * 1.025)); }
.catalog-product-card .product-body { display: flex; min-height: 225px; flex: 1; flex-direction: column; padding: 24px 24px 22px; }
.catalog-product-card .product-meta { color: #9b612d; font-size: .7rem; font-weight: 600; letter-spacing: .07em; }
.catalog-product-card .product-body h3 { margin-top: 8px; font-size: clamp(1.3rem, 1.7vw, 1.65rem); line-height: 1.2; }
.catalog-product-card .product-body p { min-height: 0; margin: 12px 0 24px; color: var(--muted); font-size: .9rem; line-height: 1.65; }
.catalog-product-card .card-link { width: fit-content; margin-top: auto; padding-bottom: 3px; font-size: .82rem; }
.catalog-product-card .card-link span { display: inline-block; margin-right: 6px; transition: transform .2s ease; }
.catalog-product-card:hover .card-link span { transform: translateX(-4px); }
.catalog-empty { border: 1px solid rgba(43,22,15,.12); background: #fff; }
.catalog-empty h2 { font-size: clamp(2rem, 4vw, 3.4rem); }
.catalog-empty p { margin: 12px 0 26px; color: var(--muted); }
.catalog-business-cta h2 { font-size: clamp(3rem, 5.5vw, 5.8rem); line-height: .92; }
.product-gallery-photo {
  padding: clamp(18px, 3vw, 42px);
  border: 1px solid rgba(43,22,15,.12);
  border-radius: 0;
  background: #fff;
}
.product-gallery-photo::before { content: none; }
.product-gallery-photo img { display: block; width: 100%; height: 100%; max-height: 660px; object-fit: contain; }

@media (max-width: 1020px) {
  .catalog-hero-grid { grid-template-columns: 1fr .75fr; gap: 44px; }
  body[data-page="collection"] .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .catalog-hero { min-height: 0; padding: 82px 0 66px; }
  .catalog-hero-grid { grid-template-columns: 1fr; gap: 28px; }
  .catalog-hero-copy h1 { font-size: clamp(4rem, 17vw, 5.5rem); }
  .catalog-hero-intro > p { font-size: .98rem; }
  .catalog-hero-actions { align-items: stretch; }
  .catalog-hero-actions .btn { width: 100%; }
  .catalog-note { width: 100%; text-align: center; }
  .catalog-filter-bar { top: 76px; padding: 12px 0; }
  .catalog-filter-bar .filter-inner { gap: 12px; }
  .catalog-search { width: 100%; flex-basis: auto; }
  .catalog-section { padding: 38px 0 92px; }
  .catalog-section-head { margin-bottom: 22px; }
  body[data-page="collection"] .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 10px; }
  .catalog-product-card .product-body { min-height: 0; padding: 14px 13px 16px; }
  .catalog-product-card .product-body h3 { min-height: 44px; font-size: 1rem; }
  .catalog-product-card .product-body p { display: none; }
  .catalog-product-card .card-link { margin-top: 14px; font-size: .74rem; }
  .catalog-product-image { --media-pad: 7px; height: auto; padding: 0; }
  .catalog-business-cta h2 { font-size: clamp(2.8rem, 13vw, 4.2rem); }
}

@media (max-width: 410px) {
  body[data-page="collection"] .catalog-grid { grid-template-columns: 1fr; gap: 16px; }
  .catalog-product-card .product-body h3 { min-height: 0; font-size: 1.25rem; }
  .catalog-product-card .product-body p { display: block; }
}

@media (max-width: 760px) {
  body[data-page="story"] .about-hero-thread::after {
    width: 46px;
    height: 46px;
    bottom: -23px;
  }
  body[data-page="story"] .about-flow-marker { right: 18px; }
  body[data-page="story"] .about-flow-marker::before {
    width: 50px;
    height: 50px;
    border: 0;
  }
  body[data-page="story"] .about-flow-marker::after {
    width: 36px;
    height: 38px;
  }
  body[data-page="story"] .about-flow-finale {
    right: -5px;
    left: auto;
    width: 68px;
    height: 68px;
    border: 0;
    transform: translateY(-50%) rotate(5deg);
  }
  body[data-page="story"] .about-heart::before {
    right: 29px;
    left: auto;
    top: -400px;
    height: 380px;
  }
}

/* Mobile-only hero flavor carousel. Desktop keeps the original paint-trail hero. */
@media (max-width: 760px) {
  body[data-page="home"] .about-page-hero,
  body[data-page="home"] .about-page-hero-sticky {
    height: 580px;
    min-height: 580px;
  }

  body[data-page="home"] .about-page-hero-sticky {
    display: block;
  }

  body[data-page="home"] .about-page-hero-inner {
    max-width: 410px;
    margin-inline: auto;
    padding: 230px 16px 20px;
  }

  body[data-page="home"] .about-page-hero h1 {
    font-size: clamp(2.65rem, 10.8vw, 3.25rem);
    line-height: .9;
  }

  body[data-page="home"] .about-page-hook {
    max-width: 350px;
    margin: 14px auto 16px;
    font-size: .88rem;
    line-height: 1.55;
  }

  body[data-page="home"] .about-page-actions {
    width: min(320px, 100%);
  }

  body[data-page="home"] .about-trails {
    inset: 0 0 auto;
    height: 220px;
    overflow: hidden;
    perspective: 700px;
    animation: mobileCarouselReveal .65s cubic-bezier(.2,.8,.2,1) both;
  }

  body[data-page="home"] .about-trails::after {
    content: '';
    position: absolute;
    z-index: 0;
    left: 50%;
    bottom: 13px;
    width: 230px;
    height: 24px;
    translate: -50% 0;
    border-radius: 50%;
    background: radial-gradient(ellipse, rgba(43,22,15,.18) 0%, rgba(43,22,15,.06) 44%, transparent 72%);
    filter: blur(6px);
  }

  body[data-page="home"] .about-trail {
    left: calc(50% - 56px) !important;
    top: 27px !important;
    width: 112px;
    height: auto;
    min-height: 0;
    max-height: none;
    aspect-ratio: 441.2 / 713;
    transform-origin: center;
    contain: layout paint;
    animation: mobileFlavorCarousel 10s cubic-bezier(.45,0,.2,1) var(--carousel-delay, 0s) infinite both;
  }

  body[data-page="home"] .about-trail i {
    display: none;
  }

  body[data-page="home"] .about-trail .trail-cookie {
    inset: 0 auto auto 0;
    width: 100%;
    transform: none;
    opacity: 1;
    filter: none;
    backface-visibility: hidden;
    will-change: auto;
    animation: none;
  }

  body[data-page="home"] .trail-caramel { --carousel-delay: 0s; }
  body[data-page="home"] .trail-pink { --carousel-delay: -2s; }
  body[data-page="home"] .trail-brown { --carousel-delay: -4s; }
  body[data-page="home"] .trail-cream { --carousel-delay: -6s; }
  body[data-page="home"] .trail-gold { --carousel-delay: -8s; }
}

@keyframes mobileCarouselReveal {
  from { transform: translate3d(0,14px,0) scale(.94); opacity: 0; }
  to { transform: translate3d(0,0,0) scale(1); opacity: 1; }
}

@keyframes mobileFlavorCarousel {
  0%, 100% {
    z-index: 5;
    transform: translate3d(0,0,70px) scale(1) rotate(0deg);
    opacity: 1;
  }
  20% {
    z-index: 2;
    transform: translate3d(112px,18px,0) scale(.62) rotate(8deg);
    opacity: .7;
  }
  34% {
    z-index: 1;
    transform: translate3d(148px,28px,-70px) scale(.42) rotate(13deg);
    opacity: 0;
  }
  66% {
    z-index: 1;
    transform: translate3d(-148px,28px,-70px) scale(.42) rotate(-13deg);
    opacity: 0;
  }
  80% {
    z-index: 2;
    transform: translate3d(-112px,18px,0) scale(.62) rotate(-8deg);
    opacity: .7;
  }
}

@media (prefers-reduced-motion: reduce) and (max-width: 760px) {
  body[data-page="home"] .about-trails,
  body[data-page="home"] .about-trail {
    animation: none !important;
  }

  body[data-page="home"] .about-trail {
    opacity: 0 !important;
  }

  body[data-page="home"] .trail-brown {
    z-index: 5;
    transform: translate3d(0,0,70px) scale(1) !important;
    opacity: 1 !important;
  }

  body[data-page="home"] .trail-caramel {
    z-index: 2;
    transform: translate3d(-112px,18px,0) scale(.62) rotate(-8deg) !important;
    opacity: .7 !important;
  }

  body[data-page="home"] .trail-pink {
    z-index: 2;
    transform: translate3d(112px,18px,0) scale(.62) rotate(8deg) !important;
    opacity: .7 !important;
  }
}

@media (max-width: 340px) {
  body[data-page="home"] .about-page-hero h1 {
    font-size: 2.05rem;
  }
}

html,body{margin:0!important;padding:0!important;background:#fff!important}.neo-header,.neo-footer,.neo-announcement,.etx-floating-btn{display:none!important}.neo-main,.neo-content,.neo-container{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}#sec_alfa770_fullsite_1655,#sec_alfa770_fullsite_1655>.neo-container-fluid{overflow:visible!important}.alfa-spa-shell{width:100%;overflow:visible!important}.alfa-route-templates{display:none!important}