:root{--black:#080808;--white:#f6f4f0;--wine:#cdc6c6;--wine2:#830000;--muted:#993939;--line:rgba(246,244,240,.15);--ease:cubic-bezier(.2,.8,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:Inter,Arial,sans-serif;overflow-x:hidden}.noise{position:fixed;inset:0;pointer-events:none;opacity:.04;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E")}.site-header{position:sticky;top:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:22px 5vw;background:rgba(8,8,8,.84);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.brand{display:flex;flex-direction:column;color:var(--white);text-decoration:none;line-height:1}.brand span{font-weight:900;letter-spacing:.12em;font-size:1.25rem}.brand small{font-size:.47rem;letter-spacing:.34em;margin-top:6px;color:var(--muted)}.main-nav{display:flex;gap:28px}.main-nav a,.site-footer a{color:var(--muted);text-decoration:none;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;transition:color .3s}.main-nav a:hover,.site-footer a:hover{color:var(--white)}.header-actions{display:flex;gap:12px;align-items:center}.lang-btn,.bag-link{border:1px solid var(--line);background:transparent;color:var(--white);padding:9px 12px;text-decoration:none;cursor:pointer}.section{padding:120px 5vw;max-width:1500px;margin:auto}.hero{min-height:720px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6vw;padding-top:90px}.eyebrow{font-size:.68rem;letter-spacing:.24em;color:#9d1414;text-transform:uppercase}.hero h1{font-size:clamp(4rem,8vw,9rem);line-height:.86;letter-spacing:-.08em;margin:25px 0}.hero h1 em{font-style:normal;color:#89001b}.hero-description{max-width:420px;color:var(--muted);line-height:1.8}.hero-actions{display:flex;gap:25px;align-items:center;margin-top:35px}.btn{display:inline-flex;justify-content:center;align-items:center;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;font-weight:800;padding:16px 22px;transition:transform .3s,background .3s}.btn-primary{background:var(--wine2);color:var(--white)}.btn-primary:hover{background:#770101;transform:translateY(-4px)}.text-link{color:var(--white);text-decoration:none;border-bottom:1px solid var(--white);padding-bottom:6px;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.hero-art{position:relative;min-height:520px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 45%,#551725 0,#1b0b11 30%,transparent 65%)}.hero-mark{font-size:clamp(10rem,22vw,23rem);font-weight:900;letter-spacing:-.15em;transform:rotate(-14deg);color:transparent;-webkit-text-stroke:1px rgba(246,244,240,.4);animation:float 7s ease-in-out infinite}.hero-mark span{color:var(--wine2);-webkit-text-stroke:0}.orb{position:absolute;border:1px solid rgba(246,244,240,.2);border-radius:50%;animation:spin 30s linear infinite}.orb-one{width:80%;aspect-ratio:1}.orb-two{width:55%;aspect-ratio:1;border-color:rgba(169,106,119,.55);animation-direction:reverse}.floating-note{position:absolute;font-size:.58rem;letter-spacing:.18em;color:var(--muted)}.note-one{top:18%;left:5%}.note-two{bottom:15%;right:4%}.ticker{overflow:hidden;border-block:1px solid var(--line);padding:17px 0;background:var(--wine)}.ticker-track{display:flex;width:max-content;gap:35px;align-items:center;animation:marquee 25s linear infinite;font-size:.75rem;letter-spacing:.18em}.ticker b{color:#ab1919}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:50px}.section-heading h2,.about-copy h2{font-size:clamp(2.4rem,5vw,5.5rem);line-height:.95;letter-spacing:-.07em;margin:20px 0}.section-intro{max-width:300px;color:var(--muted);line-height:1.7}.shop-tools{display:grid;grid-template-columns:1fr 220px 220px;gap:12px}.search-box{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:0 16px}.search-box span{font-size:1.4rem}.search-box input,.shop-tools select{width:100%;background:#101010;color:var(--white);border:0;outline:0;padding:17px;font:inherit;font-size:.8rem}.shop-tools select{border:1px solid var(--line)}.category-tabs{display:flex;gap:10px;margin:28px 0}.category-tabs button{background:transparent;color:var(--muted);border:1px solid var(--line);padding:10px 17px;text-transform:uppercase;font-size:.65rem;letter-spacing:.12em;cursor:pointer}.category-tabs button.active,.category-tabs button:hover{background:var(--white);color:var(--black)}.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.product-card{background:#101010;border:1px solid transparent;cursor:pointer;transition:transform .45s var(--ease),border-color .45s;animation:cardIn .7s both}.product-card:hover{transform:translateY(-10px);border-color:var(--wine2)}.product-image{aspect-ratio:4/5;background:linear-gradient(145deg,#1c1c1c,#080808);padding:20px;display:grid;place-items:center;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain;transition:transform .6s var(--ease)}.product-card:hover .product-image img{transform:scale(1.08) rotate(-2deg)}.product-meta{padding:18px}.product-meta h3{margin:7px 0;font-size:1rem}.product-meta p{margin:0;color:var(--muted);font-size:.75rem}.product-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:18px;font-size:.8rem}.product-bottom span:last-child{color:#500303}.empty-state{color:var(--muted);padding:50px 0}.hidden{display:none!important}.marquee-showcase{overflow:hidden;border-block:1px solid var(--line);padding:30px 0;background:#0d0d0d}.showcase-track{display:flex;gap:16px;width:max-content;animation:marquee 45s linear infinite}.showcase-item{width:240px;aspect-ratio:1;background:#151515;display:grid;place-items:center;color:#6e2838;font-weight:900;font-size:5rem;letter-spacing:-.12em}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.about-visual{min-height:560px;background:linear-gradient(135deg,var(--wine),#14070b);display:grid;place-items:center;position:relative;overflow:hidden}.about-monogram{font-size:18rem;line-height:.7;font-weight:900;letter-spacing:-.2em;transform:rotate(-15deg);color:transparent;-webkit-text-stroke:1px rgba(246,244,240,.65)}.about-monogram span{color:var(--white);-webkit-text-stroke:0}.vertical-label{position:absolute;bottom:25px;left:25px;writing-mode:vertical-rl;font-size:.6rem;letter-spacing:.25em}.about-copy p:not(.eyebrow){color:var(--muted);line-height:1.9;max-width:560px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-card{display:flex;flex-direction:column;gap:20px;background:#111;padding:30px;color:var(--white);text-decoration:none;border:1px solid var(--line);transition:background .3s,transform .3s}.contact-card:hover{background:var(--wine);transform:translateY(-5px)}.contact-label{color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.15em}.contact-card strong{font-size:clamp(1.2rem,2vw,2rem);word-break:break-word}.back-to-top{position:fixed;right:24px;bottom:24px;z-index:25;width:48px;height:48px;border:1px solid rgba(246,244,240,.3);border-radius:50%;background:var(--wine2);color:var(--white);display:grid;place-items:center;gap:0;font-size:1.1rem;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(18px);transition:opacity .35s,visibility .35s,transform .35s,background .3s}.back-to-top span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:#982e46;transform:translateY(-4px)}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:35px 5vw;border-top:1px solid var(--line);color:var(--muted);font-size:.75rem}.modal{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:20px}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.8);backdrop-filter:blur(12px)}.modal-card{position:relative;z-index:1;max-width:900px;width:100%;background:#111;border:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;max-height:90vh;overflow:auto}.modal-close{position:absolute;right:15px;top:10px;background:transparent;border:0;color:var(--white);font-size:2rem;cursor:pointer;z-index:2}.modal-image-wrap{min-height:450px;background:linear-gradient(145deg,#252525,#080808);display:grid;place-items:center}.modal-image-wrap img{width:90%;height:90%;object-fit:contain}.modal-info{padding:45px 35px}.modal-info h2{font-size:2.6rem;letter-spacing:-.06em;margin:15px 0}.modal-info p:not(.eyebrow){color:var(--muted);line-height:1.7}.modal-price{font-size:1.3rem;margin:20px 0}.option-block{margin:22px 0}.option-block label{display:block;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px}.color-options,.size-options{display:flex;gap:8px;flex-wrap:wrap}.color-dot,.size-chip{border:1px solid var(--line);background:transparent;color:var(--white);cursor:pointer;padding:10px 13px}.color-dot{width:34px;height:34px;padding:0;border-radius:50%;position:relative}.color-dot.active:after{content:'';position:absolute;inset:-4px;border:1px solid var(--white);border-radius:50%}.size-chip.active{background:var(--white);color:var(--black)}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes float{0%,100%{transform:rotate(-14deg) translateY(0)}50%{transform:rotate(-10deg) translateY(-20px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes cardIn{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}.reveal{animation:cardIn 1s both}.delay-1{animation-delay:.18s}@media(max-width:1000px){.products-grid{grid-template-columns:repeat(3,1fr)}.hero{grid-template-columns:1fr}.hero-art{min-height:400px}.shop-tools{grid-template-columns:1fr 1fr}.search-box{grid-column:1/-1}.about-section{grid-template-columns:1fr}.about-visual{min-height:400px}}@media(max-width:650px){.back-to-top{right:16px;bottom:16px;width:44px;height:44px}.site-header{padding:18px 4vw}.main-nav{display:none}.section{padding:80px 5vw}.hero{min-height:auto}.hero h1{font-size:4.6rem}.section-heading{display:block}.section-intro{margin-top:25px}.products-grid{grid-template-columns:repeat(2,1fr);gap:10px}.product-meta{padding:12px}.shop-tools{grid-template-columns:1fr}.category-tabs{overflow:auto}.contact-grid{grid-template-columns:1fr}.site-footer{flex-direction:column;align-items:flex-start}.modal-card{grid-template-columns:1fr}.modal-image-wrap{min-height:280px}.modal-info{padding:30px 24px}}

/* Keep phone numbers visually left-to-right in both languages. */
.phone-number{direction:ltr;unicode-bidi:isolate;display:inline-block;text-align:left;}
/* ضبط حجم شعار المخالب */
/* =================================
   RAPTOR CLAW LOGO
================================= */

.hero-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}

.hero-mark .logo-claws {
  display: block;
  width: 200px;
  height: auto;
  max-width: 80%;
  max-height: 60vh;
  object-fit: contain;
  object-position: center;

  /* Animation */
  animation: clawFloat 7s ease-in-out infinite;

  /* Burgundy glow */
  filter:
    drop-shadow(0 0 12px rgba(176, 1, 1, 0.45))
    drop-shadow(0 0 32px rgba(116, 31, 50, 0.20));
}

/* Floating animation */
@keyframes clawFloat {
  0%, 100% {
    transform: translateY(0) scale(1);
  }

  50% {
    transform: translateY(-12px) scale(1.025);
  }
}

/* Desktop */
@media (min-width: 768px) {
  .hero-mark .logo-claws {
    width: 300px;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .hero-mark .logo-claws {
    width: 220px;
    max-width: 75%;
  }
}
/* FIX ABOUT IMAGE - RAPTOR */

#about .about-visual {
  width: 100%;
  height: auto;
  min-height: 0;
  overflow: visible !important;
  clip-path: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
}

#about .about-visual img {
  display: block;
  width: 100% !important;
  max-width: 600px !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center !important;
  margin: 0 auto;
}

/* Keep the full poster visible */

#about .about-monogram {
  display: none;
}

/* Mobile */

@media (max-width: 768px) {
  #about .about-visual img {
    width: 100% !important;
    max-width: 500px !important;
    height: auto !important;
  }
}
/* =================================
   RAPTOR - DARK PREMIUM THEME
================================= */

/* Main website background */
html {
  background: #000 !important;
}

body {
  background: #000 !important;
  color: #fff;
}

/* All main sections */
main,
section,
.hero,
.shop-section,
.about-section,
.contact-section,
.site-footer {
  background-color: #000 !important;
}

/* Darker header */
.site-header,
header {
  background: #000 !important;
  border-bottom-color: #222 !important;
}

/* Product cards */
.product-card {
  background: #080808 !important;
  border-color: #1b1b1b !important;
}

/* Search and filter controls */
input,
select,
.search-box {
  background-color: #080808 !important;
  color: #fff !important;
  border-color: #292929 !important;
}

/* Secondary text */
p,
.description {
  color: #a0a0a0;
}

/* Footer */
.site-footer {
  background: #000 !important;
  border-top-color: #1d1d1d !important;
}

/* About section */
#about {
  background: #000 !important;
}
/* RAPTOR Music Player */
.music-player {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 9999;

  display: flex;
  align-items: center;
  gap: 14px;

  max-width: calc(100vw - 30px);
  padding: 12px 16px;

  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 18px;

  background: rgba(15, 15, 15, 0.96);
  color: #fff;

  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4);
}

.music-info {
  display: flex;
  flex-direction: column;
  min-width: 0;
  max-width: 150px;
}

.music-label {
  color: #999;
  font-size: 9px;
  letter-spacing: 1.5px;
}

#musicTitle {
  margin-top: 4px;
  overflow: hidden;

  color: #fff;
  font-size: 12px;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.music-controls {
  display: flex;
  align-items: center;
  gap: 6px;
}

.music-controls button {
  width: 32px;
  height: 32px;

  border: none;
  border-radius: 50%;

  background: #292929;
  color: #fff;
  font-size: 13px;
  cursor: pointer;
}

.music-controls button:hover {
  background: #800020;
}

#musicToggle {
  background: #800020;
}

#musicVolume {
  width: 65px;
  accent-color: #800020;
  cursor: pointer;
}

@media (max-width: 600px) {
  .music-player {
    right: 10px;
    bottom: 10px;
    gap: 8px;
    padding: 10px;
  }

  .music-info {
    max-width: 100px;
  }

  #musicVolume {
    display: none;
  }
}

/* =========================================================
   RAPTOR UI UPGRADE — BLACK / WHITE / RED
   This section overrides the previous wine/burgundy styling.
   ========================================================= */

:root {
  --black: #050505;
  --white: #ffffff;
  --wine: #ffffff;
  --wine2: #e10600;
  --muted: #b8b8b8;
  --line: rgba(255, 255, 255, 0.18);
  --raptor-red: #e10600;
  --raptor-red-dark: #a80000;
  --raptor-panel: #101010;
  --raptor-panel-2: #171717;
  --raptor-shadow: rgba(0, 0, 0, 0.55);
}

/* General contrast and typography */
body {
  background: var(--black);
  color: var(--white);
}

::selection {
  background: var(--raptor-red);
  color: var(--white);
}

.hero h1 em,
.eyebrow,
.ticker b {
  color: var(--raptor-red);
}

.hero-description,
.section-intro,
.product-meta p,
.empty-state,
.about-copy p:not(.eyebrow),
.floating-note,
.contact-label,
.site-footer {
  color: var(--muted);
}

.btn-primary,
.back-to-top,
#musicToggle,
.music-controls button:hover {
  background: var(--raptor-red);
  color: var(--white);
}

.btn-primary:hover,
.back-to-top:hover {
  background: var(--raptor-red-dark);
}

.ticker {
  background: var(--white);
  color: var(--black);
}

.ticker-track,
.ticker b {
  color: var(--black);
}

.category-tabs button.active,
.category-tabs button:hover,
.size-chip.active {
  background: var(--white);
  color: var(--black);
}

.product-card:hover {
  border-color: var(--raptor-red);
}

.product-bottom span:last-child {
  color: var(--raptor-red);
}

.contact-card:hover {
  background: var(--raptor-red);
  color: var(--white);
}

.hero-art {
  background: radial-gradient(
    circle at 50% 45%,
    #3a0909 0,
    #160606 32%,
    transparent 68%
  );
}

.hero-mark span {
  color: var(--raptor-red);
}

.about-visual {
  background: linear-gradient(135deg, #ffffff, #1a0000);
}

.about-monogram span {
  color: var(--black);
}

.showcase-item {
  color: var(--raptor-red);
}

/* =========================================================
   MUSIC PLAYER — MOBILE FRIENDLY / COLLAPSIBLE
   Add the .music-player-expanded class with JavaScript.
   ========================================================= */

.music-player {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 9999;

  display: flex;
  align-items: center;
  gap: 12px;

  width: auto;
  max-width: calc(100vw - 24px);
  padding: 9px;

  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  background: rgba(8, 8, 8, 0.94);
  color: var(--white);
  box-shadow: 0 12px 35px var(--raptor-shadow);
  backdrop-filter: blur(16px);

  transform: translateZ(0);
  transition:
    width 0.4s cubic-bezier(.2,.8,.2,1),
    border-radius 0.4s ease,
    padding 0.4s ease,
    box-shadow 0.4s ease;
  animation: musicFloat 4s ease-in-out infinite;
}

.music-player:not(.music-player-expanded) {
  width: 58px;
  height: 58px;
  justify-content: center;
  padding: 8px;
}

.music-player:not(.music-player-expanded) .music-info,
.music-player:not(.music-player-expanded) .music-controls button:not(#musicToggle),
.music-player:not(.music-player-expanded) #musicVolume {
  display: none;
}

.music-player.music-player-expanded {
  border-radius: 22px;
  padding: 12px 14px;
  animation: musicOpen 0.35s ease both;
}

.music-player .music-info {
  min-width: 0;
  max-width: 145px;
}

.music-label {
  color: #8d8d8d;
  font-size: 9px;
  letter-spacing: 1.4px;
}

#musicTitle {
  display: block;
  margin-top: 4px;
  overflow: hidden;
  color: var(--white);
  font-size: 12px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.music-controls {
  display: flex;
  align-items: center;
  gap: 6px;
}

.music-controls button {
  width: 34px;
  height: 34px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 50%;
  background: #242424;
  color: var(--white);
  font-size: 13px;
  cursor: pointer;
  transition: transform 0.2s ease, background 0.2s ease;
}

.music-controls button:hover {
  transform: translateY(-2px);
}

#musicToggle {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border: 0;
  border-radius: 50%;
  background: var(--raptor-red);
  color: var(--white);
  box-shadow: 0 0 0 0 rgba(225, 6, 0, 0.55);
  animation: musicPulse 2.4s infinite;
}

#musicVolume {
  display: block;
  width: 82px;
  min-width: 82px;
  accent-color: var(--raptor-red);
  cursor: pointer;
}

/* Optional expand/collapse button if added to HTML */
#musicExpandToggle {
  width: 30px;
  height: 30px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 50%;
  background: transparent;
  color: var(--white);
  cursor: pointer;
}

@keyframes musicFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}

@keyframes musicPulse {
  0% { box-shadow: 0 0 0 0 rgba(225, 6, 0, 0.45); }
  70% { box-shadow: 0 0 0 12px rgba(225, 6, 0, 0); }
  100% { box-shadow: 0 0 0 0 rgba(225, 6, 0, 0); }
}

@keyframes musicOpen {
  from { opacity: 0.65; transform: scale(0.92); }
  to { opacity: 1; transform: scale(1); }
}

/* Mobile: keep volume visible inside the expanded player */
@media (max-width: 600px) {
  .music-player {
    right: 12px;
    bottom: 12px;
  }

  .music-player.music-player-expanded {
    width: min(355px, calc(100vw - 24px));
    gap: 7px;
    padding: 10px;
  }

  .music-player.music-player-expanded .music-info {
    max-width: 92px;
  }

  .music-player.music-player-expanded #musicVolume {
    display: block;
    width: 62px;
    min-width: 62px;
  }

  .music-player.music-player-expanded .music-controls {
    gap: 4px;
  }

  .music-player.music-player-expanded .music-controls button {
    width: 31px;
    height: 31px;
  }

  .music-player.music-player-expanded #musicToggle {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
  }
}

/* General premium polish */
.btn,
.lang-btn,
.bag-link,
.category-tabs button,
.search-box,
.shop-tools select,
.contact-card,
.product-card {
  transition:
    transform 0.3s var(--ease),
    background 0.3s ease,
    border-color 0.3s ease,
    color 0.3s ease,
    box-shadow 0.3s ease;
}

.btn-primary:hover,
.lang-btn:hover,
.bag-link:hover {
  box-shadow: 0 8px 25px rgba(225, 6, 0, 0.2);
}

input:focus,
select:focus,
button:focus-visible,
a:focus-visible {
  outline: 2px solid var(--raptor-red);
  outline-offset: 3px;
}
/* RAPTOR MUSIC PLAYER - FINAL DESIGN */

.music-player {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 9999;

  display: flex;
  align-items: center;
  gap: 12px;

  background: #080808;
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #ffffff;
  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.4);

  transition: all 0.3s ease;
  user-select: none;
  touch-action: none;
}

/* المشغل مغلق */
.music-player:not(.music-player-expanded) {
  width: 62px;
  height: 62px;
  border-radius: 50%;
  padding: 0;
  justify-content: center;
  overflow: hidden;
}

/* أيقونة الموسيقى */
.music-expand-button {
  width: 62px;
  height: 62px;
  flex-shrink: 0;

  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #ffffff;

  font-size: 32px;
  font-weight: 700;
  cursor: pointer;

  display: flex;
  align-items: center;
  justify-content: center;

  animation: raptorMusicPulse 2s infinite;
}

.music-expand-button:hover {
  color: #e10600;
  transform: scale(1.1);
}

/* إخفاء التفاصيل عند الإغلاق */
.music-player:not(.music-player-expanded)
.music-info,

.music-player:not(.music-player-expanded)
.music-controls,

.music-player:not(.music-player-expanded)
#musicVolume {
  display: none;
}

/* المشغل المفتوح */
.music-player.music-player-expanded {
  min-width: 290px;
  min-height: 70px;
  padding: 10px 14px;
  border-radius: 18px;
}

/* حجم زر الأيقونة عند الفتح */
.music-player-expanded
.music-expand-button {
  width: 34px;
  height: 34px;
  font-size: 24px;
  animation: none;
}

/* اسم الأغنية */
.music-player .music-info {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.music-player #musicTitle {
  max-width: 150px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 12px;
}

/* أزرار التحكم */
.music-player .music-controls {
  display: flex;
  align-items: center;
  gap: 5px;
}

.music-player .music-controls button {
  border: 0;
  background: transparent;
  color: #ffffff;
  cursor: pointer;
  font-size: 16px;
  padding: 5px;
}

.music-player .music-controls button:hover {
  color: #e10600;
}

/* شريط الصوت */
.music-player #musicVolume {
  width: 70px;
  cursor: pointer;
}

/* الحركة */
@keyframes raptorMusicPulse {
  0%,
  100% {
    filter: drop-shadow(0 0 0 rgba(225, 6, 0, 0));
  }

  50% {
    filter: drop-shadow(0 0 10px rgba(225, 6, 0, 0.7));
  }
}

/* الموبايل */
@media (max-width: 600px) {
  .music-player {
    right: 15px;
    bottom: 15px;
  }

  .music-player.music-player-expanded {
    width: calc(100vw - 30px);
    min-width: 0;
    max-width: 360px;
  }

  .music-player-expanded
  #musicVolume {
    display: block !important;
    width: 60px;
  }

  .music-player-expanded
  #musicTitle {
    max-width: 105px;
  }
}
/* Music floating icon */
.music-expand-button {
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 50%;
  background: #800020;
  color: white;
  font-size: 22px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.music-expand-button:hover {
  background: #a0002b;
  transform: scale(1.08);
}

.music-player.collapsed .music-info,
.music-player.collapsed .music-controls,
.music-player.collapsed #musicVolume {
  display: none;
}

.music-player.collapsed {
  padding: 8px;
  border-radius: 50%;
  cursor: grab;
}
/* FINAL FIX: keep the music icon visible */
.music-player .music-expand-button {
  position: relative;
  z-index: 3;
  visibility: visible !important;
  opacity: 1 !important;
}


/* FINAL CLEAN MUSIC PLAYER OVERRIDES */
#raptorMusicPlayer {
  display: flex !important;
  position: fixed !important;
  left: 18px !important;
  top: auto !important;
  right: auto !important;
  bottom: 18px !important;
  z-index: 2147483647 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#raptorMusicPlayer:not(.music-player-expanded) {
  width: 62px !important;
  height: 62px !important;
  min-width: 62px !important;
  min-height: 62px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  overflow: hidden !important;
  justify-content: center !important;
  background: #800020 !important;
}

#raptorMusicPlayer.music-player-expanded {
  width: auto !important;
  height: auto !important;
  min-width: 290px !important;
  min-height: 70px !important;
  padding: 10px 14px !important;
  border-radius: 18px !important;
  overflow: visible !important;
  justify-content: flex-start !important;
}

#raptorMusicPlayer .music-expand-button {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  z-index: 2147483647 !important;
  cursor: pointer !important;
}

#raptorMusicPlayer:not(.music-player-expanded) .music-info,
#raptorMusicPlayer:not(.music-player-expanded) .music-controls,
#raptorMusicPlayer:not(.music-player-expanded) #musicVolume {
  display: none !important;
}

#raptorMusicPlayer.music-player-expanded .music-info,
#raptorMusicPlayer.music-player-expanded .music-controls,
#raptorMusicPlayer.music-player-expanded #musicVolume {
  display: flex !important;
}

#raptorMusicPlayer.music-player-expanded #musicVolume {
  display: block !important;
}

@media (max-width: 600px) {
  #raptorMusicPlayer.music-player-expanded {
    width: calc(100vw - 30px) !important;
    min-width: 0 !important;
    max-width: 360px !important;
  }
}


/* =========================================================
   FINAL MUSIC PLAYER FIX — BURGUNDY / RESPONSIVE / DRAGGABLE
   ========================================================= */
#raptorMusicPlayer {
  --music-burgundy: #800020;
  --music-burgundy-dark: #5d0018;
  position: fixed !important;
  z-index: 2147483000 !important;
  box-sizing: border-box;
  max-width: calc(100vw - 16px) !important;
  max-height: calc(100dvh - 16px) !important;
  touch-action: none;
  user-select: none;
  -webkit-user-select: none;
  transition: width .22s ease, min-height .22s ease, border-radius .22s ease, padding .22s ease, box-shadow .22s ease !important;
}
#raptorMusicPlayer *,
#raptorMusicPlayer *::before,
#raptorMusicPlayer *::after { box-sizing: border-box; }
#raptorMusicPlayer .music-expand-button {
  flex: 0 0 42px;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px;
  min-height: 42px;
  display: grid !important;
  place-items: center;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 50% !important;
  background: var(--music-burgundy) !important;
  color: #fff !important;
  font-size: 22px !important;
  line-height: 1;
  cursor: grab;
  touch-action: none;
}
#raptorMusicPlayer .music-expand-button:active { cursor: grabbing; }
#raptorMusicPlayer #musicToggle { background: var(--music-burgundy) !important; }
#raptorMusicPlayer .music-controls button:hover { background: var(--music-burgundy-dark) !important; }
#raptorMusicPlayer #musicVolume { accent-color: var(--music-burgundy) !important; }
#raptorMusicPlayer.is-dragging { animation: none !important; transition: none !important; cursor: grabbing; }
#raptorMusicPlayer.is-dragging * { transition: none !important; }
#raptorMusicPlayer.music-player-expanded {
  width: min(430px, calc(100vw - 16px)) !important;
  max-width: calc(100vw - 16px) !important;
  min-height: 66px;
  overflow: hidden;
}
#raptorMusicPlayer.music-player-expanded .music-info { flex: 1 1 90px; min-width: 0; max-width: min(145px, 32vw); }
#raptorMusicPlayer.music-player-expanded .music-controls { flex: 0 0 auto; }
@media (max-width: 520px) {
  #raptorMusicPlayer.music-player-expanded { gap: 7px !important; padding: 8px !important; }
  #raptorMusicPlayer.music-player-expanded .music-info { max-width: 88px; }
  #raptorMusicPlayer .music-controls { gap: 3px !important; }
  #raptorMusicPlayer .music-controls button { width: 31px !important; height: 31px !important; }
}


/* =========================================================
   RAPTOR MUSIC PLAYER v4 — FREE DRAG / NO GROWING / FLUID DOT
   ========================================================= */
#raptorMusicPlayer {
  animation: none !important;
  transform-origin: center center !important;
  transition: left .08s linear, top .08s linear, box-shadow .2s ease !important;
  will-change: left, top;
  cursor: grab !important;
}
#raptorMusicPlayer.is-dragging {
  cursor: grabbing !important;
  animation: none !important;
  transform: none !important;
}
#raptorMusicPlayer.is-dragging,
#raptorMusicPlayer.is-dragging * {
  transition: none !important;
}
#raptorMusicPlayer .music-expand-button,
#raptorMusicPlayer .music-expand-button:active,
#raptorMusicPlayer .music-expand-button:hover {
  cursor: grab !important;
  transform: none !important;
}
#raptorMusicPlayer.is-dragging .music-expand-button {
  cursor: grabbing !important;
}
/* Keep the compact player as a small interactive floating bar. */
#raptorMusicPlayer:not(.music-player-expanded) {
  width: 58px !important;
  min-width: 58px !important;
  height: 58px !important;
  min-height: 58px !important;
  padding: 8px !important;
  border-radius: 999px !important;
}
#raptorMusicPlayer.music-player-expanded {
  animation: none !important;
  transform: none !important;
}
/* Smooth animated progress-like glow around the note button. */
#raptorMusicPlayer .music-expand-button {
  position: relative;
  isolation: isolate;
  overflow: visible !important;
  box-shadow: 0 0 0 0 rgba(128,0,32,.42);
  animation: raptorNoteGlow 2.2s ease-in-out infinite !important;
}
#raptorMusicPlayer .music-expand-button::after {
  content: '';
  position: absolute;
  inset: -4px;
  border: 1px solid rgba(128,0,32,.5);
  border-radius: inherit;
  opacity: .7;
  pointer-events: none;
  animation: raptorNoteRing 2.2s ease-out infinite;
}
@keyframes raptorNoteGlow {
  0%,100% { box-shadow: 0 0 0 0 rgba(128,0,32,.25); }
  50% { box-shadow: 0 0 0 8px rgba(128,0,32,0); }
}
@keyframes raptorNoteRing {
  0% { transform: scale(.92); opacity: .65; }
  70%,100% { transform: scale(1.18); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  #raptorMusicPlayer .music-expand-button,
  #raptorMusicPlayer .music-expand-button::after { animation: none !important; }
}
/* =========================================================
   RAPTOR MUSIC PLAYER v6 — RED NOTE BUTTON / ANIMATED BAR
   ========================================================= */
:root { --raptor-red: #e10600; --raptor-red-dark: #a90000; }
#raptorMusicPlayer {
  position: fixed !important;
  z-index: 99999 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: 58px !important;
  min-width: 58px !important;
  height: 58px !important;
  min-height: 58px !important;
  max-width: calc(100vw - 20px) !important;
  padding: 8px !important;
  overflow: visible !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 999px !important;
  background: rgba(10,10,10,.96) !important;
  box-shadow: 0 10px 35px rgba(0,0,0,.45), 0 0 22px rgba(225,6,0,.16) !important;
  transition: width .42s cubic-bezier(.2,.85,.2,1), height .42s cubic-bezier(.2,.85,.2,1), border-radius .42s ease, padding .42s ease, box-shadow .25s ease !important;
  touch-action: none !important;
  user-select: none !important;
}
#raptorMusicPlayer.music-player-collapsed { width:58px !important; height:58px !important; }
#raptorMusicPlayer.music-player-expanded {
  width: min(470px, calc(100vw - 20px)) !important;
  height: auto !important;
  min-height: 78px !important;
  padding: 12px 14px !important;
  border-radius: 22px !important;
  display: grid !important;
  grid-template-columns: 48px minmax(0,1fr) auto !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  gap: 8px 10px !important;
  animation: raptorBarIn .45s cubic-bezier(.16,1,.3,1) both !important;
}
#raptorMusicPlayer .music-expand-button {
  flex: 0 0 42px !important;
  width:42px !important; height:42px !important;
  min-width:42px !important; min-height:42px !important;
  display:grid !important; place-items:center !important;
  border:0 !important; border-radius:50% !important;
  background: var(--raptor-red) !important;
  color:#fff !important; font-size:22px !important; line-height:1 !important;
  cursor:grab !important; touch-action:none !important;
  box-shadow:0 0 0 0 rgba(225,6,0,.45) !important;
  animation: raptorNotePulse 2.2s ease-in-out infinite !important;
}
#raptorMusicPlayer .music-expand-button:active { cursor:grabbing !important; }
#raptorMusicPlayer .music-expand-button::after {
  border-color: rgba(225,6,0,.65) !important;
}
#raptorMusicPlayer.music-player-expanded .music-expand-button { grid-column:1; grid-row:1 / span 2; }
#raptorMusicPlayer .music-info { min-width:0 !important; max-width:none !important; }
#raptorMusicPlayer.music-player-expanded .music-info { grid-column:2; grid-row:1; }
#raptorMusicPlayer .music-controls { display:flex !important; align-items:center !important; gap:5px !important; }
#raptorMusicPlayer.music-player-expanded .music-controls { grid-column:3; grid-row:1; }
#raptorMusicPlayer .music-controls button {
  width:30px !important; height:30px !important; padding:0 !important;
  border:0 !important; border-radius:50% !important;
  background:#262626 !important; color:#fff !important; cursor:pointer !important;
}
#raptorMusicPlayer .music-controls button:hover,
#raptorMusicPlayer #musicToggle { background:var(--raptor-red) !important; }
#raptorMusicPlayer .music-progress-wrap { grid-column:2 / 4; grid-row:2; width:100% !important; }
#raptorMusicPlayer #musicProgress { accent-color:var(--raptor-red) !important; }
#raptorMusicPlayer #musicProgress::-webkit-slider-thumb { background:var(--raptor-red) !important; }
#raptorMusicPlayer #musicProgress::-moz-range-thumb { background:var(--raptor-red) !important; }
#raptorMusicPlayer #musicVolume { accent-color:var(--raptor-red) !important; }
#raptorMusicPlayer.is-dragging,
#raptorMusicPlayer.is-dragging * { transition:none !important; animation:none !important; }
@keyframes raptorBarIn { from { opacity:0; transform:scale(.72); filter:blur(5px); } to { opacity:1; transform:scale(1); filter:blur(0); } }
@keyframes raptorNotePulse { 0%,100% { box-shadow:0 0 0 0 rgba(225,6,0,.34); } 50% { box-shadow:0 0 0 8px rgba(225,6,0,0); } }
@media (max-width:520px) {
  #raptorMusicPlayer.music-player-expanded { grid-template-columns:42px minmax(0,1fr) !important; padding:10px !important; gap:7px !important; }
  #raptorMusicPlayer.music-player-expanded .music-controls { grid-column:2; grid-row:2; justify-content:flex-start; }
  #raptorMusicPlayer .music-progress-wrap { grid-column:2; grid-row:3; }
  #raptorMusicPlayer.music-player-expanded .music-info { grid-column:2; grid-row:1; }
  #raptorMusicPlayer #musicVolume { width:58px !important; }
}

/* =========================================================
   RAPTOR MUSIC PLAYER v7 — FINAL CLEAN LAYOUT OVERRIDES
   ========================================================= */
#raptorMusicPlayer {
  box-sizing: border-box !important;
  position: fixed !important;
  overflow: hidden !important;
  isolation: isolate !important;
  transform: none !important;
  transition: width .32s cubic-bezier(.22,.8,.2,1), height .32s cubic-bezier(.22,.8,.2,1), border-radius .32s ease, padding .32s ease, box-shadow .25s ease !important;
}
#raptorMusicPlayer,
#raptorMusicPlayer * { box-sizing: border-box !important; }

/* Circle mode: ONLY the red note button is visible. */
#raptorMusicPlayer:not(.music-player-expanded) {
  width: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  height: 58px !important;
  min-height: 58px !important;
  max-height: 58px !important;
  padding: 8px !important;
  display: block !important;
  border-radius: 50% !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
#raptorMusicPlayer:not(.music-player-expanded) .music-expand-button {
  display: grid !important;
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 50% !important;
  background: #e10600 !important;
  color: #fff !important;
  font-size: 28px !important;
  line-height: 1 !important;
}
#raptorMusicPlayer:not(.music-player-expanded) .music-info,
#raptorMusicPlayer:not(.music-player-expanded) .music-progress-wrap,
#raptorMusicPlayer:not(.music-player-expanded) .music-controls,
#raptorMusicPlayer:not(.music-player-expanded) #musicVolume {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Expanded mode: a compact horizontal control bar, never a giant panel. */
#raptorMusicPlayer.music-player-expanded {
  width: min(460px, calc(100vw - 20px)) !important;
  max-width: calc(100vw - 20px) !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 74px !important;
  max-height: 160px !important;
  padding: 10px 12px !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) auto !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  gap: 7px 9px !important;
  border-radius: 20px !important;
  background: rgba(12,12,12,.98) !important;
  border: 1px solid rgba(225,6,0,.45) !important;
  box-shadow: 0 12px 38px rgba(0,0,0,.5), 0 0 24px rgba(225,6,0,.18) !important;
  overflow: hidden !important;
}
#raptorMusicPlayer.music-player-expanded .music-expand-button {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  border-radius: 50% !important;
  background: #e10600 !important;
  font-size: 25px !important;
  animation: none !important;
}
#raptorMusicPlayer.music-player-expanded .music-info {
  display: flex !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  flex-direction: column !important;
  min-width: 0 !important;
  overflow: hidden !important;
  max-width: none !important;
}
#raptorMusicPlayer.music-player-expanded .music-label,
#raptorMusicPlayer.music-player-expanded #musicTitle {
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
#raptorMusicPlayer.music-player-expanded .music-controls {
  display: flex !important;
  grid-column: 3 !important;
  grid-row: 1 !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 4px !important;
  min-width: 0 !important;
}
#raptorMusicPlayer.music-player-expanded .music-controls button {
  flex: 0 0 29px !important;
  width: 29px !important;
  height: 29px !important;
  min-width: 29px !important;
  min-height: 29px !important;
  font-size: 13px !important;
}
#raptorMusicPlayer.music-player-expanded .music-progress-wrap {
  display: flex !important;
  grid-column: 2 / 4 !important;
  grid-row: 2 !important;
  width: 100% !important;
  min-width: 0 !important;
  align-items: center !important;
  gap: 6px !important;
}
#raptorMusicPlayer.music-player-expanded #musicProgress {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}
#raptorMusicPlayer.music-player-expanded #musicVolume {
  display: block !important;
  width: 62px !important;
  max-width: 62px !important;
  min-width: 40px !important;
  pointer-events: auto !important;
}

@media (max-width: 520px) {
  #raptorMusicPlayer.music-player-expanded {
    width: calc(100vw - 16px) !important;
    max-width: calc(100vw - 16px) !important;
    grid-template-columns: 38px minmax(0,1fr) !important;
    grid-template-rows: auto auto auto !important;
    padding: 9px !important;
    gap: 6px 8px !important;
  }
  #raptorMusicPlayer.music-player-expanded .music-expand-button {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
  }
  #raptorMusicPlayer.music-player-expanded .music-info {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  #raptorMusicPlayer.music-player-expanded .music-controls {
    grid-column: 2 !important;
    grid-row: 2 !important;
    justify-content: flex-start !important;
  }
  #raptorMusicPlayer.music-player-expanded .music-progress-wrap {
    grid-column: 2 !important;
    grid-row: 3 !important;
  }
  #raptorMusicPlayer.music-player-expanded #musicVolume { width: 56px !important; }
}


/* V8 HARD OVERRIDES: clickable compact music bubble */
#raptorMusicPlayer,
#raptorMusicPlayer * { pointer-events: auto !important; }
#raptorMusicPlayer { cursor: grab !important; }
#raptorMusicPlayer.is-dragging { cursor: grabbing !important; }
#raptorMusicPlayer:not(.music-player-expanded) {
  display: grid !important;
  place-items: center !important;
  width: 62px !important;
  height: 62px !important;
  min-width: 62px !important;
  min-height: 62px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  overflow: hidden !important;
  gap: 0 !important;
}
#raptorMusicPlayer:not(.music-player-expanded) .music-expand-button {
  display: grid !important;
  place-items: center !important;
  width: 62px !important;
  height: 62px !important;
  min-width: 62px !important;
  min-height: 62px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  z-index: 20 !important;
  pointer-events: auto !important;
}
#raptorMusicPlayer:not(.music-player-expanded) .music-info,
#raptorMusicPlayer:not(.music-player-expanded) .music-progress-wrap,
#raptorMusicPlayer:not(.music-player-expanded) .music-controls,
#raptorMusicPlayer:not(.music-player-expanded) #musicVolume { display: none !important; }
#raptorMusicPlayer.music-player-expanded {
  display: flex !important;
  align-items: center !important;
  width: min(430px, calc(100vw - 16px)) !important;
  min-width: 0 !important;
  max-width: calc(100vw - 16px) !important;
  height: auto !important;
  min-height: 66px !important;
  overflow: visible !important;
  border-radius: 18px !important;
}
#raptorMusicPlayer.music-player-expanded .music-expand-button { flex: 0 0 42px !important; }


/* =========================================================
   RAPTOR MUSIC PLAYER v9 — SIMPLE CONTROLS ONLY
   No timeline, no seconds, no seek slider.
   ========================================================= */
#raptorMusicPlayer .music-progress-wrap,
#raptorMusicPlayer #musicProgress,
#raptorMusicPlayer #musicTime {
  display: none !important;
}
#raptorMusicPlayer.music-player-expanded {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: min(430px, calc(100vw - 16px)) !important;
  min-height: 66px !important;
  height: auto !important;
  padding: 10px !important;
  overflow: visible !important;
}
#raptorMusicPlayer.music-player-expanded .music-expand-button {
  flex: 0 0 42px !important;
  width: 42px !important;
  height: 42px !important;
}
#raptorMusicPlayer.music-player-expanded .music-info {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  max-width: none !important;
}
#raptorMusicPlayer.music-player-expanded .music-controls {
  display: flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  gap: 4px !important;
}
#raptorMusicPlayer.music-player-expanded #musicVolume {
  display: block !important;
  flex: 0 1 64px !important;
  width: 64px !important;
  min-width: 42px !important;
  max-width: 64px !important;
}
#raptorMusicPlayer.music-player-expanded .music-controls button,
#raptorMusicPlayer.music-player-expanded #musicVolume {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 30 !important;
}
#raptorMusicPlayer.music-player-expanded .music-controls button {
  cursor: pointer !important;
}
@media (max-width: 520px) {
  #raptorMusicPlayer.music-player-expanded {
    width: min(360px, calc(100vw - 16px)) !important;
    gap: 7px !important;
    padding: 8px !important;
  }
  #raptorMusicPlayer.music-player-expanded .music-expand-button {
    flex-basis: 38px !important;
    width: 38px !important;
    height: 38px !important;
  }
  #raptorMusicPlayer.music-player-expanded #musicVolume {
    width: 48px !important;
    min-width: 36px !important;
  }
}

/* RAPTOR MUSIC PLAYER v10 — final interaction safety */
#raptorMusicPlayer .music-controls,
#raptorMusicPlayer .music-controls button,
#raptorMusicPlayer #musicVolume {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 100 !important;
}
#raptorMusicPlayer .music-controls button,
#raptorMusicPlayer #musicVolume { touch-action: manipulation !important; }
#raptorMusicPlayer.is-dragging { user-select: none !important; }


/* RAPTOR MUSIC PLAYER v11 — reliable close button + smaller mobile bubble */
#raptorMusicPlayer .music-expand-button {
  -webkit-tap-highlight-color: transparent;
}
#raptorMusicPlayer.music-player-expanded .music-expand-button {
  pointer-events: auto !important;
  cursor: pointer !important;
  z-index: 999 !important;
}
@media (max-width: 520px) {
  #raptorMusicPlayer:not(.music-player-expanded),
  #raptorMusicPlayer:not(.music-player-expanded) .music-expand-button {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
  }
  #raptorMusicPlayer:not(.music-player-expanded) .music-expand-button {
    font-size: 21px !important;
  }
}

/* =========================================================
   RAPTOR HERO SHIRT + MOBILE TOUCH INTERACTIONS
   ========================================================= */
.hero-art{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:clamp(360px,58vw,720px) !important;
  overflow:visible !important;
}
.hero-art .orb,
.hero-art .hero-mark,
.hero-art .floating-note{display:none !important;}
.hero-compression-shirt{
  display:block !important;
  width:clamp(300px,43vw,650px) !important;
  max-width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  opacity:.48 !important;
  mix-blend-mode:screen !important;
  filter:contrast(1.08) brightness(.9) saturate(.85) !important;
  transform:translateY(1.5rem) !important;
  transition:opacity .35s ease, transform .45s var(--ease) !important;
  pointer-events:none !important;
}
.hero-art:hover .hero-compression-shirt{opacity:.58 !important;transform:translateY(1rem) scale(1.015) !important;}

@media (max-width: 900px){
  .hero-art{min-height:360px !important;margin-top:-1rem !important;}
  .hero-compression-shirt{
    width:min(82vw,520px) !important;
    opacity:.34 !important;
    transform:translateY(0) !important;
  }
}
@media (max-width: 600px){
  .hero-art{min-height:280px !important;margin-top:-1.5rem !important;}
  .hero-compression-shirt{
    width:min(94vw,430px) !important;
    opacity:.29 !important;
  }
}

/* Make desktop hover feedback also work as a clear touch feedback on phones. */
@media (hover:none), (pointer:coarse){
  .product-card,
  .contact-card,
  .btn,
  .text-link,
  .category-tabs button,
  .lang-btn,
  .bag-link{
    -webkit-tap-highlight-color:transparent;
    transition:transform .18s ease, filter .18s ease, background-color .18s ease, border-color .18s ease !important;
  }
  .product-card.touch-active,
  .contact-card.touch-active{
    transform:translateY(-5px) scale(1.012) !important;
    filter:brightness(1.08) !important;
  }
  .btn.touch-active,
  .text-link.touch-active,
  .category-tabs button.touch-active,
  .lang-btn.touch-active,
  .bag-link.touch-active{
    transform:translateY(-2px) scale(.98) !important;
    filter:brightness(1.16) !important;
  }
}


/* RAPTOR final mobile product-modal correction */
.modal-card{isolation:isolate;}
.modal-image-wrap{min-width:0;overflow:hidden;padding:24px;}
.modal-image-wrap img{display:block;width:100%;height:auto;max-width:100%;max-height:58vh;object-fit:contain;object-position:center;margin:0 auto;}
.modal-info{min-width:0;overflow-wrap:anywhere;}
.modal-info h2{font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.05;overflow-wrap:anywhere;}
.modal-info p:not(.eyebrow){overflow-wrap:anywhere;}
@media (max-width:650px){
  .modal{padding:10px;align-items:center;}
  .modal-card{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:min(100%,430px);max-height:calc(100dvh - 20px);overflow-y:auto;overflow-x:hidden;}
  .modal-image-wrap{min-height:0!important;height:auto;max-height:40dvh;padding:18px 16px;}
  .modal-image-wrap img{width:100%;height:auto;max-height:36dvh;object-fit:contain;}
  .modal-info{padding:22px 18px 24px!important;}
  .modal-info h2{font-size:clamp(1.65rem,7vw,2.2rem);margin:10px 0 12px;}
  .modal-info p:not(.eyebrow){font-size:.82rem;line-height:1.55;margin:0 0 10px;}
  .modal-price{margin:12px 0 16px;font-size:1.15rem;}
  .option-block{margin:16px 0;}
  .modal-close{top:4px;right:8px;font-size:1.9rem;}
  .modal-info .btn{width:100%;margin-top:8px;}
}
@media (hover:none){
  .product-card:active,.contact-card:active,.btn:active,.text-link:active,.category-tabs button:active,.lang-btn:active,.bag-link:active{transform:scale(.975);}
}
.touch-active{transform:translateY(-4px) scale(.99)!important;filter:brightness(1.14);}

/* =========================================================
   RAPTOR HERO RENDER — QUIET BY DEFAULT / RED GLOW ON HOVER
   ========================================================= */
.hero-art{
  isolation:isolate !important;
  background:transparent !important;
  overflow:visible !important;
}
.hero-art::before{
  content:"";
  position:absolute;
  inset:8% -8% 0;
  z-index:-1;
  pointer-events:none;
  opacity:0;
  transform:scale(.92);
  background:
    radial-gradient(ellipse at 50% 42%, rgba(235,0,28,.78) 0%, rgba(150,0,18,.42) 28%, rgba(70,0,12,.18) 52%, transparent 74%);
  filter:blur(34px);
  transition:opacity .42s ease, transform .55s var(--ease);
}
.hero-compression-shirt{
  position:relative !important;
  z-index:1 !important;
  opacity:.48 !important;
  mix-blend-mode:screen !important;
  filter:contrast(1.08) brightness(.88) saturate(.85) !important;
  transform:translateY(1.5rem) scale(1) !important;
  transition:transform .55s var(--ease), opacity .42s ease, filter .42s ease !important;
  will-change:transform,filter,opacity;
}
.hero-art:hover::before,
.hero-art:focus-within::before{
  opacity:1;
  transform:scale(1);
}
.hero-art:hover .hero-compression-shirt,
.hero-art:focus-within .hero-compression-shirt{
  opacity:.68 !important;
  transform:translateY(.35rem) scale(1.045) !important;
  filter:contrast(1.12) brightness(1.02) saturate(1.05) drop-shadow(0 0 18px rgba(255,0,30,.35)) !important;
}
@media (max-width:900px){
  .hero-art::before{inset:4% -14% -4%;filter:blur(25px)}
  .hero-compression-shirt{width:min(88vw,560px) !important;opacity:.38 !important;transform:translateY(0) !important;}
  .hero-art:active::before{opacity:1;transform:scale(1)}
  .hero-art:active .hero-compression-shirt{opacity:.58 !important;transform:scale(1.025) !important;filter:contrast(1.1) brightness(.98) saturate(1) drop-shadow(0 0 14px rgba(255,0,30,.28)) !important;}
}
@media (max-width:600px){
  .hero-art{min-height:330px !important;}
  .hero-compression-shirt{width:min(96vw,460px) !important;opacity:.32 !important;}
}
@media (prefers-reduced-motion:reduce){
  .hero-art::before,.hero-compression-shirt{transition:none !important;}
}

/* Product list: first row by default, expand with Show all */
.show-all-products{display:block;margin:28px auto 0;padding:13px 28px;border:1px solid var(--wine2);background:transparent;color:var(--white);font:inherit;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .3s,transform .3s,color .3s;}
.show-all-products:hover{background:var(--wine2);color:var(--white);transform:translateY(-3px);}
.show-all-products.hidden{display:none!important;}

/* Show all top-right + progressive show more */
.shop-heading-actions{display:flex;flex-direction:column;align-items:flex-end;gap:18px;max-width:340px}.show-all-top{border:1px solid var(--wine2);background:var(--wine2);color:var(--white);padding:12px 18px;font:inherit;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:transform .3s,background .3s}.show-all-top:hover{background:#a00000;transform:translateY(-3px)}.show-all-products{margin:28px auto 0}.show-all-products.hidden,.show-all-top.hidden{display:none!important}@media(max-width:650px){.shop-heading-actions{align-items:flex-start;max-width:none}.show-all-top{align-self:flex-end}.section-heading{gap:20px}}

/* Damascus image integration: no embedded website mockup */
#about .about-visual{background:#000 !important; border:0; box-shadow:none;}
#about .about-visual img{mix-blend-mode:screen; filter:contrast(1.04) saturate(1.04);}

/* RAPTOR product 2D / 3D viewer */
.modal-image-wrap{position:relative;min-width:0;min-height:450px;padding:48px 18px 18px;background:radial-gradient(circle at 50% 42%,#292929 0,#111 58%,#080808 100%);overflow:hidden}
.modal-view-switch{position:absolute;top:14px;left:14px;z-index:4;display:flex;gap:6px;padding:4px;border:1px solid rgba(246,244,240,.18);background:rgba(8,8,8,.76);backdrop-filter:blur(8px)}
.view-mode-btn{border:1px solid transparent;background:transparent;color:var(--muted);padding:8px 13px;font:inherit;font-size:.66rem;font-weight:800;letter-spacing:.12em;cursor:pointer;transition:background .25s,color .25s,transform .25s;position:relative}
.view-mode-btn.active{background:var(--white);color:var(--black)}
.view-mode-btn:disabled{opacity:.35;cursor:not-allowed}
.view-3d-button:not(:disabled){animation:threeDPulse 3.2s ease-in-out infinite}
.view-3d-pulse{display:inline-block;width:5px;height:5px;margin-left:5px;border-radius:50%;background:#d01616;vertical-align:middle;box-shadow:0 0 0 0 rgba(208,22,22,.5);animation:threeDDot 2.4s infinite}
.modal-media-stage{width:100%;height:100%;min-height:380px;display:grid;place-items:center}
.modal-media-stage img{width:100%;height:100%;max-height:440px;object-fit:contain}
#modalModelViewer{display:block;width:100%;height:390px;max-width:100%;--poster-color:transparent;background:transparent;outline:none}
.model-help{margin:0;text-align:center;color:var(--muted);font-size:.65rem;letter-spacing:.04em}
.model-unavailable{margin:0;text-align:center;color:var(--muted);font-size:.75rem;line-height:1.6;max-width:220px}
@keyframes threeDPulse{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@keyframes threeDDot{0%,100%{box-shadow:0 0 0 0 rgba(208,22,22,.4)}50%{box-shadow:0 0 0 5px rgba(208,22,22,0)}}
@media(max-width:700px){.modal-image-wrap{min-height:0;padding-top:56px}.modal-media-stage{min-height:250px}#modalModelViewer{height:285px}.modal-media-stage img{max-height:285px}}

.product-image{position:relative}.product-3d-badge{position:absolute;top:12px;right:12px;padding:6px 8px;border:1px solid rgba(246,244,240,.35);background:rgba(8,8,8,.72);color:var(--white);font-size:.58rem;font-weight:800;letter-spacing:.12em;animation:threeDPulse 3.2s ease-in-out infinite}

/* Product view support labels + gentle 3D discovery animation */
.product-support-label{display:inline-flex;align-items:center;width:max-content;margin-bottom:8px;padding:4px 8px;border:1px solid var(--line);color:var(--muted);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800}
.product-support-label.has-3d{border-color:rgba(220,30,30,.55);color:#ff7777}
.modal-support-status{position:absolute;top:18px;right:18px;z-index:2;padding:7px 10px;border:1px solid var(--line);background:rgba(10,10,10,.78);color:var(--muted);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800}
.modal-support-status.has-3d{border-color:rgba(220,30,30,.6);color:#ff7777}
.modal-media-stage.model-attention model-viewer{animation:raptorModelNudge 1.8s ease-in-out 2}
@keyframes raptorModelNudge{0%,100%{transform:translateX(0) rotate(0deg)}25%{transform:translateX(-9px) rotate(-1deg)}50%{transform:translateX(9px) rotate(1deg)}75%{transform:translateX(-5px) rotate(-.5deg)}}
@media(max-width:650px){.modal-support-status{top:12px;right:12px;font-size:.54rem;padding:6px 8px}.product-support-label{font-size:.5rem;padding:3px 6px}}

/* Product-grid automatic 2D → 3D preview */
.product-preview-stage{position:relative;isolation:isolate;overflow:hidden}
.product-preview-2d,.product-preview-3d{width:100%;height:100%;min-height:100%;display:grid;place-items:center;transition:opacity 2.4s var(--ease),transform 2.4s var(--ease),filter 2.4s var(--ease);backface-visibility:hidden}
.product-preview-2d{position:relative;z-index:1;opacity:1;transform:scale(1) rotateY(0);filter:blur(0)}
.product-preview-2d.is-fading-out{opacity:0;transform:scale(1.06) rotateY(10deg);filter:blur(2px)}
.product-preview-3d{position:absolute;inset:0;z-index:2;padding:8px;background:radial-gradient(circle at 50% 45%,#292929 0,#111 62%,#080808 100%);opacity:0;visibility:hidden;transform:scale(.92) rotateY(-12deg);filter:blur(2px);pointer-events:none}
.product-preview-3d.is-visible{opacity:1;visibility:visible;transform:scale(1) rotateY(0);filter:blur(0);pointer-events:auto}
.product-card-model{width:100%;height:100%;min-height:210px;--poster-color:transparent;background:transparent}
.product-3d-hint{position:absolute;left:12px;bottom:10px;padding:5px 8px;background:rgba(8,8,8,.7);border:1px solid rgba(246,244,240,.18);font-size:.52rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);pointer-events:none}
.product-preview-3d.is-auto-preview .product-card-model{animation:productCard3DReveal 3.2s cubic-bezier(.2,.8,.2,1) 1}
.product-preview-3d.is-auto-return{opacity:0;visibility:hidden;transform:scale(.96) rotateY(10deg);filter:blur(2px)}
@keyframes productCard3DReveal{0%{transform:translateX(-14px) scale(.92) rotateY(-14deg);opacity:.2}45%{transform:translateX(8px) scale(1.02) rotateY(8deg);opacity:1}75%{transform:translateX(-4px) scale(1) rotateY(-4deg)}100%{transform:translateX(0) scale(1) rotateY(0);opacity:1}}
@media(max-width:850px){.product-card-model{min-height:170px}.product-3d-hint{font-size:.45rem;left:8px;bottom:8px}}

/* Product format support badge is kept inside the image area so it never interferes with the modal content. */
.product-format-badge{position:absolute;top:12px;right:12px;z-index:3;padding:6px 8px;border:1px solid rgba(246,244,240,.35);background:rgba(8,8,8,.78);color:var(--muted);font-size:.56rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;pointer-events:none;backdrop-filter:blur(6px)}
.product-format-badge.has-3d{border-color:rgba(220,30,30,.6);color:#ff7777}
@media(max-width:650px){.product-format-badge{top:8px;right:8px;font-size:.46rem;padding:5px 6px}}


/* RAPTOR product card refinements: red glow + gentle lift, no rotate */
.product-card:hover{transform:translateY(-8px) scale(1.012);border-color:rgba(131,0,0,.85);box-shadow:0 16px 42px rgba(131,0,0,.18),0 0 26px rgba(131,0,0,.12)}
.product-card:hover .product-image{box-shadow:inset 0 0 42px rgba(131,0,0,.14)}
.product-card:hover .product-image img{transform:scale(1.055)!important;rotate:none!important}
.product-color-swatches{display:flex;align-items:center;gap:7px;margin-top:12px;min-height:15px}
.product-color-swatch{display:inline-block;width:13px;height:13px;border-radius:50%;border:1px solid rgba(246,244,240,.45);box-shadow:0 0 0 1px rgba(8,8,8,.45);pointer-events:none}
.product-color-swatch[style*="#FFFFFF"],.product-color-swatch[style*="#ffffff"]{border-color:rgba(246,244,240,.9);box-shadow:0 0 0 1px rgba(246,244,240,.25)}
.modal-card{animation:raptorModalIn .55s var(--ease) both}
@keyframes raptorModalIn{from{opacity:0;transform:translateY(18px) scale(.975);filter:blur(4px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.modal-card{animation:none}.product-card,.product-image img{transition:none!important}}


/* RAPTOR FINAL MOTION / PRODUCT PREVIEW FIXES */
.product-card { transition: transform .75s cubic-bezier(.2,.8,.2,1), border-color .75s, box-shadow .75s; }
.product-card:hover { border-color: var(--raptor-red) !important; box-shadow: 0 20px 65px rgba(225,6,0,.34), 0 0 42px rgba(225,6,0,.28) !important; }
.product-card:hover .product-image { box-shadow: inset 0 0 75px rgba(225,6,0,.28), 0 0 28px rgba(225,6,0,.18); }
.product-card:hover .product-image img { transform: scale(1.09) !important; }
.modal-card { animation: raptorModalIn .9s cubic-bezier(.16,1,.3,1) both !important; }
.modal-backdrop { animation: raptorBackdropIn .65s ease both; }
.modal-media-stage { animation: raptorStageIn .8s cubic-bezier(.16,1,.3,1) both; }
#modalModelViewer { pointer-events: auto !important; touch-action: none !important; user-select: none !important; }
.modal-view-switch, .color-options, .size-options { animation: raptorControlsIn 1s .18s both; }
@keyframes raptorModalIn { from { opacity:0; transform:translateY(42px) scale(.94); filter:blur(8px); } to { opacity:1; transform:translateY(0) scale(1); filter:blur(0); } }
@keyframes raptorBackdropIn { from { opacity:0; } to { opacity:1; } }
@keyframes raptorStageIn { from { opacity:0; transform:scale(.92) translateY(18px); } to { opacity:1; transform:scale(1) translateY(0); } }
@keyframes raptorControlsIn { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:translateY(0); } }


/* RAPTOR CINEMATIC UI POLISH */
.modal-backdrop{background:radial-gradient(circle at 50% 15%,rgba(225,6,0,.14),rgba(0,0,0,.88) 58%),rgba(0,0,0,.78);backdrop-filter:blur(18px) saturate(125%)}
.modal-card{border:1px solid rgba(255,255,255,.12)!important;border-radius:26px!important;overflow:hidden!important;background:linear-gradient(145deg,#181818,#090909 72%)!important;box-shadow:0 35px 120px rgba(0,0,0,.75),0 0 0 1px rgba(225,6,0,.12),0 0 70px rgba(225,6,0,.12)!important}
.modal-card:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:26px;background:linear-gradient(125deg,rgba(225,6,0,.14),transparent 24%,transparent 70%,rgba(255,255,255,.04));mix-blend-mode:screen}
.modal-image-wrap{background:radial-gradient(circle at 50% 35%,rgba(225,6,0,.13),transparent 48%),linear-gradient(145deg,#202020,#070707)!important;position:relative}
.modal-image-wrap:after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.07);border-radius:20px;pointer-events:none}
.modal-info{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent);}
.modal-close{width:42px;height:42px;border:1px solid rgba(255,255,255,.14);border-radius:50%;background:rgba(0,0,0,.35);transition:.35s ease}
.modal-close:hover{background:var(--red);box-shadow:0 0 30px rgba(225,6,0,.5);transform:rotate(90deg)}
.modal-info h2{ text-shadow:0 0 24px rgba(225,6,0,.13)}
.color-dot,.size-chip{border-radius:12px;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.color-dot:hover,.size-chip:hover{transform:translateY(-3px);border-color:var(--red);box-shadow:0 8px 25px rgba(225,6,0,.2)}
.reveal{opacity:0;transform:translateX(90px) skewX(-2deg);filter:blur(8px);animation:none!important;transition:opacity 1.05s cubic-bezier(.16,1,.3,1),transform 1.1s cubic-bezier(.16,1,.3,1),filter 1.1s ease}
.reveal.in-view{opacity:1;transform:translateX(0) skewX(0);filter:blur(0)}
.about-visual.reveal{transform:translateX(-90px) skewX(2deg)}
.about-visual.reveal.in-view{transform:translateX(0) skewX(0)}
.delay-1{transition-delay:.16s!important}
@media(max-width:650px){.modal-card{border-radius:20px!important}.modal-close{width:38px;height:38px}.reveal,.about-visual.reveal{transform:translateY(42px);}.reveal.in-view,.about-visual.reveal.in-view{transform:translateY(0)}}


/* FINAL REQUEST: autonomous hero shirt pulse, glow and approach every 6 seconds.
   It is deliberately pointer-safe: hover, focus and touch cannot control it. */
.hero-art::before,
.hero-art:hover::before,
.hero-art:focus-within::before,
.hero-art:active::before{
  opacity:1 !important;
  transform:scale(1) !important;
  animation:raptorHeroGlowCycle 6s ease-in-out infinite !important;
  transition:none !important;
}
.hero-compression-shirt,
.hero-art:hover .hero-compression-shirt,
.hero-art:focus-within .hero-compression-shirt,
.hero-art:active .hero-compression-shirt{
  pointer-events:none !important;
  animation:raptorHeroPulseCycle 6s ease-in-out infinite !important;
  opacity:.48 !important;
  transform:translateY(1.5rem) scale(1) !important;
  filter:contrast(1.08) brightness(.88) saturate(.85) !important;
  transition:none !important;
}
@keyframes raptorHeroPulseCycle{
  0%,49.9%{opacity:.38;transform:translateY(1.5rem) scale(1);filter:contrast(1.08) brightness(.88) saturate(.85) drop-shadow(0 0 0 rgba(255,0,30,0));}
  50%,100%{opacity:.72;transform:translateY(.2rem) scale(1.065);filter:contrast(1.14) brightness(1.08) saturate(1.08) drop-shadow(0 0 30px rgba(255,0,30,.62));}
}
@keyframes raptorHeroGlowCycle{
  0%,49.9%{opacity:.12;transform:scale(.92);}
  50%,100%{opacity:1;transform:scale(1.04);}
}

/* 2D-only product cards: match the same 3-second viewing rhythm and soften color swaps. */
.product-preview-2d.is-auto-color{animation:raptor2dColorOut .7s ease forwards !important;}
.product-preview-2d.is-auto-color-in{animation:raptor2dColorIn .7s ease both !important;}
@keyframes raptor2dColorOut{from{opacity:1;transform:scale(1);}to{opacity:.05;transform:scale(.965);filter:blur(4px);}}
@keyframes raptor2dColorIn{from{opacity:.05;transform:scale(1.035);filter:blur(4px);}to{opacity:1;transform:scale(1);filter:blur(0);}}
@media (prefers-reduced-motion:reduce){
  .hero-art::before,.hero-compression-shirt,.product-preview-2d.is-auto-color,.product-preview-2d.is-auto-color-in{animation:none !important;}
}

/* =========================================================
   RAPTOR HERO — AUTOMATIC 3s ON / 3s OFF PULSE
   No hover, touch, click or focus required.
   ========================================================= */
.hero-art::before{
  opacity:0 !important;
  transform:scale(.92) !important;
  animation:raptorHeroGlow 6s ease-in-out infinite !important;
  transition:none !important;
}
.hero-compression-shirt{
  animation:raptorHeroShirtPulse 6s ease-in-out infinite !important;
  transition:none !important;
  pointer-events:none !important;
}
.hero-art:hover::before,
.hero-art:focus-within::before,
.hero-art:active::before{
  opacity:0 !important;
  transform:scale(.92) !important;
}
.hero-art:hover .hero-compression-shirt,
.hero-art:focus-within .hero-compression-shirt,
.hero-art:active .hero-compression-shirt{
  opacity:.48 !important;
  transform:translateY(1.5rem) scale(1) !important;
  filter:contrast(1.08) brightness(.88) saturate(.85) !important;
}
@keyframes raptorHeroGlow{
  0%,49%{opacity:0;transform:scale(.92)}
  50%,100%{opacity:1;transform:scale(1)}
}
@keyframes raptorHeroShirtPulse{
  0%,49%{opacity:.48;transform:translateY(1.5rem) scale(1);filter:contrast(1.08) brightness(.88) saturate(.85)}
  50%,100%{opacity:.68;transform:translateY(.35rem) scale(1.045);filter:contrast(1.12) brightness(1.02) saturate(1.05) drop-shadow(0 0 18px rgba(255,0,30,.35))}
}
@media (max-width:900px){
  .hero-compression-shirt{animation:raptorHeroShirtPulseMobile 6s ease-in-out infinite !important;}
}
@keyframes raptorHeroShirtPulseMobile{
  0%,49%{opacity:.38;transform:translateY(0) scale(1);filter:contrast(1.08) brightness(.88) saturate(.85)}
  50%,100%{opacity:.58;transform:translateY(0) scale(1.025);filter:contrast(1.1) brightness(.98) saturate(1) drop-shadow(0 0 14px rgba(255,0,30,.28))}
}

/* FINAL FIX: every product card owns an independent timer. The hero animation
   must also win over reveal/hover/focus/active rules and never depend on input. */
.hero-art.reveal,
.hero-art.reveal.in-view{
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
  animation:none !important;
}
.hero-art::before,
.hero-art:hover::before,
.hero-art:focus-within::before,
.hero-art:active::before{
  opacity:0 !important;
  transform:scale(.92) !important;
  animation:raptorHeroGlowFinal 6s ease-in-out infinite !important;
  pointer-events:none !important;
}
.hero-compression-shirt,
.hero-art:hover .hero-compression-shirt,
.hero-art:focus-within .hero-compression-shirt,
.hero-art:active .hero-compression-shirt{
  pointer-events:none !important;
  animation:raptorHeroShirtFinal 6s ease-in-out infinite !important;
  transition:none !important;
}
@keyframes raptorHeroGlowFinal{
  0%,49.99%{opacity:0 !important;transform:scale(.92)}
  50%,100%{opacity:1 !important;transform:scale(1.05)}
}
@keyframes raptorHeroShirtFinal{
  0%,49.99%{opacity:.48;transform:translateY(1.5rem) scale(1);filter:contrast(1.08) brightness(.88) saturate(.85) drop-shadow(0 0 0 rgba(255,0,30,0))}
  50%,100%{opacity:.72;transform:translateY(.2rem) scale(1.065);filter:contrast(1.14) brightness(1.08) saturate(1.08) drop-shadow(0 0 30px rgba(255,0,30,.62))}
}
@media(max-width:900px){
  .hero-compression-shirt,
  .hero-art:hover .hero-compression-shirt,
  .hero-art:focus-within .hero-compression-shirt,
  .hero-art:active .hero-compression-shirt{animation:raptorHeroShirtFinalMobile 6s ease-in-out infinite !important;}
}
@keyframes raptorHeroShirtFinalMobile{
  0%,49.99%{opacity:.38;transform:scale(1);filter:contrast(1.08) brightness(.88) saturate(.85)}
  50%,100%{opacity:.62;transform:scale(1.03);filter:contrast(1.1) brightness(1) saturate(1) drop-shadow(0 0 18px rgba(255,0,30,.4))}
}


/* HERO VISIBILITY OVERRIDE: paused outside viewport, active only on Home. */
.hero-art::before,
.hero-art:hover::before,
.hero-art:focus-within::before,
.hero-art:active::before,
.hero-compression-shirt,
.hero-art:hover .hero-compression-shirt,
.hero-art:focus-within .hero-compression-shirt,
.hero-art:active .hero-compression-shirt{
  animation-play-state:paused !important;
}
.hero-art.hero-is-visible::before,
.hero-art.hero-is-visible:hover::before,
.hero-art.hero-is-visible:focus-within::before,
.hero-art.hero-is-visible:active::before,
.hero-art.hero-is-visible .hero-compression-shirt,
.hero-art.hero-is-visible:hover .hero-compression-shirt,
.hero-art.hero-is-visible:focus-within .hero-compression-shirt,
.hero-art.hero-is-visible:active .hero-compression-shirt{
  animation-play-state:running !important;
}
.hero-art,
.hero-art::before,
.hero-compression-shirt{will-change:transform,opacity,filter;}


/* =========================================
   HOME HERO IMAGE GALLERY
   ========================================= */
.hero-gallery{
  position:relative;
  width:100%;
  height:100%;
  min-height:520px;
  display:grid;
  place-items:center;
  isolation:isolate;
}
.hero-gallery::before{
  content:"";
  position:absolute;
  inset:8% 4%;
  z-index:-1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(155,0,28,.32),transparent 68%);
  filter:blur(24px);
  animation:heroGalleryAura 8s ease-in-out infinite;
}
.hero-gallery-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  opacity:0;
  transform:translate3d(38px,14px,0) scale(.94) rotate(1.2deg);
  filter:blur(8px) saturate(.82) brightness(.72);
  pointer-events:none;
  transition:opacity 1s cubic-bezier(.2,.8,.2,1),transform 1.35s cubic-bezier(.2,.8,.2,1),filter 1s ease;
  will-change:opacity,transform,filter;
}
.hero-gallery-image.is-active{
  opacity:1;
  transform:translate3d(0,0,0) scale(1) rotate(0);
  filter:blur(0) saturate(1) brightness(.96) drop-shadow(0 24px 32px rgba(0,0,0,.4));
  animation:heroGalleryBreath 4.2s ease-in-out both;
}
.hero-gallery-progress{
  position:absolute;
  bottom:22px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  gap:8px;
  z-index:3;
}
.hero-gallery-progress span{
  width:28px;
  height:3px;
  background:rgba(246,244,240,.28);
  transition:width .45s ease,background .45s ease,box-shadow .45s ease;
}
.hero-gallery-progress span.is-active{
  width:52px;
  background:#b40025;
  box-shadow:0 0 16px rgba(180,0,37,.55);
}
@keyframes heroGalleryBreath{
  0%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(0,-7px,0) scale(1.018)}
  100%{transform:translate3d(0,0,0) scale(1)}
}
@keyframes heroGalleryAura{
  0%,100%{opacity:.45;transform:scale(.92)}
  50%{opacity:1;transform:scale(1.08)}
}
@media(max-width:1000px){
  .hero-gallery{min-height:410px}
}
@media(max-width:650px){
  .hero-gallery{min-height:310px}
  .hero-gallery-progress{bottom:12px}
  .hero-gallery-progress span{width:18px}
  .hero-gallery-progress span.is-active{width:34px}
}

/* RAPTOR HERO GALLERY — refreshed campaign set */
.hero-gallery-image{
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.hero-gallery-image.is-active{
  animation:heroGalleryBreath 4.2s ease-in-out both;
}
@media (prefers-reduced-motion: reduce){
  .hero-gallery-image,
  .hero-gallery-image.is-active,
  .hero-gallery::before{animation:none!important;transition:none!important;}
}

/* Performance: let the browser skip layout/paint work for off-screen product cards. */
.products-grid .product-card{content-visibility:auto;contain:layout paint style;contain-intrinsic-size:420px 560px;}
.product-card-model{touch-action:pan-y;user-select:none;-webkit-user-select:none;}
#modalModelViewer{touch-action:pan-y;cursor:grab;}
#modalModelViewer:active{cursor:grabbing;}


/* FINAL FIX: allow full manual GLB interaction inside product modal */
#modalModelViewer {
  pointer-events: auto !important;
  touch-action: pan-y !important;
  user-select: auto !important;
  -webkit-user-select: auto !important;
  cursor: grab !important;
  position: relative !important;
  z-index: 8 !important;
}
#modalModelViewer:active { cursor: grabbing !important; }
#modal3DStage .model-help, #modal3DStage .model-unavailable {
  position: relative;
  z-index: 1;
  pointer-events: none !important;
}


/* RAPTOR POLISH: replayable scroll reveals + smoother hero gallery */
.reveal{
  opacity:0;
  transform:translate3d(88px,18px,0) scale(.985) skewX(-1deg);
  filter:blur(9px);
  transition:opacity .95s cubic-bezier(.16,1,.3,1),transform 1.15s cubic-bezier(.16,1,.3,1),filter 1.05s ease;
  will-change:opacity,transform,filter;
}
.reveal.in-view{
  opacity:1;
  transform:translate3d(0,0,0) scale(1) skewX(0);
  filter:blur(0);
}
.about-visual.reveal{transform:translate3d(-88px,18px,0) scale(.985) skewX(1deg);}
.about-visual.reveal.in-view{transform:translate3d(0,0,0) scale(1) skewX(0);}
.hero-gallery-image{
  opacity:0;
  transform:translate3d(34px,10px,0) scale(.965) rotate(.8deg);
  filter:blur(10px) saturate(.8) brightness(.7);
  transition:opacity 1.35s cubic-bezier(.22,1,.36,1),transform 1.55s cubic-bezier(.22,1,.36,1),filter 1.25s ease;
}
.hero-gallery-image.is-active{
  opacity:1;
  transform:translate3d(0,0,0) scale(1) rotate(0);
  filter:blur(0) saturate(1) brightness(.98) drop-shadow(0 28px 42px rgba(0,0,0,.42));
  z-index:2;
  animation:heroGalleryBreath 4.6s ease-in-out both;
}
.hero-gallery-image.is-leaving{
  opacity:0;
  transform:translate3d(-34px,-8px,0) scale(1.025) rotate(-.8deg);
  filter:blur(7px) saturate(.9) brightness(.8);
  z-index:1;
}
@media(max-width:650px){
  .reveal,.about-visual.reveal{transform:translate3d(0,38px,0) scale(.99);}
  .reveal.in-view,.about-visual.reveal.in-view{transform:translate3d(0,0,0) scale(1);}
}
@media(prefers-reduced-motion:reduce){
  .reveal,.reveal.in-view,.hero-gallery-image,.hero-gallery-image.is-active,.hero-gallery-image.is-leaving{transition:none!important;animation:none!important;filter:none!important;transform:none!important;}
}


/* =========================================================
   RAPTOR PRODUCT STATUS / COMING SOON
   ========================================================= */
.product-image.product-preview-stage{position:relative}
.product-status-badge{position:absolute;z-index:8;pointer-events:none;font-weight:900;text-transform:uppercase;letter-spacing:.16em;line-height:1;white-space:nowrap}
.product-status-new{top:14px;left:0;padding:8px 24px 8px 13px;color:#fff;background:var(--raptor-red,#e10600);font-size:.62rem;clip-path:polygon(0 0,100% 0,88% 100%,0 100%);box-shadow:8px 8px 0 rgba(0,0,0,.28)}
.product-image.is-coming-soon .product-preview-2d{filter:blur(12px) !important;transform:scale(1.06);opacity:.62;transition:opacity .35s ease,transform .6s var(--ease);will-change:filter,opacity,transform}
.product-card:hover .product-image.is-coming-soon .product-preview-2d{filter:blur(13px) !important;transform:scale(1.09);opacity:.64}

/* Single diagonal crime-scene tape: top-right to bottom-left. */
.coming-soon-tape-frame{position:absolute;inset:0;z-index:12;pointer-events:none;overflow:hidden}
.coming-tape{position:absolute;top:50%;left:50%;width:145%;height:44px;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%) rotate(-45deg);transform-origin:center;background:#e10600;color:#fff;border:2px solid #080808;box-shadow:0 6px 0 rgba(0,0,0,.4),0 0 16px rgba(0,0,0,.3);font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(.72rem,1.15vw,.9rem);font-weight:900;letter-spacing:.1em;line-height:1;text-transform:uppercase;white-space:nowrap;text-shadow:2px 2px 0 rgba(0,0,0,.42);animation:comingTapePulse 2.1s ease-in-out infinite}
.coming-tape::before,.coming-tape::after{content:'✦';margin:0 14px;color:#080808;font-size:.72em}
.product-card.is-coming-soon-card{cursor:not-allowed}
.product-card.is-coming-soon-card .product-image.is-coming-soon{cursor:not-allowed}
.product-card.is-coming-soon-card.is-lock-pulse .product-image.is-coming-soon{animation:raptorComingSoonPulse .48s cubic-bezier(.2,.8,.25,1)}
.product-card.is-coming-soon-card.is-lock-pulse .coming-tape{animation:raptorTapeHit .48s ease-out}
@keyframes comingTapePulse{0%,100%{filter:brightness(.96);opacity:.94}50%{filter:brightness(1.08);opacity:1}}
@keyframes raptorComingSoonPulse{0%{transform:scale(1)}35%{transform:scale(.99)}70%{transform:scale(1.01)}100%{transform:scale(1)}}
@keyframes raptorTapeHit{0%{filter:brightness(1);transform:translate(-50%,-50%) rotate(-45deg)}35%{filter:brightness(1.35);transform:translate(-50%,-50%) rotate(-45deg) scale(1.025)}100%{filter:brightness(1);transform:translate(-50%,-50%) rotate(-45deg)}}
@media(max-width:650px){.coming-tape{height:32px;font-size:.58rem;letter-spacing:.07em}.coming-tape::before,.coming-tape::after{margin:0 8px}}

/* RAPTOR MOBILE MODAL / RTL / PERFORMANCE FIXES */
.modal-close{position:absolute!important;top:max(12px,env(safe-area-inset-top))!important;right:max(12px,env(safe-area-inset-right))!important;z-index:100!important;display:grid!important;place-items:center!important;width:42px!important;height:42px!important;padding:0!important;line-height:1!important;font-size:1.8rem!important;color:#fff!important;background:rgba(5,5,5,.92)!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:50%!important;box-shadow:0 8px 25px rgba(0,0,0,.45)!important;backdrop-filter:blur(10px)}
.modal-close:hover{background:var(--raptor-red,#e10600)!important;border-color:var(--raptor-red,#e10600)!important}
.modal-support-status{top:66px!important;right:18px!important}
@media(max-width:650px){.modal-close{top:max(10px,env(safe-area-inset-top))!important;right:max(10px,env(safe-area-inset-right))!important;width:40px!important;height:40px!important}.modal-support-status{top:60px!important;right:12px!important}}
html[dir="rtl"] .modal-media-stage,html[dir="rtl"] .modal-media-stage model-viewer,html[dir="rtl"] .product-preview-3d,html[dir="rtl"] .product-preview-3d model-viewer{direction:ltr!important;justify-items:center!important;align-items:center!important;text-align:center!important;margin-inline:auto!important}
html[dir="rtl"] #modalModelViewer{transform-origin:center center!important}
.coming-soon-tape-frame{display:grid!important;place-items:center!important}
.coming-tape{top:50%!important;left:50%!important;width:100%!important;height:46px!important;transform:translate(-50%,-50%)!important;background:linear-gradient(180deg,#f10b0b,#c90000)!important;color:#fff!important;border:0!important;border-radius:0!important;box-shadow:0 8px 24px rgba(0,0,0,.42),0 0 22px rgba(225,6,0,.18)!important;font-family:Inter,Arial,sans-serif!important;font-size:clamp(.72rem,1.1vw,.86rem)!important;font-weight:900!important;letter-spacing:.16em!important;text-shadow:0 2px 5px rgba(0,0,0,.3)!important;animation:none!important}
.coming-tape::before,.coming-tape::after{color:rgba(255,255,255,.75)!important;font-size:.7em!important;margin:0 12px!important}
@media(max-width:650px){.modal-close{width:40px!important;height:40px!important;top:max(10px,env(safe-area-inset-top))!important;right:max(10px,env(safe-area-inset-right))!important}.coming-tape{width:100%!important;height:38px!important;font-size:.6rem!important;letter-spacing:.11em!important}}
.product-preview-2d,.product-card-model,#modalModelViewer{contain:layout paint}


/* RAPTOR MUSIC PLAYER — RTL DRAG FIX
   Keep physical positioning LTR so dragging works identically in Arabic. */


/* FINAL MOBILE NAV + STABLE SCROLL FIXES */
.mobile-menu-toggle{display:none;border:1px solid var(--line);background:transparent;color:var(--white);width:42px;height:42px;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer}
@media(max-width:650px){
  .site-header{position:sticky;top:0;z-index:1000;flex-wrap:wrap}
  .mobile-menu-toggle{display:flex;order:2;margin-left:auto}
  .header-actions{order:3}
  .main-nav{display:none;order:4;width:100%;flex-basis:100%;flex-direction:column;gap:0;margin-top:12px;border-top:1px solid var(--line);background:#050505}
  .main-nav.mobile-open{display:flex}
  .main-nav a{display:block;padding:15px 4px;border-bottom:1px solid var(--line);font-size:.75rem}
  .header-actions .bag-link{display:none}
}

/* Do not replay scroll entrance animations after the user has passed a section. */
.reveal{will-change:auto!important}


/* MOBILE 3D: keep the automatic card preview enabled, but let it load lazily. */
@media(max-width:700px){
  .product-preview-3d{display:grid!important}
  .product-card-model{min-height:170px}
  .product-3d-hint{display:block!important}
}
#modalModelViewer{contain:layout paint;}
/* FINAL MOBILE MODAL + 3D INTERACTION FIX */
.modal{z-index:2000!important;}
@media(max-width:650px){
  .modal{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    max-width:100vw!important;
    max-height:100dvh!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  .modal-backdrop{position:fixed!important;inset:0!important;}
  .modal-card{
    position:relative!important;
    width:calc(100vw - 20px)!important;
    max-width:430px!important;
    height:calc(100dvh - 20px)!important;
    max-height:calc(100dvh - 20px)!important;
    margin:10px!important;
    display:flex!important;
    flex-direction:column!important;
    grid-template-columns:1fr!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .modal-image-wrap{
    flex:0 0 43dvh!important;
    width:100%!important;
    height:43dvh!important;
    min-height:0!important;
    max-height:none!important;
    padding:58px 10px 8px!important;
    overflow:hidden!important;
  }
  .modal-media-stage{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
  }
  #modal2DStage img{
    width:92%!important;
    height:92%!important;
    max-height:100%!important;
    object-fit:contain!important;
  }
  #modal3DStage{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  #modalModelViewer{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    pointer-events:auto!important;
    touch-action:pan-y!important;
  }
  .modal-info{
    flex:1 1 auto!important;
    width:100%!important;
    min-width:0!important;
    padding:20px 18px 24px!important;
  }
  .modal-close{
    z-index:1000!important;
    top:10px!important;
    right:10px!important;
  }
  .modal-support-status{
    top:12px!important;
    right:62px!important;
    z-index:1000!important;
  }
  .modal-view-switch{
    top:12px!important;
    left:12px!important;
    z-index:1000!important;
  }
}

/* The Home/Shop 3D preview must actually rotate continuously. */
.product-card-model{
  pointer-events:auto!important;
  touch-action:pan-y!important;
}
.product-preview-3d.is-visible .product-card-model{
  opacity:1!important;
}

/* CRITICAL FIX: the mobile modal must stay hidden until a product is opened. */
.modal.hidden{display:none!important;visibility:hidden!important;pointer-events:none!important;}
.modal:not(.hidden){visibility:visible!important;pointer-events:auto!important;}


/* =========================================================
   MOBILE PRODUCT SCREEN — true vertical scrolling inside the product
   ========================================================= */
@media(max-width:650px){
  #productModal.modal{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    max-width:none!important;
    max-height:none!important;
    padding:0!important;
    display:block!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    background:#080808!important;
    z-index:10000!important;
  }
  #productModal.modal.hidden{display:none!important;}
  #productModal .modal-backdrop{
    position:fixed!important;
    inset:0!important;
    z-index:0!important;
  }
  #productModal .modal-card{
    position:relative!important;
    z-index:1!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:100dvh!important;
    max-height:none!important;
    margin:0!important;
    display:block!important;
    overflow:visible!important;
    border-radius:0!important;
    border:0!important;
    box-shadow:none!important;
    background:linear-gradient(145deg,#181818,#080808 72%)!important;
  }
  #productModal .modal-image-wrap{
    width:100%!important;
    height:58dvh!important;
    min-height:390px!important;
    max-height:none!important;
    display:block!important;
    overflow:hidden!important;
    position:relative!important;
  }
  #productModal .modal-info{
    width:100%!important;
    min-height:42dvh!important;
    padding:28px 18px 42px!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }
  #productModal .modal-close{
    position:fixed!important;
    top:12px!important;
    right:12px!important;
    width:44px!important;
    height:44px!important;
    border-radius:50%!important;
    background:rgba(0,0,0,.72)!important;
    border:1px solid rgba(255,255,255,.25)!important;
    backdrop-filter:blur(8px)!important;
    z-index:30!important;
  }
  #productModal .modal-support-status,
  #productModal .modal-view-switch{
    position:absolute!important;
    z-index:8!important;
  }
  #productModal .modal-support-status{top:18px!important;right:68px!important;}
  #productModal .modal-view-switch{left:18px!important;bottom:18px!important;}
  #productModal .modal-media-stage{
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  #productModal #modal2DStage img{
    width:92%!important;
    height:92%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
  }
  #productModal #modal3DStage{
    width:100%!important;
    height:100%!important;
    overflow:hidden!important;
    touch-action:pan-y!important;
  }
  #productModal #modalModelViewer{
    width:100%!important;
    height:100%!important;
    display:block!important;
    touch-action:pan-y!important;
  }
}


/* FINAL CLEANUP: no modal 2D/3D switch + centered Shop 3D + scrollable product screen */
.modal-view-switch{display:none!important;}
html[dir="rtl"] .product-preview-stage,
html[dir="rtl"] .product-preview-3d,
html[dir="rtl"] .product-preview-3d model-viewer{
  direction:ltr!important;
}
.product-preview-3d{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  padding:0!important;
  margin:0!important;
  display:block!important;
  overflow:hidden!important;
  transform:none!important;
}
.product-preview-3d .product-card-model{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
  transform:none!important;
  object-position:center center!important;
  background:transparent!important;
}
.product-preview-3d.is-auto-preview .product-card-model{animation:none!important;}

@media(max-width:650px){
  #productModal .modal-view-switch{display:none!important;}
  #productModal .modal-image-wrap{padding:48px 8px 8px!important;}
  #productModal #modal3DStage{display:grid!important;place-items:center!important;position:relative!important;}
  #productModal #modalModelViewer{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    transform:none!important;
    direction:ltr!important;
    object-position:center center!important;
  }
  #productModal .modal-info{padding-bottom:70px!important;}
}
\n\n/* FINAL 3D CLEANUP */\n.modal-view-switch,#view2DButton,#view3DButton{display:none!important;}\n.product-preview-stage{position:relative!important;overflow:hidden!important;direction:ltr!important;}\n.product-preview-3d{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;padding:0!important;margin:0!important;display:grid!important;place-items:center!important;justify-items:center!important;align-items:center!important;direction:ltr!important;overflow:hidden!important;}\n.product-preview-3d .product-card-model{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;transform:none!important;direction:ltr!important;background:transparent!important;--poster-color:transparent;}\n.product-preview-3d.is-visible .product-card-model{visibility:visible!important;opacity:1!important;}\n#productModal #modal3DStage,#productModal #modalModelViewer{direction:ltr!important;margin:0 auto!important;transform:none!important;}\n#productModal #modalModelViewer{width:100%!important;max-width:100%!important;}\n#productModal .modal-view-switch{display:none!important;}\n

/* FINAL CLEANUP: remove the modal 2D/3D label and truly center every 3D model. */
#modalSupportStatus{display:none!important;}

.product-preview-stage{
  position:relative!important;
  width:100%!important;
  overflow:hidden!important;
  direction:ltr!important;
}
.product-preview-3d{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  direction:ltr!important;
}
.product-preview-3d .product-card-model{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
  transform:none!important;
  direction:ltr!important;
  --poster-color:transparent;
  --progress-bar-color:transparent;
}
#modal3DStage,#modalModelViewer{
  direction:ltr!important;
  margin:0 auto!important;
  transform:none!important;
}
#modalModelViewer{
  width:100%!important;
  max-width:100%!important;
  height:100%!important;
}


/* FINAL USER REQUEST: keep the 2D / 3D selector visible and usable. */
.modal-view-switch{
  display:flex!important;
  position:absolute!important;
  top:14px!important;
  left:14px!important;
  right:auto!important;
  bottom:auto!important;
  z-index:20!important;
  gap:6px!important;
  padding:4px!important;
  border:1px solid rgba(246,244,240,.18)!important;
  background:rgba(8,8,8,.82)!important;
  backdrop-filter:blur(8px)!important;
}
.modal-view-switch .view-mode-btn{display:block!important;}
@media(max-width:650px){
  #productModal .modal-view-switch{
    display:flex!important;
    top:14px!important;
    left:14px!important;
    right:auto!important;
    bottom:auto!important;
    max-width:none!important;
  }
}

/* Keep Shop 3D centered even in RTL/Arabic layout. */
.product-preview-stage{position:relative!important;overflow:hidden!important;direction:ltr!important;}
.product-preview-3d{direction:ltr!important;}
.product-preview-3d .product-card-model{direction:ltr!important;inset:0!important;margin:0!important;width:100%!important;height:100%!important;transform:none!important;}


/* ===== FINAL MOBILE PRODUCT SCREEN ===== */
.modal.hidden{display:none!important;}
#productModal.modal.hidden{display:none!important;visibility:hidden!important;pointer-events:none!important;}
#productModal.modal:not(.hidden){display:block!important;visibility:visible!important;pointer-events:auto!important;}

@media(max-width:650px){
  #productModal.modal:not(.hidden){
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:none!important;
    padding:0!important;
    margin:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
    background:#080808!important;
    z-index:99999!important;
  }
  #productModal .modal-backdrop{position:fixed!important;inset:0!important;z-index:0!important;}
  #productModal .modal-card{
    position:relative!important;
    z-index:1!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:100dvh!important;
    height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
    overflow:visible!important;
    border-radius:0!important;
    box-sizing:border-box!important;
  }
  #productModal .modal-image-wrap{
    width:100%!important;
    height:56dvh!important;
    min-height:300px!important;
    max-height:560px!important;
    padding:62px 10px 10px!important;
    box-sizing:border-box!important;
    position:relative!important;
    overflow:hidden!important;
  }
  #productModal .modal-media-stage{width:100%!important;height:100%!important;min-height:0!important;}
  #productModal #modal2DStage img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;display:block!important;margin:0 auto!important;}
  #productModal #modal3DStage{width:100%!important;height:100%!important;min-height:0!important;display:grid!important;place-items:center!important;overflow:hidden!important;}
  #productModal #modalModelViewer{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;display:block!important;margin:0 auto!important;}
  #productModal .modal-info{width:100%!important;min-width:0!important;min-height:44dvh!important;padding:28px 18px 80px!important;box-sizing:border-box!important;overflow:visible!important;}
  #productModal .modal-close{position:fixed!important;top:12px!important;right:12px!important;width:44px!important;height:44px!important;z-index:100!important;border-radius:50%!important;background:rgba(0,0,0,.78)!important;border:1px solid rgba(255,255,255,.25)!important;}
  #productModal .modal-view-switch{
    display:flex!important;
    position:absolute!important;
    top:16px!important;
    left:16px!important;
    right:auto!important;
    bottom:auto!important;
    z-index:90!important;
    gap:5px!important;
    padding:4px!important;
    border:1px solid rgba(255,255,255,.22)!important;
    border-radius:10px!important;
    background:rgba(5,5,5,.86)!important;
    backdrop-filter:blur(10px)!important;
  }
  #productModal .view-mode-btn{
    display:block!important;
    min-width:48px!important;
    height:34px!important;
    padding:0 12px!important;
    border:1px solid transparent!important;
    border-radius:7px!important;
    background:transparent!important;
    color:#aaa!important;
    font:600 12px/34px Arial,sans-serif!important;
    cursor:pointer!important;
  }
  #productModal .view-mode-btn.active{background:#f5f5f5!important;color:#080808!important;border-color:#f5f5f5!important;}
  #productModal .view-mode-btn:disabled{opacity:.35!important;cursor:not-allowed!important;}
}

/* ===== FINAL SHOP 3D CENTERING ===== */
.product-preview-stage{position:relative!important;overflow:hidden!important;direction:ltr!important;}
.product-preview-3d{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;display:grid!important;place-items:center!important;overflow:hidden!important;direction:ltr!important;}
.product-preview-3d .product-card-model{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;display:block!important;max-width:none!important;max-height:none!important;transform:none!important;direction:ltr!important;}

/* FINAL BUGFIX: never allow the inactive modal view to remain underneath the active one. */
#productModal #modal2DStage.hidden,
#productModal #modal3DStage.hidden{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
#productModal #modal2DStage:not(.hidden),
#productModal #modal3DStage:not(.hidden){
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}

/* Keep the user's 2D / 3D selector visible above both media views. */
#productModal .modal-view-switch{
  display:flex!important;
  z-index:200!important;
}
#productModal .view-mode-btn{
  display:block!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

/* FINAL: subtle 2D / 3D view transition. The selector remains visible. */
#productModal .modal-media-stage.view-switch-enter{
  animation: raptorViewSwitch .42s cubic-bezier(.22,1,.36,1) both;
  will-change: opacity, transform, filter;
}
@keyframes raptorViewSwitch{
  from{opacity:0;transform:translateY(8px) scale(.985);filter:blur(2px)}
  to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
}
#productModal .modal-view-switch{display:flex!important;}
#productModal .modal-view-switch .view-mode-btn{display:block!important;}
#productModal #modal2DStage.hidden,#productModal #modal3DStage.hidden{display:none!important;}
@media(prefers-reduced-motion:reduce){#productModal .modal-media-stage.view-switch-enter{animation:none!important;}}

/* =========================================================
   RAPTOR HERO — MORE VISIBLE IMAGE ENTRANCE
   ========================================================= */
.hero-gallery-image{
  opacity:0 !important;
  transform:translate3d(78px,30px,0) scale(.86) rotate(1.1deg) !important;
  filter:blur(16px) saturate(.72) brightness(.58) !important;
  transition:opacity .85s cubic-bezier(.22,1,.36,1),
             transform 1.05s cubic-bezier(.22,1,.36,1),
             filter .9s cubic-bezier(.22,1,.36,1) !important;
  will-change:opacity,transform,filter;
}
.hero-gallery.is-ready .hero-gallery-image.is-active{
  opacity:1 !important;
  transform:translate3d(0,0,0) scale(1) rotate(0) !important;
  filter:blur(0) saturate(1) brightness(1) drop-shadow(0 28px 44px rgba(0,0,0,.46)) !important;
  animation:raptorHeroImageFloat 5.2s ease-in-out 1s infinite !important;
}
.hero-gallery-image.is-leaving{
  opacity:0 !important;
  transform:translate3d(-48px,-10px,0) scale(1.04) rotate(-.7deg) !important;
  filter:blur(8px) saturate(.86) brightness(.7) !important;
  z-index:1;
}
@keyframes raptorHeroImageFloat{
  0%,100%{transform:translate3d(0,0,0) scale(1) rotate(0)}
  50%{transform:translate3d(0,-6px,0) scale(1.014) rotate(-.12deg)}
}
@media(max-width:650px){
  .hero-gallery-image{transform:translate3d(42px,24px,0) scale(.9) rotate(.7deg) !important;}
}
