@font-face{font-family:Alexandria;src:url('../assets/fonts/Alexandria-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Alexandria;src:url('../assets/fonts/Alexandria-Bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Alexandria;src:url('../assets/fonts/Alexandria-ExtraBold.ttf') format('truetype');font-style:normal;font-weight:800;font-display:swap}

:root{--paper:#f4f1e8;--green:#124c36;--deep:#0a3828;--orange:#f66627;--muted:#6d776e;--line:#d9ddd2;--soft:#e5e9d4;--ease:cubic-bezier(.2,.75,.25,1)}
*{box-sizing:border-box}
html{min-height:100%;background:var(--paper)}
body{margin:0;min-height:100svh;color:var(--green);background:var(--paper);font-family:Alexandria,Tahoma,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
button{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}
button:focus-visible,.skip-link:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
.skip-link{position:fixed;z-index:20;top:-80px;right:20px;padding:12px 18px;border-radius:10px;color:#fff;background:var(--deep);text-decoration:none;transition:top .2s}
.skip-link:focus{top:16px}
.page-shell{width:min(1320px,calc(100% - 104px));min-height:100svh;margin-inline:auto;display:grid;grid-template-rows:auto 1fr auto;overflow-x:clip}
.site-header{min-height:112px;display:flex;align-items:center;gap:22px;border-bottom:1px solid var(--line)}
.brand{display:block;width:218px;height:auto;mix-blend-mode:multiply}
.header-status{margin-inline-start:auto;display:flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:#f8f6f0;font-size:10px;white-space:nowrap}
.status-dot{width:7px;height:7px;border-radius:50%;background:#5e8b60;box-shadow:0 0 0 5px #5e8b6018;animation:breathe 2.4s ease-in-out infinite}
.motion-toggle{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer;transition:background .2s,transform .2s}
.motion-toggle:hover{background:#e9ecdf;transform:rotate(-7deg)}
.motion-toggle svg{grid-area:1/1;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.play-icon{display:none}
body[data-motion="off"] .pause-icon{display:none}
body[data-motion="off"] .play-icon{display:block}
.hero{min-width:0;min-height:calc(100svh - 186px);display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:35px;padding-block:38px 26px}
.hero-copy{min-width:0;position:relative;z-index:3;max-width:540px;padding-bottom:18px}
.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 20px;font-size:11px;font-weight:700;color:#536c5d}
.eyebrow span{width:27px;height:2px;border-radius:2px;background:var(--orange)}
h1{margin:0;font-size:clamp(72px,7.1vw,110px);font-weight:800;line-height:1.05;letter-spacing:normal}
h1 span,h1 strong{display:block}
h1 strong{width:max-content;position:relative;color:var(--orange);font-weight:800}
h1 strong::after{content:"";position:absolute;right:7%;bottom:-12px;width:84%;height:14px;border-top:2px solid #ef9b70;border-radius:50%;transform:rotate(-2deg)}
.intro{margin:34px 0 25px;color:var(--muted);font-size:15px;line-height:2.05}
.preparing{width:min(430px,100%);padding:15px 17px 16px;border:1px solid var(--line);border-radius:14px;background:#f8f6f0cc;box-shadow:0 14px 38px #143b2b08}
.preparing-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:13px;font-size:10px}
.preparing-top span{display:flex;align-items:center;gap:8px}
.preparing-top b{font-weight:700}
.preparing-top i{width:12px;height:12px;border:1.5px solid #f0b28f;border-top-color:var(--orange);border-radius:50%;animation:spin 1.35s linear infinite}
.preparing-top small{color:var(--muted);font-size:9px}
.progress{height:7px;overflow:hidden;border-radius:999px;background:#e6e5dc}
.progress span{display:block;width:72%;height:100%;border-radius:inherit;background:var(--orange);animation:progress 5.5s var(--ease) infinite alternate}
.categories{display:flex;align-items:center;gap:10px;margin:22px 0 0;color:#607064;font-size:10px}
.categories i{width:4px;height:4px;border-radius:50%;background:#c6aa8d}
.no-script{margin-top:15px;color:var(--muted)}
.hero-art{--px:0px;--py:0px;position:relative;direction:ltr;width:min(100%,640px);aspect-ratio:1;justify-self:center;display:grid;place-items:center;isolation:isolate;touch-action:pan-y}
.hero-art::before{content:"";position:absolute;z-index:-2;inset:8%;border-radius:50%;background:var(--soft);opacity:.72}
.dot-pattern{position:absolute;z-index:-3;width:39%;height:37%;top:4%;right:-3%;opacity:.42;background-image:radial-gradient(#84926d 1.2px,transparent 1.2px);background-size:13px 13px;mask-image:radial-gradient(circle,#000,transparent 72%)}
.orbit{position:absolute;border:1px solid #9daf91;border-radius:50%;pointer-events:none}
.orbit-one{inset:3%;transform:rotate(-18deg)}
.orbit-two{inset:8%;border-color:#e7b797;border-style:dashed;transform:rotate(23deg)}
.orbit-marker{position:absolute;inset:2.7%;border-radius:50%;animation:spin 32s linear infinite;pointer-events:none}
.orbit-marker::before{content:"";position:absolute;top:12%;left:17%;width:12px;height:12px;border:4px solid var(--paper);border-radius:50%;background:var(--orange);box-shadow:0 4px 10px #a3431828}
.orange-disc{position:absolute;z-index:0;width:75%;height:75%;left:10%;top:13%;border-radius:50%;background:var(--orange);transform:translate(calc(10px + var(--px) * -.2),calc(-3px + var(--py) * -.2));transition:transform .7s var(--ease)}
.food-frame{position:relative;z-index:1;width:77%;height:77%;overflow:hidden;border-radius:50%;transform:translate(calc(-5px + var(--px) * .55),calc(7px + var(--py) * .55));box-shadow:0 28px 70px -34px #42372790;transition:transform .6s var(--ease),box-shadow .5s}
.food-frame img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.025);transition:transform 1s var(--ease)}
.hero-art:hover .food-frame{box-shadow:0 34px 78px -30px #42372785}
.hero-art:hover .food-frame img{transform:scale(1.06)}
.floating-card{position:absolute;z-index:4;top:16%;right:-1%;min-width:124px;padding:14px 17px;border-radius:7px;color:#fff;background:var(--green);box-shadow:0 12px 28px #133c282b;transform:rotate(8deg) translate(calc(var(--px) * .75),calc(var(--py) * .75));transition:transform .55s var(--ease)}
.floating-card span{display:block;font-size:11px;font-weight:700}
.floating-card small{display:block;margin-top:5px;opacity:.6;font:7px/1 Arial,sans-serif;letter-spacing:2px}
.spark{position:absolute;z-index:3;top:8%;left:4%;width:43px;height:43px;fill:none;stroke:var(--orange);stroke-width:2.3;stroke-linecap:round;transform:translate(calc(var(--px) * -.65),calc(var(--py) * -.65));transition:transform .55s var(--ease)}
.scene-button{position:absolute;z-index:5;left:4%;bottom:7%;display:flex;align-items:center;gap:9px;padding:9px 13px;border:1px solid #d4d9ca;border-radius:999px;background:#f7f5eeec;box-shadow:0 10px 25px #173e2b12;font-size:9px;cursor:pointer;transition:transform .2s,background .2s}
.scene-button:hover{transform:translateY(-3px);background:#fff}
.scene-button span{width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px #f6662715}
.scene-button b{font-weight:700}
.hero-art.is-pulsing .food-frame{animation:scene-pulse .75s var(--ease)}
.hero-art.is-pulsing .floating-card{animation:card-pop .75s var(--ease)}
.site-footer{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);color:var(--muted);font-size:9px}
.site-footer span:last-child{font-family:Arial,sans-serif;letter-spacing:2.3px}
body[data-motion="off"] *{animation-play-state:paused!important}
body[data-motion="off"] .hero-art{--px:0px!important;--py:0px!important}

@keyframes spin{to{transform:rotate(360deg)}}
@keyframes breathe{50%{opacity:.35}}
@keyframes progress{from{width:52%}to{width:88%}}
@keyframes scene-pulse{45%{transform:translate(calc(-5px + var(--px) * .55),calc(7px + var(--py) * .55)) scale(.965)}75%{transform:translate(calc(-5px + var(--px) * .55),calc(7px + var(--py) * .55)) scale(1.025)}}
@keyframes card-pop{45%{transform:rotate(4deg) translate(calc(var(--px) * .75),calc(var(--py) * .75)) scale(1.08)}}

@media(max-width:980px){
  .page-shell{width:calc(100% - 48px)}
  .site-header{min-height:96px}.brand{width:185px}
  .hero{min-height:calc(100svh - 170px);gap:10px}.hero-copy{max-width:430px}
  h1{font-size:72px}.intro{font-size:12px}.hero-art{width:108%;margin-left:-8%}
}

@media(max-width:720px){
  .page-shell{width:calc(100% - 32px)}
  .site-header{min-height:82px}.brand{width:145px}.header-status{margin-inline-start:auto;padding:8px 10px;font-size:8px}.motion-toggle{width:36px;height:36px}
  .hero{min-height:auto;grid-template-columns:1fr;gap:4px;padding:24px 0 18px;text-align:center}
  .hero-copy{max-width:none;padding:0}.eyebrow{justify-content:center;margin-bottom:13px;font-size:9px}.eyebrow span{width:20px}
  h1{font-size:clamp(52px,17vw,72px);line-height:1.08;letter-spacing:normal}h1 strong{margin-inline:auto}h1 strong::after{bottom:-9px}
  .intro{margin:25px 0 15px;font-size:11px;line-height:1.9}
  .preparing{width:min(390px,100%);margin-inline:auto;padding:12px 14px}.preparing-top{margin-bottom:10px}.categories{justify-content:center;margin-top:14px;font-size:8px}
  .hero-art{width:min(100%,430px);margin:0 auto;margin-top:-8px}.dot-pattern{right:0}.floating-card{right:0;min-width:101px;padding:11px 13px}.floating-card span{font-size:9px}.spark{width:31px;height:31px;left:5%}
  .scene-button{left:3%;bottom:6%;padding:8px 10px}.scene-button b{display:none}
  .site-footer{min-height:58px;justify-content:center}.site-footer span:last-child{display:none}
}

@media(max-width:420px){
  .page-shell{width:calc(100% - 24px)}.brand{width:130px}.header-status span:last-child{display:none}.header-status{padding:9px}.hero{padding-top:18px}
  .intro{margin-top:22px}.site-footer{min-height:50px}
}

@media(max-height:760px) and (max-width:720px){
  .site-header{min-height:70px}.hero{padding-top:14px}.eyebrow{margin-bottom:9px}h1{font-size:48px}.intro{margin:18px 0 10px;line-height:1.7}.preparing{padding:10px 12px}.categories{margin-top:10px}.hero-art{width:min(55vh,340px);margin-top:-18px}.site-footer{min-height:44px}
}

@media(prefers-reduced-motion: reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .scene-button{display:none}
}
