@font-face{font-family:Vazirmatn;src:url("assets/vazirmatn.woff2") format("woff2");font-weight:100 900;font-display:swap}
:root{--ink:#291b15;--dark:#21150f;--cream:#fcf7ee;--paper:#f5ebdc;--gold:#dfba80;--gold-dark:#82542d;--muted:#6b5547;--line:#e4d3bb;--header:75px;color:var(--ink);background:var(--cream);font-family:Vazirmatn,Tahoma,sans-serif;scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 22px)}
*{box-sizing:border-box}
body{margin:0}
body:has(dialog[open]){overflow:hidden}
button,input,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
a,button,input,textarea,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #b7783e;outline-offset:4px}
img{display:block;max-width:100%;height:auto}
svg{width:1em;height:1em}
h1,h2,h3,p{margin:0}
[hidden]{display:none!important}
.symbols{position:absolute;width:0;height:0}
.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;flex:none}
.wrap{width:min(1190px,calc(100% - 96px));margin-inline:auto}
.skip{position:fixed;inset:8px 8px auto auto;transform:translateY(-150%);background:white;color:var(--ink);padding:8px 14px;z-index:20}
.skip:focus{transform:none}
.site-header{position:sticky;top:0;z-index:5;background:#251913;color:#f9efe1;border-bottom:1px solid #624b35}
.header-inner{min-height:var(--header);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}
.brand{display:inline-flex;align-items:center;gap:10px;justify-self:start}
.brand img{border-radius:50%;flex:none}
.brand span{display:grid;gap:3px}
.brand b{font:500 18px/1.2 Georgia,serif;letter-spacing:.10em;white-space:nowrap}
.brand small{font-size:11px;color:#dcc8b1}
nav{display:flex;align-items:center;gap:clamp(22px,4vw,54px);font-size:14px;color:#eedfce}
nav a{display:flex;align-items:center;min-height:44px;transition:color .2s}
nav a:hover{color:var(--gold)}
.header-order{justify-self:end;display:flex;align-items:center;gap:8px;border:1px solid #81674b;border-radius:99px;background:none;color:#f7e9d6;padding:7px 12px;min-height:44px;font-size:13px;white-space:nowrap;transition:background .2s}
.header-order:hover,.button-ghost:hover{background:#ffffff16}
.count{display:grid;place-items:center;background:var(--gold);color:var(--dark);height:22px;min-width:22px;padding-inline:4px;border-radius:99px;font-weight:800}
.icon-button{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid currentColor;background:none;border-radius:99px;color:inherit}
.nav-toggle{display:none}
.hero{position:relative;isolation:isolate;overflow:hidden;color:#fff4e3;background:radial-gradient(ellipse at 31% 55%,#543422 0%,#321f16 35%,#251711 68%,#241711 100%)}
.hero::after,.occasion::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:url("assets/grain.svg");opacity:.18}
.hero-inner{display:grid;grid-template-columns:1fr 1.14fr;gap:20px;align-items:center;min-height:620px}
.hero-copy{position:relative;z-index:1;padding-block:54px}
.eyebrow,.section-kicker{display:flex;align-items:center;gap:10px;color:var(--gold);font-size:13px;font-weight:700}
.eyebrow span{width:28px;height:1px;background:currentColor}
.eyebrow span:last-child{width:10px}
.hero h1{font-size:clamp(61px,7.2vw,113px);font-weight:880;line-height:1.12;letter-spacing:-.075em;margin:24px 0 19px}
.hero h1 em,.occasion h2 em{color:var(--gold);font-style:normal}
.hero-description{font-size:clamp(15px,1.5vw,18px);color:#e5d4c5;line-height:2.05;max-width:385px}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}
.button{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:49px;border:1px solid transparent;border-radius:99px;padding:9px 19px;font-weight:750;font-size:14px;transition:background .2s,border-color .2s,transform .2s}
.button:active{transform:translateY(1px)}
.button-gold{color:var(--dark);background:var(--gold)}
.button-gold:hover{background:#f0cf9c}
.button-ghost{color:#f8ead7;border-color:#937553;background:none}
.button-dark{background:var(--ink);color:var(--cream)}
.button-dark:hover{background:#4e3428}
.button-outline{color:var(--ink);border-color:#9d7e5e;background:none}
.button-outline:hover{background:var(--paper)}
.hero-art{aspect-ratio:600/640;position:relative;max-width:600px;justify-self:center;width:100%;direction:ltr}
.hero-picture{position:absolute;inset:7.03125% 10.6667% 7.5%;overflow:hidden;border-radius:49% 49% 25% 25% / 43% 43% 19% 19%;border:1px solid #d1a977;box-shadow:0 0 0 5px #ba93682b,0 22px 75px #0805038c;background:#4f2c19}
.hero-picture img{width:100%;height:100%;object-fit:cover;object-position:50% 52%}
.hero-orbit{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero-seal{position:absolute;width:20%;left:12%;top:71%;border:1px solid #e4bc7e;border-radius:50%;padding:4px;background:#f5e8d5;box-shadow:0 7px 22px #140d0b66;transform:rotate(-9deg)}
.hero-seal img{border-radius:50%;width:100%}
.plate-caption{position:absolute;bottom:.5%;left:50%;transform:translateX(-50%);color:#dcc3a2;font:10px Georgia,serif;letter-spacing:.30em;white-space:nowrap}
.ribbon{min-height:54px;background:#f0ddbe;color:#5e3b20;display:flex;justify-content:center;align-items:center;gap:clamp(12px,5vw,76px);border-block:1px solid #d0ad79;font-size:14px;font-weight:750}
.ribbon a{display:flex;align-items:center;min-height:44px}
.ribbon a:hover{text-decoration:underline;text-underline-offset:5px}
.ribbon svg,.section-kicker svg{color:#9e6c39;width:13px;height:13px;flex:none}
.menu-section{padding-block:83px 98px}
.section-lead{display:grid;grid-template-columns:1fr minmax(260px,390px);align-items:end;gap:24px}
.section-kicker{color:var(--gold-dark)}
h2{font-size:clamp(33px,5vw,61px);line-height:1.3;font-weight:850;letter-spacing:-.055em;margin-top:9px}
.section-intro,.guide p:not(.section-kicker){font-size:15px;color:var(--muted);line-height:2}
.filters{margin-top:31px;display:flex;flex-wrap:wrap;gap:8px}
.filters button{padding:7px 17px;min-height:44px;border:1px solid #bfaa90;border-radius:99px;background:transparent;color:var(--ink);font-size:14px;font-weight:650;transition:background .2s,border-color .2s}
.filters button:hover{background:#f3e6d3}
.filters button[aria-pressed=true]{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.demo-note{font-size:12px;color:var(--muted);margin:11px 0 22px}
.catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}
.card{min-width:0;overflow:hidden;border:1px solid var(--line);background:#fffaf3;border-radius:18px;display:flex;flex-direction:column;transition:box-shadow .24s}
.card:hover{box-shadow:0 8px 26px #4b2e1717}
.card-photo{position:relative;background:#261913;aspect-ratio:600/380;overflow:hidden}
.card-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}

.card-body{display:flex;flex:1;flex-direction:column;padding:16px 17px 17px}
.card-category{color:var(--gold-dark);font-size:11px;font-weight:800}
.card h3{font-size:21px;margin:3px 0;letter-spacing:-.035em}
.card-description{color:var(--muted);font-size:13px;line-height:1.9;margin-bottom:14px}
.card-add{display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:44px;width:100%;padding:8px 13px;border:1px solid #d6bea0;border-radius:99px;background:#f9eee0;color:#4e301e;font-size:13px;font-weight:750;margin-top:auto;transition:background .2s}
.card-add:hover{background:#ecd8bc}
.card-add span:last-child{font-size:22px;line-height:1}
.occasion{position:relative;isolation:isolate;background:#322118;color:#fff1de}
.occasion-inner{display:grid;grid-template-columns:.85fr 1fr;align-items:center;gap:clamp(28px,7vw,105px);padding-block:64px}
.occasion-photo{aspect-ratio:1.25;border-radius:100% 100% 16px 16px / 80% 80% 16px 16px;overflow:hidden;border:1px solid #d2a578;box-shadow:0 0 0 5px #ba936834}
.occasion-photo img{width:100%;height:100%;object-fit:contain}
.occasion .section-kicker,.occasion .section-kicker svg{color:var(--gold)}
.occasion h2{font-size:clamp(30px,4.4vw,57px)}
.occasion p:not(.section-kicker){max-width:490px;margin-block:17px 23px;color:#ead8c8;line-height:2;font-size:15px}
.guide{display:grid;grid-template-columns:.8fr 1fr;gap:40px;padding-block:82px 91px}
.guide h2{font-size:clamp(32px,4.4vw,54px)}
.guide p:not(.section-kicker){margin-top:10px}
.questions{border-top:1px solid #cdb698}
details{border-bottom:1px solid #cdb698;padding-inline:4px}
summary{position:relative;list-style:none;padding:17px 0 16px 34px;cursor:pointer;font-weight:750;font-size:15px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;inset-inline-end:4px;font-size:20px;line-height:1.1;color:var(--gold-dark)}
details[open] summary::after{content:"−"}
.questions details p:not(.section-kicker){margin:0 0 18px;font-size:14px}
.site-footer{color:#f8eee0;background:#251913;border-top:1px solid #674b35}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-block:25px}
.footer-note{font-size:12px;color:#ddc6af}
dialog{padding:0;width:min(530px,calc(100% - 24px));max-height:min(90vh,820px);max-height:min(90dvh,820px);background:#fffbf4;border:1px solid #c8a47a;border-radius:21px;color:var(--ink);box-shadow:0 20px 100px #21130eb0}
dialog::backdrop{background:#1b100dba}
.dialog-inner{padding:24px}
.dialog-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.dialog-top h2{font-size:33px;margin-top:2px}
.close{font-size:26px;line-height:1;border-color:#bfa88b}
#selection{margin-block:15px}
.empty,.contact-note,.status{font-size:13px;color:var(--muted);line-height:1.85}
.order-list{padding:0;margin:0;list-style:none}
.order-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:6px 0;font-size:14px;font-weight:650}
.quantity{display:flex;align-items:center;gap:8px}
.quantity button{min-width:44px;min-height:44px;border-radius:99px;border:1px solid #c9ac88;background:var(--cream);color:var(--ink);font-size:20px}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
label{display:grid;gap:4px;font-size:13px;font-weight:750;margin-bottom:11px}
input,textarea{min-width:0;width:100%;border:1px solid #b9a58d;border-radius:9px;padding:9px 10px;color:var(--ink);background:white;font-size:16px}
textarea{resize:vertical}
.contact-note{margin:4px 0 10px}
#draft{margin-top:16px}
.draft-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.status:not(:empty){margin-top:7px}
.toast{position:fixed;z-index:9;bottom:16px;inset-inline-start:16px;margin:0;max-width:calc(100% - 32px);border-radius:13px;background:var(--ink);color:var(--cream);box-shadow:0 3px 22px #30190c40;font-size:14px;pointer-events:none}
.toast:not(:empty){padding:10px 16px;border:1px solid #967751}
@media(max-width:1000px){
  .wrap{width:calc(100% - 60px)}
  .hero-inner{min-height:0}
  .hero-copy{padding-block:60px}
}
@media(max-width:740px){
  :root{--header:66px}
  .wrap{width:calc(100% - 34px)}
  .header-inner{grid-template-columns:1fr auto auto;gap:8px}
  .brand img{width:41px;height:41px}
  .brand b{font-size:15px}
  .brand small{font-size:10px}
  .brand{gap:7px}
  .nav-toggle{display:grid;order:2;border-color:#81674b}
  .header-order{min-height:44px;padding-inline:9px;gap:5px}
  .header-order-label{display:none}
  nav{display:none;position:absolute;inset:var(--header) 0 auto;flex-wrap:wrap;justify-content:center;gap:0 22px;background:#251913;padding:9px 16px 14px;border-bottom:1px solid #81674b}
  nav.is-open{display:flex}
  .hero-inner{grid-template-columns:1fr;gap:2px;text-align:center}
  .hero-copy{padding-block:35px 9px}
  .eyebrow,.hero-actions{justify-content:center}
  .eyebrow span:last-child{width:28px}
  .hero h1{font-size:clamp(55px,12vw,78px);margin:14px 0}
  .hero-description{margin-inline:auto;max-width:320px}
  .hero-actions{margin-top:17px}
  .hero-actions .button{padding-inline:13px;font-size:13px}
  .hero-art{max-width:420px;margin-block:-2px 14px}
  .section-lead,.guide{grid-template-columns:1fr;gap:13px}
  .menu-section,.guide{padding-block:52px}
  .filters{margin-top:20px}
  .catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .card-body{padding:10px}
  .card h3{font-size:17px}
  .card-description{font-size:12px}
  .card-add{font-size:12px;padding-inline:8px}
  .occasion-inner{padding-block:44px;gap:22px;grid-template-columns:1fr}
  .occasion-photo{width:min(100%,410px)}
  .footer-inner{flex-wrap:wrap}
}
@media(max-width:380px){
  .wrap{width:calc(100% - 24px)}
  .header-inner{gap:6px}
  .header-inner .brand img{width:36px;height:36px}
  .header-inner .brand b{font-size:12px;letter-spacing:.055em}
  .filters{gap:5px}
  .filters button{padding-inline:11px}
  .catalog{gap:8px}
  .card h3{font-size:15px}
  .card-add{font-size:11px}
  .dialog-inner{padding:15px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

.footer-contact{display:flex;gap:8px;flex-wrap:wrap}

/* Decorative SVGs keep their final composition without JavaScript or motion. */
.motion-art{display:block;color:#a77340;overflow:visible;pointer-events:none}
.motion-line{stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.motion-star{fill:currentColor;transform-box:fill-box;transform-origin:center}
.hero-sparks{position:absolute;inset:0;width:100%;height:100%;color:#e7bc83}
.hero-sparks .motion-line{stroke-width:1.6;opacity:.75}
.menu-flourish{width:clamp(104px,18vw,212px);height:auto;margin-top:6px}
.occasion-cloche{width:clamp(98px,14vw,156px);height:auto;color:#e1ba84;margin-block:9px 1px}
.guide-flourish{width:142px;height:auto;margin-block:3px 0}
@media(prefers-reduced-motion:no-preference){
  .motion-live .motion-line{stroke-dasharray:1;animation:motion-draw 1.8s ease-out both}
  .motion-live .motion-star{animation:motion-spark 1s .45s ease-in-out 3}
  .motion-live .motion-star.delay{animation-delay:1.05s}
  .motion-live .motion-line.delay{animation-delay:.35s}
}
@keyframes motion-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes motion-spark{0%,100%{transform:scale(1);opacity:1}45%{transform:scale(.48);opacity:.38}70%{transform:scale(1.16);opacity:1}}

.hero-picture,.occasion-photo{background:#261913}

.studio-collections,.studio-steps{padding-block:clamp(48px,7vw,88px)}
.studio-collections + .menu-section{padding-top:clamp(30px,5vw,65px);border-top:1px solid #e3d0b5}
.studio-heading{margin-bottom:28px}
.studio-heading h2{margin:4px 0 8px}
.studio-heading p:not(.section-kicker),.studio-card-copy p,.pairing-card p,.studio-steps li p{line-height:1.85}
.studio-grid,.pairing-grid{display:grid;gap:clamp(12px,2vw,22px)}
.studio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.pairing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.studio-card{border:1px solid #dfc9ac;border-radius:20px;overflow:hidden;background:#fffbf4;display:flex;flex-direction:column}
.studio-card-art{display:grid;place-items:center;min-height:140px;background:radial-gradient(ellipse at 53% 43%,#78543b,#332218 70%);color:#ffdfa9}
.studio-party{background:radial-gradient(ellipse at 53% 43%,#835447,#432924 72%)}
.studio-work{background:radial-gradient(ellipse at 53% 43%,#6d6647,#353021 72%)}
.studio-card-art .studio-motif,.studio-pairings .studio-motif{color:inherit}
.studio-card-copy{padding:18px;display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:6px}
.studio-card-copy h3,.pairing-card h3,.studio-steps h3{margin:0;font-size:clamp(16px,2.1vw,24px)}
.studio-card-copy p,.pairing-card p,.studio-steps li p{margin:0;font-size:14px}
.studio-card a,.pairing-card a{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-weight:750;font-size:13px}
.studio-card a{margin-top:auto;color:#724522}
.studio-card a:hover,.pairing-card a:hover{text-decoration:underline}
.studio-pairings{padding-block:clamp(45px,6vw,80px);color:#f9ebd8;background:radial-gradient(ellipse at 65% 15%,#553a2c,#2d1c14 72%)}
.studio-pairings .section-kicker{color:#f2c78c}
.studio-pairings .studio-heading{position:relative;padding-inline-end:105px}
.studio-pairings .studio-motif{position:absolute;inset-inline-end:0;inset-block-start:0;color:#efd09c}
.pairing-card{overflow:hidden;border:1px solid #8d694f;border-radius:20px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;background:#39261c}
.pairing-card img{width:100%;height:auto;object-fit:contain}
.pairing-card div{padding:15px}
.pairing-card p{color:#f0ddc7;margin-top:6px}
.pairing-card a{color:#ffd99e}
.studio-steps ol{list-style:none;padding:0;margin:0 0 25px}
.studio-steps li{position:relative;border-top:1px solid #c8a47a;padding:14px 0}
.studio-steps li p{margin-top:7px}
.studio-steps .step-number{position:absolute;inset-inline-end:8px;inset-block-start:14px;font-weight:800;color:#754b2e}
.studio-motif{width:108px;height:auto}
.studio-motif .motion-line{fill:none}
@media (prefers-reduced-motion:no-preference){
  .studio-motif.motion-live }
@keyframes studio-orbit{from{stroke-dashoffset:35;opacity:.12}to{stroke-dashoffset:0;opacity:.65}}
@media(max-width:750px){
  .studio-grid{grid-template-columns:1fr}
  .studio-card{display:grid;grid-template-columns:minmax(90px,31%) 1fr}
  .studio-card-art{min-height:124px}
  .studio-card-art .studio-motif{width:min(90px,100%)}
  .studio-card-copy{padding:13px}
  .pairing-grid{grid-template-columns:1fr}
  .studio-steps li{min-height:100px;padding-inline-start:80px;padding-inline-end:24px}
  .studio-steps li .studio-motif{position:absolute;inset-inline-start:0;inset-block-start:11px;width:70px}
}

/* Each scene has its own motion and a composed static pose. */
.scene-cloche .cloche-lid{transform:translateY(-11px) rotate(-9deg);transform-origin:42px 65px}
.scene-brief .brief-note{transform:translateY(-13px)}
.studio-card-art .studio-motif{width:clamp(90px,12vw,154px)}
.scene-pencil .written,.scene-plane .plane-trail{fill:none}
@media(prefers-reduced-motion:no-preference){
  .scene-cloche.motion-live .cloche-lid{animation:cloche-open 1.2s cubic-bezier(.19,.8,.3,1) both}
  .scene-cloche.motion-live .cloche-bites{animation:served .7s .45s both}
  .scene-cake.motion-live .cake-flame{animation:candle-light 1.1s .25s ease-out 2 both;transform-origin:center;transform-box:fill-box}
  .scene-cake.motion-live .cake-confetti{animation:confetti-open .9s .35s ease-out both;transform-origin:center;transform-box:fill-box}
  .scene-brief.motion-live .brief-note{animation:note-up 1.25s cubic-bezier(.16,.85,.3,1) both}
  .scene-table.motion-live .piece-a{animation:place-left 1s .18s ease-out both}
  .scene-table.motion-live .piece-b{animation:place-right 1s .42s ease-out both}
  .scene-bag.motion-live .bag-check{animation:stamp-in .85s .25s cubic-bezier(.2,1.5,.38,1) both;transform-origin:center;transform-box:fill-box}
  .scene-pencil.motion-live .pencil-tool{animation:pencil-write 1.65s ease-out both}
  .scene-plane.motion-live .paper-plane{animation:plane-glide 1.65s cubic-bezier(.16,.8,.32,1) both}
}
@keyframes cloche-open{from{transform:translateY(5px) rotate(0)}to{transform:translateY(-11px) rotate(-9deg)}}
@keyframes served{from{opacity:.25}to{opacity:1}}
@keyframes candle-light{0%{opacity:0;transform:scale(.5)}45%{opacity:1;transform:scale(1.15)}100%{opacity:1;transform:scale(1)}}
@keyframes confetti-open{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}
@keyframes note-up{from{transform:translateY(13px)}to{transform:translateY(-13px)}}
@keyframes place-left{from{opacity:0;transform:translate(-21px,-12px)}to{opacity:1;transform:translate(0)}}
@keyframes place-right{from{opacity:0;transform:translate(19px,-15px)}to{opacity:1;transform:translate(0)}}
@keyframes stamp-in{from{opacity:0;transform:scale(1.55)}to{opacity:1;transform:scale(1)}}
@keyframes pencil-write{0%{transform:translate(-36px,-10px)}45%{transform:translate(-8px,-10px)}50%{transform:translate(-34px,0)}100%{transform:translate(0)}}
@keyframes plane-glide{from{opacity:.1;transform:translate(-23px,17px) rotate(-9deg)}to{opacity:1;transform:translate(0) rotate(0)}}
@media(max-width:750px){.studio-card-art .studio-motif{width:min(109px,100%)}}

#brand-intro{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;color:#f1d4a3;background:radial-gradient(ellipse at 50% 44%,#503324 0%,#2e1e17 52%,#1c120e 100%)}
#brand-intro[open]{display:grid;place-items:center;animation:intro-exit .42s 2.13s ease-in both}
#brand-intro::backdrop{background:#231611;animation:intro-exit .42s 2.13s ease-in both}
.intro-stage{text-align:center}
.intro-mark{position:relative;width:min(76vw,310px);aspect-ratio:1}
.intro-art{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.intro-mark img{position:absolute;inset:18%;width:64%;height:64%;border-radius:50%;box-shadow:0 14px 48px #180d0877;animation:intro-logo 1.18s .22s cubic-bezier(.2,.75,.25,1) both}
.intro-ring,.intro-arc,.intro-leaves{stroke:url(#intro-gold);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.intro-ring,.intro-arc{stroke-dasharray:1;animation:intro-draw 1.18s ease-out both}
.intro-arc{stroke-width:.8;animation-delay:.25s}
.intro-leaves{stroke-width:1.25;transform-origin:center;animation:intro-leaf .75s .52s ease-out both}
.intro-star{transform-origin:center;transform-box:fill-box;animation:intro-glint .72s 1.05s ease-out both}
.intro-star.second{animation-delay:1.19s}
.intro-caption{margin-top:3px;font-size:13px;letter-spacing:.035em;animation:intro-leaf .65s .9s ease-out both}
@keyframes intro-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes intro-logo{from{opacity:0;transform:translateY(8px) scale(.75);clip-path:circle(18%)}to{opacity:1;transform:translateY(0) scale(1);clip-path:circle(72%)}}
@keyframes intro-leaf{from{opacity:0;transform:scale(.91)}to{opacity:1;transform:scale(1)}}
@keyframes intro-glint{0%{opacity:0;transform:scale(.3)}65%{opacity:1;transform:scale(1.1)}100%{opacity:.78;transform:scale(1)}}
@keyframes intro-exit{to{opacity:0}}

.dish-art{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.dish-steam{stroke-width:2.2;opacity:.65}
@media(prefers-reduced-motion:no-preference){
  .dish-sandwich.motion-live .dish-piece{animation:sandwich-serve 4.8s ease-in-out infinite both}
  .dish-sandwich.motion-live .dish-piece+.dish-piece{animation-delay:.18s}
  .dish-slider.motion-live .dish-steam{animation:burger-steam 1.8s ease-in-out infinite both}
  .dish-slider.motion-live .dish-piece{animation:burger-land 4.8s ease-in-out infinite both}
  .dish-party-box.motion-live .dish-piece{animation:box-fill 4.8s ease-in-out infinite both}
  .dish-party-box.motion-live .dish-piece:nth-of-type(2n){animation-delay:.2s}
  .dish-party-box.motion-live .dish-piece:nth-of-type(3n){animation-delay:.45s}
  .dish-art.motion-live .spark{transform-box:fill-box;transform-origin:center;animation:dish-shine 1.8s .15s ease-in-out infinite both}
}
@keyframes sandwich-serve{0%,100%{opacity:0;transform:translate(-34px,-36px)}24%{opacity:1;transform:translate(4px,0)}33%,88%{opacity:1;transform:translate(0)}}
@keyframes burger-steam{0%,100%{opacity:.12;transform:translateY(7px)}53%{opacity:.95;transform:translateY(-5px)}}
@keyframes burger-land{0%,100%{opacity:0;transform:translateY(-29px)}25%{opacity:1;transform:translateY(4px)}35%,88%{opacity:1;transform:translateY(0)}}
@keyframes box-fill{0%,100%{opacity:0;transform:translateY(-38px)}28%,88%{opacity:1;transform:translateY(0)}}
@keyframes dish-shine{50%{opacity:.3;transform:scale(.5)}}
