:root{
  --fp-orange:#EF8633; --fp-orange-bright:#F59E4A; --fp-rose:#DEA9A4;
  --fp-flame-top:#FFD072; --fp-crimson:#DD3B30; --fp-ember:#FFB36A;
  --fp-base:#100B09; --fp-surface-1:#181210; --fp-hairline:#3A2F2A;
  --fp-text:#F5F1EE; --fp-text-muted:#C9C0BB; --fp-text-dim:#948B86;
  --fp-flame:linear-gradient(260deg,#FFE6A8 0%,var(--fp-flame-top) 22%,var(--fp-orange) 55%,#E05030 80%,#E8522E 100%);
}

/* ── hide specific Grigora chrome elements ── */
.g-menu, .g-site-title-logo, .g-hamburger, .g-search-new,
.g-social-links, .g-button, .g-cart-launcher {
  display: none !important;
}

.fp-grip-wrap{max-width:680px;margin:0 auto;padding:36px 20px 64px;}
.fp-grip-wrap .eyebrow{font-size:.78rem;font-weight:600;color:var(--fp-crimson);text-transform:uppercase;letter-spacing:.18em;margin:0 0 6px;}
.fp-grip-wrap h1{font-size:1.7rem;font-weight:400;line-height:1.15;margin:0 0 22px;color:var(--fp-flame-top);
  background-image:var(--fp-flame);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 0 22px rgba(239,134,51,.18));}

/* ── stage uses percentage positioning so it scales naturally ── */
.fp-grip-stage{position:relative;width:100%;height:440px;border-radius:18px;overflow:hidden;
  background:radial-gradient(120% 120% at 70% 100%,#1b1310 0%,var(--fp-surface-1) 55%,#140d0b 100%);
  border:1px solid var(--fp-hairline);box-shadow:0 0 28px rgba(221,59,48,.18),0 18px 48px rgba(0,0,0,.55);}

/* ── Elements positioned as percentages of stage width/height ── */
/* All percentages calculated from 680x440 base: left = px/680*100, bottom = px/440*100 */

.fp-grip-band{position:absolute;left:3.5%;bottom:15.9%;width:44%;border-radius:8px;
  background:#16302a;border:1.5px solid #5bbd9e;height:13.5%;}
.fp-grip-bandlabel{position:absolute;left:3.8%;bottom:31%;color:#9fe6d0;font-size:.8rem;font-weight:600;z-index:3;pointer-events:none;}
.fp-grip-scrawny{position:absolute;left:6.5%;bottom:18%;width:8%;height:auto;opacity:0;
  animation:fade .7s ease forwards 1.4s;}

.fp-grip-roof{position:absolute;left:0;right:0;top:27.5%;height:3.5%;background:#2A221E;border-top:1px solid #3A2F2A;border-bottom:1px solid #3A2F2A;}
.fp-grip-rooflabel{position:absolute;left:3.5%;top:22%;color:#C9C0BB;font-size:.78rem;font-weight:500;
  white-space:nowrap;z-index:2;}
.fp-grip-roofhole{position:absolute;left:44%;top:26.5%;width:9.5%;height:5%;background:var(--fp-base);opacity:0;}

.fp-grip-barwrap{position:absolute;left:44%;bottom:15.9%;width:9.5%;height:68%;}
.fp-grip-bar{position:absolute;bottom:0;left:12.5%;width:75%;height:100%;border-radius:4px 4px 0 0;
  background:linear-gradient(0deg,#C96A1F,#EF8633 55%,#E8522E);
  transform:scaleY(0);transform-origin:bottom;animation:grow 2.6s cubic-bezier(.5,.02,.3,1) forwards 2s;}
.fp-grip-rider{position:absolute;left:-6.5%;bottom:0;width:72%;height:auto;transform-origin:center bottom;
  animation:ride 2.6s cubic-bezier(.5,.02,.3,1) forwards 2s;}

.fp-grip-glow{position:absolute;left:29.5%;top:4.5%;width:44%;height:54%;border-radius:50%;opacity:0;
  background:radial-gradient(circle,rgba(255,179,106,.35),rgba(255,179,106,.08) 50%,rgba(221,59,48,0) 100%);}
.fp-grip-alarm{position:absolute;left:0;right:0;top:0;height:27%;background:var(--fp-crimson);opacity:0;}

.fp-grip-callout{position:absolute;left:3.5%;top:6.8%;display:flex;align-items:center;gap:10px;opacity:0;}
.fp-grip-callout .warn{width:34px;height:30px;display:grid;place-items:center;
  clip-path:polygon(50% 0,100% 100%,0 100%);background:var(--fp-crimson);color:#FFE6A8;font-weight:800;}
.fp-grip-callout .bignum{font-size:1.5rem;font-weight:800;color:#FFE6A8;line-height:1;}
.fp-grip-callout .subnum{font-size:.78rem;color:var(--fp-rose);}

.fp-grip-baseline{position:absolute;left:3.5%;bottom:15.7%;width:44%;height:1.5px;background:#3A2F2A;}

.go .fp-grip-roofhole,.go .fp-grip-glow,.go .fp-grip-alarm,.go .fp-grip-callout{animation:fade .5s ease forwards;}
.go .fp-grip-alarm{animation:alarm 1.4s ease-in-out 2;}
.shake{animation:shake .55s ease;}

@keyframes fade{to{opacity:1;}}
@keyframes grow{to{transform:scaleY(1);}}
@keyframes ride{0%{bottom:0;transform:scale(.6);}55%{transform:scale(1.1);}100%{bottom:67%;transform:scale(2.9);}}
@keyframes alarm{0%,100%{opacity:.12;}50%{opacity:.6;}}
@keyframes shake{0%,100%{transform:translateX(0);}25%{transform:translateX(-5px);}50%{transform:translateX(5px);}75%{transform:translateX(-3px);}}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001s!important;}}

.fp-grip-wrap .cap{font-size:.98rem;color:var(--fp-text-muted);margin:16px 4px 0;line-height:1.6;}
.fp-grip-wrap .cap strong{color:var(--fp-text);}
.fp-grip-wrap button{margin-top:18px;font:inherit;font-weight:600;border:0;border-radius:999px;cursor:pointer;
  padding:.7em 1.4em;color:var(--fp-base);background:var(--fp-orange);box-shadow:0 0 22px rgba(239,134,51,.45);}
.fp-grip-wrap button:hover{background:var(--fp-orange-bright);}

/* ── mobile: stage height scales proportionally ── */
@media (max-width: 720px) {
  .fp-grip-stage {
    height: calc(440px * (100vw - 40px) / 680);
  }
  .fp-grip-wrap h1 { font-size: 1.2rem; }
  .fp-grip-wrap .cap { font-size: .85rem; }
}