.social-dial{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:9999;font-family:'Be Vietnam Pro',sans-serif;color:#36260d;line-height:1.4}.social-dial[hidden],.social-actions[hidden]{display:none}.social-toggle{display:grid;place-items:center;width:56px;height:56px;margin-left:auto;border:1px solid #efc86c;border-radius:50%;background:#36260d;color:#efc86c;cursor:pointer;box-shadow:0 4px 18px #36260d30}.social-toggle svg,.social-icon svg{width:24px;height:24px;display:block}.social-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;padding:12px 0;max-height:calc(100dvh - 100px);overflow-y:auto}.social-actions a{display:flex;flex-direction:row-reverse;align-items:center;gap:10px;text-decoration:none;min-height:44px;font-size:11px;font-weight:600;letter-spacing:.04em;white-space:nowrap}.social-actions a>span:last-child{padding:8px 10px;border-radius:8px;background:#fff9e9;box-shadow:0 2px 8px #36260d25}.social-icon{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:#efc86c;color:#36260d;border:1px solid #79541c50}.social-actions a:focus{outline:none}.social-actions a:focus-visible .social-icon,.social-toggle:focus-visible,.footer-social a:focus-visible{outline:3px solid #79541c;outline-offset:3px}.social-scrim{display:none}.social-scrim[hidden]{display:none}@media(max-width:600px){.social-scrim{display:block;position:fixed;inset:0;background:#36260d26;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.social-toggle{position:relative}.social-actions{z-index:1}}.footer-social{display:flex;flex-wrap:wrap;gap:12px 20px;grid-column:1/-1;font-family:'Be Vietnam Pro',sans-serif;padding:12px 0}.footer-social a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:11px;font-weight:600;text-decoration:none}.social-actions a:hover .social-icon,.footer-social a:hover .social-icon{background:#dab944}@media(prefers-reduced-motion:reduce){.social-toggle svg{transition:none}}
/* Keep expanded contacts above the lower-page primary actions. */
.social-actions{position:fixed;top:90px;right:16px;max-height:calc(100dvh - 180px);padding:8px 0}
/* Shared Sim Farm contact palette and motion. */
:root{--contact-ink:#3e2915;--contact-gold:#efc86c;--contact-cream:#fff9e9}
button,.btn,.button,.navlinks a,summary,.social-actions a,.footer-social a{text-transform:uppercase}
.social-toggle{font-size:10px;font-weight:600;width:64px;height:64px;gap:0;align-content:center}.social-toggle svg{width:22px;height:22px}
.social-actions a{color:var(--contact-ink)}
.social-icon{color:var(--contact-ink);background:var(--contact-gold);transition:background 200ms,color 200ms,transform 200ms}
.footer-social{gap:24px;align-items:start}.footer-social a{display:flex;flex-direction:column;justify-content:center;gap:9px;min-width:76px;color:var(--contact-ink);line-height:1.5;transition:color 200ms}
.social-actions a:is(:hover,:focus-visible) .social-icon,.footer-social a:is(:hover,:focus-visible) .social-icon{background:var(--contact-ink);color:var(--contact-cream);transform:translateY(-2px)}
.footer-social a:is(:hover,:focus-visible){color:#36260d}
.sf-icon{width:24px;height:24px;flex:none;display:inline-block;vertical-align:middle;transform-origin:center}
#orderDialog .contact-actions a{gap:10px;color:var(--contact-ink);background:var(--contact-gold);transition:background 200ms,color 200ms}
#orderDialog .contact-actions #messenger-cta{background:var(--contact-ink);color:var(--contact-cream)}
#orderDialog .contact-actions a:is(:hover,:focus-visible){background:var(--contact-ink);color:var(--contact-cream)}
#orderDialog .contact-actions #messenger-cta:is(:hover,:focus-visible){background:var(--contact-cream);color:var(--contact-ink)}
.footer-note{color:var(--contact-ink)}
@keyframes sf-pop{0%,100%{transform:scale(1)}45%{transform:translateY(-2px) scale(1.08)}}
@keyframes sf-wiggle{0%,100%{transform:rotate(0)}25%{transform:rotate(-9deg)}65%{transform:rotate(8deg)}}
@keyframes sf-nudge{0%,100%{transform:translateX(0)}45%{transform:translateX(3px)}}
a:is(:hover,:focus-visible,:active) .sf-icon,.social-actions:not([hidden]) .sf-icon{animation:sf-pop 450ms ease}
a:is(:hover,:focus-visible,:active) .sf-phone,.social-actions:not([hidden]) .sf-phone{animation-name:sf-wiggle}
a:is(:hover,:focus-visible,:active) .sf-cart,.social-actions:not([hidden]) .sf-cart{animation-name:sf-nudge}
@media(prefers-reduced-motion:reduce){.sf-icon,.social-icon,.footer-social a,.contact-actions a,.social-toggle svg{animation:none!important;transition:none!important;transform:none!important}}

/* Draw the Messenger bolt on hover, keyboard focus, tap and dial expansion. */
@keyframes sf-bolt-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
a:is(:hover,:focus-visible,:active) .sf-messenger .sf-bolt,.social-actions:not([hidden]) .sf-messenger .sf-bolt{stroke-dasharray:1;animation:sf-bolt-draw 450ms ease}
@media(prefers-reduced-motion:reduce){.sf-messenger .sf-bolt{animation:none!important}}

/* Shared contact button: dark surface, honey rim and session-scoped pulse. */
.social-toggle{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;width:64px;height:64px;padding:0;gap:3px;border:2px solid transparent;border-radius:50%;font-family:'Be Vietnam Pro',sans-serif;font-size:10px;font-weight:600;letter-spacing:.04em;line-height:1.4;color:var(--contact-gold);background:linear-gradient(var(--contact-ink),var(--contact-ink)) padding-box,linear-gradient(135deg,var(--contact-cream),var(--contact-gold) 45%,var(--contact-ink) 75%,var(--contact-gold)) border-box;box-shadow:inset 0 2px 0 #fff9e926,0 6px 22px #3e291540;overflow:visible}
.social-toggle>span{order:1;position:relative}
.social-toggle .fab-art{display:block;width:22px;height:22px;transform:none;overflow:visible}
.fab-art .fab-close{opacity:0;transform:rotate(-45deg) scale(.5);transform-origin:center}
.fab-art :is(.fab-phone,.fab-close){transition:opacity .22s,transform .3s}
.social-toggle[aria-expanded=true] .fab-phone{opacity:0;transform:scale(.65);transform-origin:center}
.social-toggle[aria-expanded=true] .fab-close{opacity:1;transform:rotate(0) scale(1)}
.social-actions .social-icon{width:48px;height:48px}
.social-toggle[aria-expanded=false] .fab-phone{transform-origin:center;animation:fab-wiggle 5s ease-in-out infinite}
.social-toggle:before{content:'';position:absolute;inset:-5px;border:1px solid var(--contact-gold);border-radius:inherit;z-index:-1;animation:fab-pulse 4s ease-out infinite;pointer-events:none}
.fab-used .social-toggle:before{animation:none;opacity:0}
.social-toggle:after{content:'';position:absolute;right:2px;top:1px;width:8px;height:8px;background:var(--contact-cream);border:1px solid var(--contact-ink);border-radius:50%;pointer-events:none}
.fab-shine{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none}
.fab-shine:before{content:'';position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 42%,#fff9e91f 50%,transparent 58%);transform:translateX(-100%);animation:fab-shimmer 5s ease-in-out infinite}
@keyframes fab-pulse{0%,65%{transform:scale(1);opacity:0}70%{opacity:.6}100%{transform:scale(1.35);opacity:0}}
@keyframes fab-wiggle{0%,78%,100%{transform:rotate(0)}82%,90%{transform:rotate(-10deg)}86%,94%{transform:rotate(10deg)}}
@keyframes fab-shimmer{0%,75%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
@media(min-width:1024px){.social-toggle{width:162px;flex-direction:row;gap:12px;border-radius:99px;letter-spacing:.12em}}
@media(prefers-reduced-motion:reduce){.social-toggle,.social-toggle *,.social-toggle:before,.social-toggle:after,.fab-shine:before{animation:none!important;transition:none!important}.social-toggle:before,.fab-shine:before{opacity:0}}
