/* Theme: Vivix purple → pink palette
   Accessible defaults and component tweaks. Apply site-wide by linking this file. */
:root{
  --color-accent: #7D3CFF;
  --color-accent-dark: #4A1077;
  --color-accent-2: #FF40A0;
  --color-accent-2-dark: #B30E6B;
  --color-accent-light: #CFA3FF;
  --color-surface: #001018;
  --color-on-accent: #ffffff;
  --color-muted: rgba(255,255,255,.72);
}

/* Logo spotlight */
#logo a{position:relative;display:inline-block}
#logo a::before{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:92px;height:92px;border-radius:50%;background:radial-gradient(circle at 30% 30%, rgba(125,60,255,.18), rgba(255,64,160,.06));z-index:-1;pointer-events:none}
#logo img{transition:transform .25s ease,filter .25s ease;filter:drop-shadow(0 10px 20px rgba(125,60,255,.18))}
#logo:hover img{transform:translateY(-3px) scale(1.02);filter:drop-shadow(0 20px 44px rgba(125,60,255,.28))}

/* Nav & active state */
#mainmenu .menu-item{position:relative}
#mainmenu .menu-item:hover,#mainmenu .menu-item:focus{color:var(--color-accent-light)}
#mainmenu .menu-item.active{color:var(--color-accent-light);font-weight:700}
#mainmenu .menu-item.active::after{content:'';position:absolute;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-accent),var(--color-accent-2));bottom:-14px;border-radius:4px}

/* Buttons & CTA */
.btn-main{background:linear-gradient(90deg,var(--color-accent-dark),var(--color-accent-2-dark));border:none;color:var(--color-on-accent);box-shadow:0 10px 30px rgba(125,60,255,.12)}
.btn-main:hover{box-shadow:0 20px 50px rgba(125,60,255,.18);transform:translateY(-2px)}
.btn-outline-light{color:var(--color-accent-light);border-color:rgba(255,255,255,.06)}

/* Badge */
.badge.bg-accent{background:linear-gradient(90deg,var(--color-accent-dark),var(--color-accent-2-dark));color:var(--color-on-accent);border:none}

/* Service heading separator */
.service-card h4::after, .service-card h5::after{background:linear-gradient(90deg,var(--color-accent-light),var(--color-accent-2));}
#section-services h2::after,#section-packages h2::after{background:linear-gradient(90deg,var(--color-accent-light),var(--color-accent-2));}

/* Hero accents */
.hero-card-upgrade{background:linear-gradient(135deg,rgba(125,60,255,0.10),rgba(255,64,160,0.06));border-left:4px solid rgba(125,60,255,0.12)}
.hero-card-upgrade::after{background:linear-gradient(90deg,rgba(255,64,160,0.08),rgba(125,60,255,0.06));}

/* Accessibility */
:focus{outline:3px solid rgba(125,60,255,.18);outline-offset:2px}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){*{transition:none!important}}

/* Small screens */
@media (max-width:767px){#logo a::before{width:70px;height:70px}}
