:root{
  --dw-yellow:#ffc107;
  --dw-yellow-600:#e0aa06;
  --dw-black:#000000;
  --dw-dark-900:#0b0b0b;
  --dw-dark-800:#121212;
  --dw-text:#e9ecef;
  --dw-text-dim:#98a2b3;
}

/* Ensure background colors are always applied */
body{
  background:#000 !important;
  color:var(--dw-text) !important;
}

html,body{height:100%;}
body{
  font-family:'Cairo',system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  background:#000 !important; 
  color:var(--dw-text) !important;
  scroll-behavior:smooth;
  line-height:1.8;
  transition:all .3s ease;
}

/* Font family based on direction */
body.rtl-mode,
[dir="rtl"] body,
[dir="rtl"] p,
[dir="rtl"] h1,
[dir="rtl"] h2,
[dir="rtl"] h3,
[dir="rtl"] h4,
[dir="rtl"] h5,
[dir="rtl"] h6,
[dir="rtl"] span,
[dir="rtl"] div,
[dir="rtl"] a,
[dir="rtl"] li,
[dir="rtl"] label,
[dir="rtl"] button{
  font-family:'Cairo',system-ui,-apple-system,"Segoe UI",Arial,sans-serif !important;
}
body.ltr-mode,
[dir="ltr"] body,
[dir="ltr"] p,
[dir="ltr"] h1,
[dir="ltr"] h2,
[dir="ltr"] h3,
[dir="ltr"] h4,
[dir="ltr"] h5,
[dir="ltr"] h6,
[dir="ltr"] span,
[dir="ltr"] div,
[dir="ltr"] a,
[dir="ltr"] li,
[dir="ltr"] label,
[dir="ltr"] button{
  font-family:'Roboto',system-ui,-apple-system,"Segoe UI",Arial,sans-serif !important;
}

/* RTL/LTR Mode Support */
body.rtl-mode{
  direction:rtl;
  text-align:right;
}
body.ltr-mode{
  direction:ltr;
  text-align:left;
}

/* Fix for Bootstrap classes in RTL/LTR */
[dir="rtl"] .ms-auto{
  margin-left:0 !important;
  margin-right:auto !important;
}
[dir="ltr"] .ms-auto{
  margin-right:0 !important;
  margin-left:auto !important;
}

[dir="rtl"] .me-auto{
  margin-right:0 !important;
  margin-left:auto !important;
}
[dir="ltr"] .me-auto{
  margin-left:0 !important;
  margin-right:auto !important;
}

/* Fix navbar alignment */
[dir="rtl"] .navbar-nav.ms-auto{
  margin-right:0 !important;
  margin-left:auto !important;
}
[dir="ltr"] .navbar-nav.ms-auto{
  margin-left:0 !important;
  margin-right:auto !important;
}

/* Fix navbar items spacing */
[dir="rtl"] .navbar-nav .nav-item{
  margin-left:0;
}
[dir="ltr"] .navbar-nav .nav-item{
  margin-right:0;
}

/* Fix container padding */
[dir="rtl"] .container,
[dir="rtl"] .container-fluid{
  padding-right:var(--bs-gutter-x,.75rem);
  padding-left:var(--bs-gutter-x,.75rem);
}
[dir="ltr"] .container,
[dir="ltr"] .container-fluid{
  padding-left:var(--bs-gutter-x,.75rem);
  padding-right:var(--bs-gutter-x,.75rem);
}

/* Fix specific elements for RTL/LTR */
[dir="ltr"] .dw-wings::before{
  left:auto;
  right:-60px;
}
[dir="ltr"] .dw-wings::after{
  right:auto;
  left:-60px;
}

[dir="ltr"] .dw-backtotop{
  right:auto;
  left:16px;
}

/* Fix carousel controls */
[dir="ltr"] .carousel-control-prev{
  left:0;
  right:auto;
}
[dir="ltr"] .carousel-control-next{
  right:0;
  left:auto;
}

/* Fix form labels and inputs */
[dir="ltr"] .form-label{
  text-align:left;
}
[dir="rtl"] .form-label{
  text-align:right;
}

/* Fix specific justify-content cases */
[dir="ltr"] .d-flex.justify-content-between{
  flex-direction:row;
}
[dir="rtl"] .d-flex.justify-content-between{
  flex-direction:row-reverse;
}

/* Fix text alignment in cards */
[dir="ltr"] .dw-service,
[dir="ltr"] .stat-card{
  text-align:left;
}
[dir="rtl"] .dw-service,
[dir="rtl"] .stat-card{
  text-align:right;
}

/* Arabic Typography Enhancements */
p, .lead{
  line-height:1.9;
  font-size:1.05rem;
}
.dw-service p, .stat-card .label{
  line-height:1.7;
}

/* Helpers - Force important to override Bootstrap */
.text-secondary-400{color:var(--dw-text-dim)!important}
.bg-dark-900{background:var(--dw-dark-900)!important}
.bg-black-950{background:#050505!important}
.py-100{padding:100px 0}

/* Ensure text colors persist */
.text-warning{color:var(--dw-yellow)!important}
.text-dark{color:#000!important}

/* Force background colors on all sections - Override Bootstrap */
section{background:#000!important}
.dw-hero{background:#000!important}
.dw-cta-2025{background:radial-gradient(600px 300px at 20% 120%, rgba(255,193,7,.1), transparent 60%), radial-gradient(600px 300px at 80% -20%, rgba(255,193,7,.12), transparent 60%)!important}

/* Ensure all text maintains color */
p, h1, h2, h3, h4, h5, h6, span, div, a, li{
  color:inherit;
}
[dir="rtl"] body, body.rtl-mode{
  color:var(--dw-text)!important;
}
[dir="ltr"] body, body.ltr-mode{
  color:var(--dw-text)!important;
}

/* Navbar */
.dw-navbar{background:rgba(0,0,0,.6); backdrop-filter:saturate(180%) blur(14px); border-bottom:1px solid #111}
.dw-navbar .nav-link{color:#cbd5e1}
.dw-navbar .nav-link:hover,.dw-navbar .nav-link.active{color:#fff}
.dw-cta{font-weight:700}
.dw-navbar-logo{
  height:55px;
  width:auto;
  transition:all .3s ease;
  filter:drop-shadow(0 0 8px rgba(255,193,7,.3));
}
.dw-navbar-logo:hover{
  transform:scale(1.05);
  filter:drop-shadow(0 0 12px rgba(255,193,7,.5));
}

/* Navbar Layout - Logo and Menu Positioning */
.dw-navbar-wrapper{
  position:relative;
  display:flex;
  align-items:center;
  width:100%;
}

.dw-navbar-spacer{
  flex:1;
  min-width:0;
  order:2;
}

.dw-navbar-logo-wrapper{
  flex-shrink:0;
  order:1;
}

.dw-navbar-menu-wrapper{
  flex-shrink:0;
  order:3;
}

.navbar-toggler{
  order:4;
  margin-left:15px;
}

/* RTL (Arabic) - Logo on right, Menu on left */
[dir="rtl"] .dw-navbar-wrapper,
body.rtl-mode .dw-navbar-wrapper{
  flex-direction:row;
}

[dir="rtl"] .dw-navbar-logo-wrapper,
body.rtl-mode .dw-navbar-logo-wrapper{
  order:3;
  margin-right:0;
  margin-left:auto;
}

[dir="rtl"] .dw-navbar-menu-wrapper,
body.rtl-mode .dw-navbar-menu-wrapper{
  order:1;
  margin-left:0;
  margin-right:auto;
  justify-content: left !important;
}

[dir="rtl"] .dw-navbar-spacer,
body.rtl-mode .dw-navbar-spacer{
  order:2;
}

[dir="rtl"] .navbar-toggler,
body.rtl-mode .navbar-toggler{
  order:4;
  margin-right:15px;
  margin-left:0;
}

[dir="rtl"] .navbar-nav,
body.rtl-mode .navbar-nav{
  margin-left:0 !important;
  margin-right:0 !important;
}

/* LTR (English) - Logo on left, Menu on right */
[dir="ltr"] .dw-navbar-wrapper,
body.ltr-mode .dw-navbar-wrapper{
  flex-direction:row;
}

[dir="ltr"] .dw-navbar-logo-wrapper,
body.ltr-mode .dw-navbar-logo-wrapper{
  order:1;
  margin-left:0;
  margin-right:auto;
}

[dir="ltr"] .dw-navbar-menu-wrapper,
body.ltr-mode .dw-navbar-menu-wrapper{
  order:3;
  margin-right:0;
  margin-left:auto;
  justify-content: right !important;
}

[dir="ltr"] .dw-navbar-spacer,
body.ltr-mode .dw-navbar-spacer{
  order:2;
}

[dir="ltr"] .navbar-toggler,
body.ltr-mode .navbar-toggler{
  order:4;
  margin-left:15px;
  margin-right:0;
}

[dir="ltr"] .navbar-nav,
body.ltr-mode .navbar-nav{
  margin-right:0 !important;
  margin-left:0 !important;
}

/* Mobile Responsive */
@media (max-width:991.98px){
  .dw-navbar-spacer{
    display:none;
  }
  
  .dw-navbar-wrapper{
    flex-wrap:wrap;
  }
  
  .dw-navbar-logo-wrapper{
    order:1 !important;
  }
  
  .navbar-toggler{
    order:2 !important;
  }
  
  .dw-navbar-menu-wrapper{
    order:3 !important;
    width:100%;
    margin-top:15px;
  }
  
  [dir="rtl"] .navbar-nav,
  body.rtl-mode .navbar-nav,
  [dir="ltr"] .navbar-nav,
  body.ltr-mode .navbar-nav{
    margin-left:0 !important;
    margin-right:0 !important;
  }
}

.dw-lang-toggle{
  min-width:50px;
  font-weight:600;
  border-radius:8px;
  transition:all .3s ease;
}
.dw-lang-toggle:hover{
  background:rgba(255,255,255,.1);
  transform:scale(1.05);
}

/* Hero - Complete Redesign 2025 */
.dw-hero{
  padding-top:120px; padding-bottom:100px; 
  background:#000;
  position:relative;
  min-height:90vh;
  display:flex;
  align-items:center;
}
.dw-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(1400px 600px at 70% -15%, rgba(255,193,7,.15), transparent 65%),
    radial-gradient(1000px 500px at 20% 20%, rgba(255,193,7,.08), transparent 60%),
    radial-gradient(800px 400px at 90% 80%, rgba(255,255,255,.03), transparent 60%);
  animation:heroBgShift 20s ease-in-out infinite;
  will-change:opacity;
}
@keyframes heroBgShift{
  0%,100%{opacity:1}
  50%{opacity:.85}
}

/* Grid Pattern */
.dw-hero-grid{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,193,7,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,193,7,.03) 1px, transparent 1px);
  background-size:50px 50px;
  animation:gridMove 30s linear infinite;
  will-change:transform;
  opacity:.4;
}
@keyframes gridMove{
  from{transform:translate(0,0)}
  to{transform:translate(50px,50px)}
}

/* Glow Effects */
.dw-hero-glow{
  position:absolute;
  border-radius:50%;
  filter:blur(60px);
  pointer-events:none;
  will-change:transform, opacity;
}
.dw-glow-1{
  width:600px; height:600px;
  background:radial-gradient(circle, rgba(255,193,7,.25), transparent 70%);
  top:-200px; right:10%;
  animation:glowFloat1 15s ease-in-out infinite;
}
.dw-glow-2{
  width:500px; height:500px;
  background:radial-gradient(circle, rgba(255,255,255,.08), transparent 70%);
  bottom:-150px; left:15%;
  animation:glowFloat2 18s ease-in-out infinite;
}
@keyframes glowFloat1{
  0%,100%{transform:translate(0,0) scale(1); opacity:.6}
  50%{transform:translate(30px,-40px) scale(1.1); opacity:.4}
}
@keyframes glowFloat2{
  0%,100%{transform:translate(0,0) scale(1); opacity:.5}
  50%{transform:translate(-40px,30px) scale(1.15); opacity:.3}
}

/* Stars (replacing particles) */
.dw-hero-particles{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
}
.dw-hero-particles .particle{
  position:absolute;
  width:3px; 
  height:3px;
  background:var(--dw-yellow);
  border-radius:50%;
  opacity:.7;
  box-shadow:0 0 6px var(--dw-yellow), 0 0 12px rgba(255,193,7,.4);
  animation:starTwinkle 3s ease-in-out infinite;
}
.dw-hero-particles .particle::before{
  content:"";
  position:absolute;
  width:100%; height:100%;
  background:inherit;
  border-radius:inherit;
  box-shadow:inherit;
  animation:starSparkle 2s ease-in-out infinite;
}

/* Star positions - scattered like night sky */
.dw-hero-particles .particle:nth-child(1){
  top:15%; right:12%;
  animation-delay:0s;
}
.dw-hero-particles .particle:nth-child(2){
  top:25%; right:35%;
  animation-delay:.5s;
}
.dw-hero-particles .particle:nth-child(3){
  top:45%; right:8%;
  animation-delay:1s;
}
.dw-hero-particles .particle:nth-child(4){
  top:55%; right:55%;
  animation-delay:1.5s;
}
.dw-hero-particles .particle:nth-child(5){
  top:70%; right:25%;
  animation-delay:.8s;
}
.dw-hero-particles .particle:nth-child(6){
  top:85%; right:70%;
  animation-delay:1.2s;
}
.dw-hero-particles .particle:nth-child(7){
  top:30%; right:80%;
  animation-delay:.3s;
}
.dw-hero-particles .particle:nth-child(8){
  top:60%; right:90%;
  animation-delay:1.8s;
}
.dw-hero-particles .particle:nth-child(9){
  top:10%; right:50%;
  animation-delay:.6s;
}
.dw-hero-particles .particle:nth-child(10){
  top:75%; right:45%;
  animation-delay:1.4s;
}

/* Larger stars */
.dw-hero-particles .particle:nth-child(2n){
  width:4px;
  height:4px;
  box-shadow:0 0 8px var(--dw-yellow), 0 0 16px rgba(255,193,7,.5);
}

/* Extra bright stars */
.dw-hero-particles .particle:nth-child(3n){
  width:5px;
  height:5px;
  box-shadow:0 0 10px var(--dw-yellow), 0 0 20px rgba(255,193,7,.6), 0 0 30px rgba(255,193,7,.3);
}

@keyframes starTwinkle{
  0%,100%{
    opacity:.4;
    transform:scale(1);
  }
  50%{
    opacity:1;
    transform:scale(1.3);
  }
}

@keyframes starSparkle{
  0%,100%{
    opacity:0;
    transform:scale(0);
  }
  50%{
    opacity:1;
    transform:scale(1.5);
  }
}

/* Badge Pulse */
.dw-badge-pulse{
  animation:pulseGlow 3s ease-in-out infinite;
  box-shadow:0 0 20px rgba(255,193,7,.4);
}
@keyframes pulseGlow{
  0%,100%{box-shadow:0 0 20px rgba(255,193,7,.4)}
  50%{box-shadow:0 0 30px rgba(255,193,7,.6)}
}

/* Title Animation */
.dw-title-animated .dw-title-line{
  display:block;
  animation:titleReveal .8s ease-out forwards;
  opacity:0;
  transform:translateY(20px);
}
.dw-title-animated .dw-title-line:nth-child(2){
  animation-delay:.3s;
}
@keyframes titleReveal{
  to{opacity:1; transform:translateY(0)}
}

/* Gradient Text Alt */
.dw-gradient-text-alt{
  background:linear-gradient(90deg,#ffd54d, #ffc107 30%, #ff9800 70%, #ffd54d);
  background-size:200% auto;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  animation:gradientShift 4s linear infinite;
}
@keyframes gradientShift{
  to{background-position:200% center}
}

/* Text Shimmer */
.dw-text-shimmer{
  animation:shimmer 3s ease-in-out infinite;
}
@keyframes shimmer{
  0%,100%{opacity:.9}
  50%{opacity:1}
}

/* Button Glow */
.dw-btn-glow{
  position:relative;
  overflow:hidden;
  box-shadow:0 4px 20px rgba(255,193,7,.4);
  transition:all .3s ease;
}
.dw-btn-glow::before{
  content:"";
  position:absolute;
  top:0; left:-100%;
  width:100%; height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.3), transparent);
  transition:left .5s ease;
}
.dw-btn-glow:hover::before{
  left:100%;
}
.dw-btn-glow:hover{
  box-shadow:0 6px 30px rgba(255,193,7,.6);
  transform:translateY(-2px);
}

.dw-btn-outline{
  position:relative;
  overflow:hidden;
  transition:all .3s ease;
}
.dw-btn-outline::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.05);
  transform:scaleX(0);
  transform-origin:right;
  transition:transform .3s ease;
}
.dw-btn-outline:hover::before{
  transform:scaleX(1);
  transform-origin:left;
}

/* Feature Items */
.dw-features{
  gap:2rem !important;
}
.dw-feature-item{
  display:flex;
  align-items:center;
  gap:.5rem;
  opacity:.85;
  transition:all .3s ease;
  padding:.5rem 1rem;
  border-radius:12px;
  background:rgba(255,255,255,.02);
  border:1px solid transparent;
}
.dw-feature-item:hover{
  opacity:1;
  background:rgba(255,193,7,.05);
  border-color:rgba(255,193,7,.2);
  transform:translateX(-5px);
}
.dw-icon-float{
  animation:iconFloat 3s ease-in-out infinite;
}
.dw-icon-float:nth-of-type(2){
  animation-delay:1s;
}
.dw-icon-float:nth-of-type(3){
  animation-delay:2s;
}
@keyframes iconFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}

/* Hero Card */
.dw-hero-card{
  width:min(450px,90%);
  aspect-ratio:1/1;
  border-radius:32px;
  background:linear-gradient(145deg,#0f0f0f,#050505);
  border:1px solid rgba(255,193,7,.2);
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
  box-shadow:
    0 20px 60px rgba(0,0,0,.5),
    inset 0 0 60px rgba(255,193,7,.05),
    0 0 80px rgba(255,193,7,.15);
  will-change:transform;
}
.dw-card-float{
  animation:cardFloat 6s ease-in-out infinite;
}
@keyframes cardFloat{
  0%,100%{transform:translateY(0) rotate(0deg)}
  50%{transform:translateY(-15px) rotate(2deg)}
}

.dw-hero-card-glow{
  position:absolute;
  inset:-50%;
  background:radial-gradient(circle, rgba(255,193,7,.2), transparent 70%);
  animation:cardGlow 4s ease-in-out infinite;
  pointer-events:none;
}
@keyframes cardGlow{
  0%,100%{opacity:.3; transform:scale(1)}
  50%{opacity:.6; transform:scale(1.2)}
}

.dw-logo-spin{
  position:relative;
  z-index:1;
  filter:drop-shadow(0 0 20px rgba(255,193,7,.4));
  animation:logoPulse 4s ease-in-out infinite;
}
@keyframes logoPulse{
  0%,100%{transform:scale(1); filter:drop-shadow(0 0 20px rgba(255,193,7,.4))}
  50%{transform:scale(1.05); filter:drop-shadow(0 0 30px rgba(255,193,7,.6))}
}

.dw-card-shine{
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, transparent 30%, rgba(255,255,255,.1) 50%, transparent 70%);
  transform:translateX(-100%) translateY(-100%) rotate(45deg);
  animation:shine 5s infinite;
  pointer-events:none;
}
@keyframes shine{
  0%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}
  50%{transform:translateX(200%) translateY(200%) rotate(45deg)}
  100%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}
}

/* 2025 gradient headline */
.fw-black{font-weight:900}
.dw-gradient-text{background:linear-gradient(90deg,#fff, #ffd54d 40%, #ffac07 60%, #fff); -webkit-background-clip:text; background-clip:text; color:transparent}

/* Brands marquee */
.dw-brands .marquee{overflow:hidden; position:relative}
.dw-brands .marquee__track{animation:marquee 18s linear infinite; white-space:nowrap}
.dw-brands .marquee__item{color:#cbd5e1; opacity:.8; font-weight:600}
@keyframes marquee{from{transform:translateX(0)} to{transform:translateX(-50%)} }

/* Services - Enhanced 2025 */
.dw-service{
  background:linear-gradient(180deg,#0f0f0f,#060606); 
  border:1px solid #1a1a1a; 
  border-radius:18px; 
  padding:24px; 
  transition:all .4s cubic-bezier(0.4, 0, 0.2, 1);
  position:relative;
  overflow:hidden;
  will-change:transform;
}
.dw-service::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 0%, rgba(255,193,7,.08), transparent 60%);
  opacity:0;
  transition:opacity .4s ease;
}
.dw-service:hover::before{
  opacity:1;
}
.dw-service:hover{
  transform:translateY(-8px) scale(1.02); 
  border-color:rgba(255,193,7,.4); 
  box-shadow:0 25px 50px rgba(0,0,0,.6), 0 0 40px rgba(255,193,7,.2); 
  background:linear-gradient(180deg,#131313,#080808)
}
.dw-service .icon{
  width:48px;height:48px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:rgba(255,193,7,.12);
  color:var(--dw-yellow);
  font-size:22px;
  transition:all .3s ease;
  position:relative;
}
.dw-service:hover .icon{
  background:rgba(255,193,7,.2);
  transform:scale(1.1) rotate(5deg);
  box-shadow:0 4px 15px rgba(255,193,7,.3);
}
.dw-tilt{transform-style:preserve-3d}
.dw-tilt:hover{transform:perspective(700px) rotateX(2deg) rotateY(-3deg) translateY(-8px)}

/* Stats - Animated */
.stat-card{
  background:linear-gradient(160deg,#0f0f0f,#070707); 
  border:1px solid #1a1a1a; 
  border-radius:16px; 
  padding:24px; 
  text-align:center;
  transition:all .3s ease;
  position:relative;
  overflow:hidden;
}
.stat-card::after{
  content:"";
  position:absolute;
  bottom:0; left:0; right:0;
  height:2px;
  background:linear-gradient(90deg, transparent, var(--dw-yellow), transparent);
  transform:scaleX(0);
  transition:transform .4s ease;
}
.stat-card:hover::after{
  transform:scaleX(1);
}
.stat-card:hover{
  border-color:rgba(255,193,7,.3);
  transform:translateY(-4px);
  box-shadow:0 10px 30px rgba(0,0,0,.4);
}
.stat-card .value{
  font-size:32px; 
  font-weight:800;
  background:linear-gradient(135deg, #fff, var(--dw-yellow));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  animation:countUp .8s ease-out;
}
.stat-card .label{color:var(--dw-text-dim)}
@keyframes countUp{
  from{opacity:0; transform:translateY(10px)}
  to{opacity:1; transform:translateY(0)}
}

/* Carousel */
.carousel-caption{background:linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.2)); padding:24px; border-radius:0 0 16px 16px}

/* Brand logo cards */
.dw-brand-card{
  background:linear-gradient(180deg,#0f0f0f,#060606); 
  border:1px solid #1a1a1a; 
  border-radius:16px; 
  min-height:130px; 
  display:flex; 
  flex-direction:column;
  align-items:center; 
  justify-content:center; 
  padding:20px 12px;
  transition:all .3s ease;
  gap:12px;
}
.dw-brand-card img{
  max-width:70%; 
  max-height:46px; 
  opacity:.9; 
  filter:drop-shadow(0 0 8px rgba(255,255,255,.05));
  transition:all .3s ease;
}
.dw-brand-name{
  font-size:.85rem;
  font-weight:500;
  color:var(--dw-text-dim);
  text-align:center;
  margin-top:auto;
  transition:all .3s ease;
}
.dw-brand-card:hover{
  transform:translateY(-6px); 
  border-color:rgba(255,193,7,.35); 
  box-shadow:0 15px 35px rgba(0,0,0,.5), 0 0 30px rgba(255,193,7,.15);
}
.dw-brand-card:hover img{
  filter:drop-shadow(0 0 10px rgba(255,193,7,.35)); 
  opacity:1;
  transform:scale(1.05);
}
.dw-brand-card:hover .dw-brand-name{
  color:var(--dw-text);
  transform:translateY(-2px);
}

/* Form */
.dw-form .form-control,.dw-form .form-select{background:#0c0c0c;border:1px solid #1f1f1f;color:#eaeaea}
.dw-form .form-control:focus,.dw-form .form-select:focus{border-color:var(--dw-yellow); box-shadow:0 0 0 .25rem rgba(255,193,7,.15)}
.btn-warning{--bs-btn-color:#000; --bs-btn-bg:var(--dw-yellow); --bs-btn-border-color:var(--dw-yellow); --bs-btn-hover-bg:var(--dw-yellow-600); --bs-btn-hover-border-color:var(--dw-yellow-600)}
.btn-outline-light{--bs-btn-hover-color:#000; --bs-btn-hover-bg:#fff; --bs-btn-hover-border-color:#fff}
.btn{border-radius:12px; letter-spacing:.2px}

/* Headings tweak */
h1,h2,h3{letter-spacing:-.3px}

/* Back to top */
.dw-backtotop{position:fixed; right:16px; bottom:16px; width:44px; height:44px; border-radius:50%; background:var(--dw-yellow); color:#000; border:none; display:grid; place-items:center; box-shadow:0 10px 30px rgba(255,193,7,.35); opacity:0; visibility:hidden; transition:all .3s ease; z-index:1000}
.dw-backtotop.show{opacity:1; visibility:visible}

/* CTA 2025 */
.dw-cta-2025{background:radial-gradient(600px 300px at 20% 120%, rgba(255,193,7,.1), transparent 60%), radial-gradient(600px 300px at 80% -20%, rgba(255,193,7,.12), transparent 60%)}
.dw-cta-orb{position:absolute; width:220px; height:220px; border-radius:50%; filter:blur(40px); opacity:.25; background:linear-gradient(45deg,#ffd54d,#ffac07)}
.dw-cta-orb.orb-1{left:10%; top:-40px}
.dw-cta-orb.orb-2{right:10%; bottom:-40px}
.dw-cta-text{width:70%; max-width:900px}
@media (max-width: 768px){
  .dw-cta-text{width:100%}
}

/* Section Wings (logo-inspired) - Horizontal with size variation */
.dw-wings{position:relative; overflow:hidden}
.dw-wings::before, .dw-wings::after{
  content:""; 
  position:absolute; 
  opacity:.2; 
  pointer-events:none; 
  z-index:0;
  background-repeat:no-repeat; 
  background-size:contain;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='160' viewBox='0 0 240 160' fill='none'><rect x='0' y='0' width='200' height='34' rx='17' fill='%23ffc107'/><rect x='0' y='63' width='170' height='34' rx='17' fill='%23ffc107'/><rect x='0' y='126' width='130' height='34' rx='17' fill='%23ffc107'/></svg>");
}

/* Standard size wings */
.dw-wings::before{
  left:-80px; 
  top:50%; 
  transform:translateY(-50%);
  width:240px; 
  height:160px;
}

.dw-wings::after{
  right:-80px; 
  top:50%; 
  transform:translateY(-50%);
  width:240px; 
  height:160px;
}

/* Large background wings - Services, Portfolio */
#services.dw-wings::before,
#portfolio.dw-wings::before{
  width:400px;
  height:270px;
  opacity:.12;
  left:-120px;
  top:20%;
  z-index:-1;
}

#services.dw-wings::after,
#portfolio.dw-wings::after{
  width:400px;
  height:270px;
  opacity:.12;
  right:-120px;
  top:60%;
  z-index:-1;
}

/* Standard wings - About, Contact */
#about.dw-wings::before,
#contact.dw-wings::before{
  width:280px;
  height:190px;
  left:-90px;
  opacity:.18;
}

#about.dw-wings::after,
#contact.dw-wings::after{
  width:280px;
  height:190px;
  right:-90px;
  opacity:.18;
}

/* Large background wings - CTA */
.dw-cta-2025.dw-wings::before{
  width:500px;
  height:335px;
  opacity:.1;
  left:-150px;
  top:10%;
  z-index:-1;
}

.dw-cta-2025.dw-wings::after{
  width:500px;
  height:335px;
  opacity:.1;
  right:-150px;
  bottom:10%;
  z-index:-1;
}

@media (max-width: 992px){
  .dw-wings::before, .dw-wings::after{display:none}
}

/* Content Pages (Privacy, Terms) */
.dw-content-page{
  background:linear-gradient(180deg,#0f0f0f,#060606);
  border:1px solid #1a1a1a;
  border-radius:24px;
  padding:48px;
  box-shadow:0 20px 60px rgba(0,0,0,.5);
}
.dw-content-page h2{
  margin-top:2rem;
  margin-bottom:1rem;
}
.dw-content-page h2:first-of-type{
  margin-top:0;
}
.dw-content-page ul{
  padding-right:1.5rem;
}
.dw-content-page ul li{
  margin-bottom:.75rem;
}
@media (max-width: 768px){
  .dw-content-page{
    padding:32px 24px;
  }
}

/* Reveal on scroll - Enhanced */
[data-reveal]{
  opacity:0; 
  transform:translateY(30px); 
  transition:opacity .8s cubic-bezier(0.4, 0, 0.2, 1), 
             transform .8s cubic-bezier(0.4, 0, 0.2, 1);
  will-change:opacity, transform;
}
[data-reveal].revealed{
  opacity:1; 
  transform:translateY(0);
}

/* Accessibility focus */
a:focus-visible, button:focus-visible, .form-control:focus-visible{outline:2px solid var(--dw-yellow); outline-offset:2px}

/* Performance Optimizations */
@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation-duration:0.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:0.01ms !important;
  }
}

/* Responsive */
@media (max-width: 992px){
  .py-100{padding:72px 0}
  .dw-hero{
    padding-top:110px;
    min-height:auto;
    padding-bottom:60px;
  }
  .dw-hero-grid{display:none}
  .dw-hero-particles .particle:nth-child(n+4){display:none}
  .dw-glow-1, .dw-glow-2{opacity:.5}
  .dw-hero-card{width:min(350px,85%)}
}


