/* Club Diamantinas — base styles, animations, hamburger, and generated hover/focus/after states */

  body { margin: 0; background: #050505; }
  html { scroll-behavior: smooth; }
  a { color: #d4af37; }
  a:hover { color: #ffe9a8; }
  ::selection { background: rgba(212,175,55,0.3); color: #fff8e2; }
  ::placeholder { color: rgba(242,237,226,0.42); }
  ::-webkit-scrollbar { width: 10px; height: 6px; }
  ::-webkit-scrollbar-track { background: #0a0a09; }
  ::-webkit-scrollbar-thumb { background: rgba(212,175,55,0.35); border-radius: 6px; }
  ::-webkit-scrollbar-thumb:hover { background: rgba(212,175,55,0.6); }
  @keyframes dmSheen { 0% { background-position: 0% 50%; } 100% { background-position: 200% 50%; } }
  @keyframes dmSweep { 0% { transform: translateX(-120%) skewX(-20deg); } 55%, 100% { transform: translateX(420%) skewX(-20deg); } }
  @keyframes dmAuroraA { 0%, 100% { transform: translate3d(-6%, -4%, 0) scale(1); opacity: .55; } 50% { transform: translate3d(8%, 6%, 0) scale(1.25); opacity: .85; } }
  @keyframes dmAuroraB { 0%, 100% { transform: translate3d(6%, 8%, 0) scale(1.15); opacity: .4; } 50% { transform: translate3d(-8%, -6%, 0) scale(1); opacity: .7; } }
  @keyframes dmBreath { 0%, 100% { filter: drop-shadow(0 0 6px rgba(212,175,55,.45)); opacity: .82; } 50% { filter: drop-shadow(0 0 26px rgba(255,224,140,.95)); opacity: 1; } }
  @keyframes dmTwinkle { 0%, 100% { opacity: 0; transform: scale(.4); } 45% { opacity: 1; transform: scale(1.35); } }
  @keyframes dmFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-12px); } }
  @keyframes dmScrollHint { 0% { transform: translateY(0); opacity: 0; } 30% { opacity: 1; } 100% { transform: translateY(16px); opacity: 0; } }
  @keyframes dmSpin { to { transform: rotate(360deg); } }
  @media (max-width: 900px) {
    .dm-nav-links { display: none !important; }
    .dm-hamburger { display: flex !important; }
  }
  body.dm-menu-open { overflow: hidden; }

/* Generated from the original design's hover/focus/after micro-interactions */
.dm-hov-1:hover { filter:drop-shadow(0 0 14px rgba(212,175,55,.55)); }
.dm-hov-2:hover { color:#ffe9a8; border-bottom-color:rgba(212,175,55,.85); text-shadow:0 0 18px rgba(212,175,55,.6); }
.dm-hov-3:hover { color:#ffe9a8; border-bottom-color:rgba(212,175,55,.85); text-shadow:0 0 18px rgba(212,175,55,.6); }
.dm-hov-4:hover { color:#ffe9a8; border-bottom-color:rgba(212,175,55,.85); text-shadow:0 0 18px rgba(212,175,55,.6); }
.dm-hov-5:hover { color:#ffe9a8; border-bottom-color:rgba(212,175,55,.85); text-shadow:0 0 18px rgba(212,175,55,.6); }
.dm-hov-6:hover { color:#ffe9a8; border-bottom-color:rgba(212,175,55,.85); text-shadow:0 0 18px rgba(212,175,55,.6); }
.dm-hov-7:hover { color:#ffe9a8; border-bottom-color:rgba(212,175,55,.85); text-shadow:0 0 18px rgba(212,175,55,.6); }
.dm-hov-3b:hover, .dm-hov-6b:hover, .dm-hov-6c:hover, .dm-navlink:hover { color:#ffe9a8; border-bottom-color:rgba(212,175,55,.85); text-shadow:0 0 18px rgba(212,175,55,.6); }
.dm-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* Reusable utility hover classes for elements added after the original generated set */
.dm-btn-primary:hover { background-position:0% 0; box-shadow:0 18px 54px rgba(0,0,0,.6), 0 0 46px rgba(212,175,55,.65); transform:translateY(-3px); }
.dm-btn-outline:hover { border-color:rgba(212,175,55,.95); background:rgba(212,175,55,.14); box-shadow:0 0 34px rgba(212,175,55,.4); color:#fff8e2; transform:translateY(-3px); }
.dm-card-hov:hover { box-shadow:0 0 44px rgba(212,175,55,.45), 0 26px 54px rgba(0,0,0,.55); border-color:rgba(212,175,55,.7); transform:translateY(-4px); }

/* Floating WhatsApp button */
.dm-whatsapp-float { position:fixed; right:clamp(14px,3vw,26px); bottom:clamp(14px,3vw,26px); z-index:90; display:flex; align-items:center; justify-content:center; width:58px; height:58px; border-radius:50%; background:#25D366; box-shadow:0 10px 30px rgba(0,0,0,.45), 0 0 0 rgba(37,211,102,.6); text-decoration:none; animation:dmWhatsappPulse 2.6s ease-in-out infinite; }
.dm-whatsapp-float:hover { transform:scale(1.08); }
.dm-whatsapp-float svg { width:30px; height:30px; }
@keyframes dmWhatsappPulse { 0%, 100% { box-shadow:0 10px 30px rgba(0,0,0,.45), 0 0 0 0 rgba(37,211,102,.5); } 50% { box-shadow:0 10px 30px rgba(0,0,0,.45), 0 0 0 10px rgba(37,211,102,0); } }

/* Lightbox */
.dm-lightbox { position:fixed; inset:0; z-index:200; display:none; align-items:center; justify-content:center; background:rgba(5,5,5,.94); backdrop-filter:blur(10px); padding:30px; }
.dm-lightbox.dm-open { display:flex; }
.dm-lightbox img { max-width:min(92vw,1100px); max-height:86vh; width:auto; height:auto; border-radius:10px; box-shadow:0 30px 80px rgba(0,0,0,.7); }
.dm-lightbox-close { position:absolute; top:20px; right:24px; width:44px; height:44px; border-radius:50%; border:1px solid rgba(212,175,55,.5); background:rgba(255,255,255,.06); color:#ffe9a8; font-size:22px; line-height:1; cursor:pointer; }
.dm-lightbox-close:hover { background:rgba(212,175,55,.2); }
.dm-gallery-item { cursor:pointer; }

/* Gallery category filter chips */
.dm-filter-chip { cursor:pointer; user-select:none; }
.dm-filter-chip.dm-active { background:rgba(212,175,55,.22) !important; border-color:rgba(212,175,55,.9) !important; color:#fff8e2 !important; }

/* Empty-state ready sections (auspiciadores / deportistas) */
.dm-empty-state { border:1px dashed rgba(212,175,55,.35); border-radius:20px; padding:clamp(30px,4vw,48px); text-align:center; color:#9a9384; font-size:14px; line-height:1.8; }

/* Rotating photo carousel */
.dm-carousel { background:#0a0a09; }
.dm-carousel-slide { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity 1.1s ease; }
.dm-carousel-slide.dm-active { opacity:1; }
.dm-hov-8:hover { background:rgba(212,175,55,.2); border-color:rgba(212,175,55,.95); box-shadow:0 0 28px rgba(212,175,55,.45); color:#fff8e2; }
.dm-hov-9:hover { background-position:0% 0; box-shadow:0 18px 54px rgba(0,0,0,.6), 0 0 46px rgba(212,175,55,.65); transform:translateY(-3px); }
.dm-aft-9::after { content:''; position:absolute; top:0; left:0; width:36%; height:100%; background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent); animation:dmSweep 4.2s ease-in-out infinite; pointer-events:none; }
.dm-hov-10:hover { border-color:rgba(212,175,55,.95); background:rgba(212,175,55,.14); box-shadow:0 0 34px rgba(212,175,55,.4); color:#fff8e2; transform:translateY(-3px); }
.dm-hov-11:hover { box-shadow:0 0 44px rgba(212,175,55,.45), 0 26px 54px rgba(0,0,0,.55); border-color:rgba(212,175,55,.7); }
.dm-hov-12:hover { box-shadow:0 0 44px rgba(212,175,55,.45), 0 26px 54px rgba(0,0,0,.55); border-color:rgba(212,175,55,.7); }
.dm-hov-13:hover { box-shadow:0 0 44px rgba(212,175,55,.45), 0 26px 54px rgba(0,0,0,.55); border-color:rgba(212,175,55,.7); }
.dm-hov-14:hover { box-shadow:0 0 44px rgba(212,175,55,.45), 0 26px 54px rgba(0,0,0,.55); border-color:rgba(212,175,55,.7); }
.dm-hov-15:hover { box-shadow:0 0 56px rgba(212,175,55,.36), 0 34px 80px rgba(0,0,0,.65); border-color:rgba(212,175,55,.6); }
.dm-hov-16:hover { border-color:rgba(212,175,55,.8); box-shadow:0 0 54px rgba(212,175,55,.4), 0 30px 64px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.14); transform:translateY(-4px); }
.dm-hov-17:hover { border-color:rgba(212,175,55,.8); box-shadow:0 0 54px rgba(212,175,55,.4), 0 30px 64px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.14); transform:translateY(-4px); }
.dm-hov-18:hover { border-color:rgba(212,175,55,.8); box-shadow:0 0 54px rgba(212,175,55,.4), 0 30px 64px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.14); transform:translateY(-4px); }
.dm-hov-19:hover { border-color:rgba(212,175,55,.7); box-shadow:0 0 34px rgba(212,175,55,.3), 0 18px 40px rgba(0,0,0,.5); transform:translateY(-3px); }
.dm-hov-20:hover { border-color:rgba(212,175,55,.7); box-shadow:0 0 34px rgba(212,175,55,.3), 0 18px 40px rgba(0,0,0,.5); transform:translateY(-3px); }
.dm-hov-21:hover { border-color:rgba(212,175,55,.7); box-shadow:0 0 34px rgba(212,175,55,.3), 0 18px 40px rgba(0,0,0,.5); transform:translateY(-3px); }
.dm-hov-22:hover { border-color:rgba(212,175,55,.7); box-shadow:0 0 34px rgba(212,175,55,.3), 0 18px 40px rgba(0,0,0,.5); transform:translateY(-3px); }
.dm-hov-23:hover { border-color:rgba(212,175,55,.7); box-shadow:0 0 34px rgba(212,175,55,.3), 0 18px 40px rgba(0,0,0,.5); transform:translateY(-3px); }
.dm-hov-24:hover { border-color:rgba(212,175,55,.7); box-shadow:0 0 34px rgba(212,175,55,.3), 0 18px 40px rgba(0,0,0,.5); transform:translateY(-3px); }
.dm-foc-25:focus { border-color:rgba(212,175,55,.9); box-shadow:0 0 22px rgba(212,175,55,.28); background:rgba(255,255,255,.07); }
.dm-foc-26:focus { border-color:rgba(212,175,55,.9); box-shadow:0 0 22px rgba(212,175,55,.28); background:rgba(255,255,255,.07); }
.dm-foc-27:focus { border-color:rgba(212,175,55,.9); box-shadow:0 0 22px rgba(212,175,55,.28); }
.dm-foc-28:focus { border-color:rgba(212,175,55,.9); box-shadow:0 0 22px rgba(212,175,55,.28); background:rgba(255,255,255,.07); }
.dm-hov-29:hover { background-position:0% 0; box-shadow:0 16px 46px rgba(0,0,0,.6), 0 0 42px rgba(212,175,55,.6); transform:translateY(-3px); }
.dm-hov-30:hover { color:#ffe9a8; text-shadow:0 0 18px rgba(212,175,55,.6); }
.dm-hov-31:hover { color:#ffe9a8; text-shadow:0 0 18px rgba(212,175,55,.6); }
.dm-hov-32:hover { color:#ffe9a8; text-shadow:0 0 18px rgba(212,175,55,.6); }
.dm-hov-33:hover { color:#ffe9a8; text-shadow:0 0 18px rgba(212,175,55,.6); }
.dm-foc-34:focus { border-color:rgba(212,175,55,.9); box-shadow:0 0 22px rgba(212,175,55,.28); background:rgba(255,255,255,.07); }
.dm-foc-35:focus { border-color:rgba(212,175,55,.9); box-shadow:0 0 22px rgba(212,175,55,.28); background:rgba(255,255,255,.07); }
.dm-foc-36:focus { border-color:rgba(212,175,55,.9); box-shadow:0 0 22px rgba(212,175,55,.28); background:rgba(255,255,255,.07); }
.dm-foc-37:focus { border-color:rgba(212,175,55,.9); box-shadow:0 0 22px rgba(212,175,55,.28); background:rgba(255,255,255,.07); }
.dm-hov-38:hover { background-position:0% 0; box-shadow:0 16px 46px rgba(0,0,0,.6), 0 0 42px rgba(212,175,55,.6); transform:translateY(-3px); }
.dm-hov-39:hover { background-position:0% 0; box-shadow:0 18px 54px rgba(0,0,0,.6), 0 0 46px rgba(212,175,55,.65); transform:translateY(-3px); }
.dm-aft-39::after { content:''; position:absolute; top:0; left:0; width:36%; height:100%; background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent); animation:dmSweep 4.6s ease-in-out infinite; pointer-events:none; }
.dm-hov-40:hover { border-color:rgba(212,175,55,.7); box-shadow:0 0 46px rgba(212,175,55,.34), 0 24px 54px rgba(0,0,0,.6); }
.dm-hov-41:hover { color:#ffe9a8; }
.dm-hov-42:hover { color:#ffe9a8; }
.dm-hov-43:hover { color:#ffe9a8; }
.dm-hov-44:hover { background:rgba(212,175,55,.2); border-color:rgba(212,175,55,.9); box-shadow:0 0 24px rgba(212,175,55,.4); color:#fff8e2; }
.dm-hov-45:hover { background:rgba(212,175,55,.2); border-color:rgba(212,175,55,.9); box-shadow:0 0 24px rgba(212,175,55,.4); color:#fff8e2; }
.dm-hov-46:hover { color:#ffe9a8; }
.dm-hov-47:hover { color:#ffe9a8; }
.dm-hov-48:hover { color:#ffe9a8; }
.dm-hov-49:hover { color:#ffe9a8; }
.dm-hov-50:hover { color:#ffe9a8; }
.dm-hov-51:hover { color:#ffe9a8; }
.dm-hov-52:hover { color:#ffe9a8; }
.dm-hov-53:hover { color:#ffe9a8; }
