/* Shared base (so /shop/ works without the homepage stylesheet) */
:where(.ffx,.ffx *){box-sizing:border-box;margin:0;padding:0;}
html,body{overflow-x:clip;}
.ffx{--navy:#050d26;--blue:#1646d6;--ink:#0b1533;--muted:#56607a;--tint:#f3f6ff;--gold:linear-gradient(135deg,#fff3b0 0%,#f2c94c 28%,#c9971c 58%,#f7e08a 80%,#b8860b 100%);font-family:"Poppins",sans-serif;color:var(--ink);line-height:1.6;width:100vw;margin-left:calc(50% - 50vw);}
.ffx a{text-decoration:none !important;}
.ffx-wrap{max-width:1200px;margin:0 auto;padding:0 24px;}
.ffx-eyebrow{display:inline-flex;align-items:center;gap:8px;font:italic 800 16px "Barlow Condensed",sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--blue);margin-bottom:12px;}
.ffx-eyebrow:before{content:"";width:28px;height:2px;background:var(--gold);}
.ffx h2.ffx-h2{font:800 clamp(30px,4vw,48px)/1.12 "Poppins",sans-serif;letter-spacing:-1px;color:var(--ink);margin-bottom:16px;text-transform:none;}
.ffx-lead{font-size:18px;color:var(--muted);max-width:640px;}
.ffx-goldtxt{background:var(--gold);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:ffxShine 5s linear infinite;}
@keyframes ffxShine{to{background-position:-200% 0;}}
@keyframes ffxSweep{0%,60%{left:-60%}100%{left:130%}}
.ffx-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 30px;border-radius:999px;font:700 15px "Poppins",sans-serif;letter-spacing:.6px;text-transform:uppercase;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden;border:0;cursor:pointer;}
.ffx-btn svg{width:20px;height:20px;flex:none;}
.ffx-btn--gold{background:var(--gold);background-size:160% 100%;color:#07163f !important;box-shadow:0 12px 30px rgba(201,151,28,.35),inset 0 1px 0 rgba(255,255,255,.6);}
.ffx-btn:hover{transform:translateY(-2px);}
.ffx :focus-visible,.ffs-modal :focus-visible{outline:3px solid #f2c94c !important;outline-offset:3px;}

