:root{--blue-900:#0d47a1;--blue-700:#1565c0;--blue-500:#1e88e5;--accent:#64b5f6;--brand-text:#ffffff}
html,body{font-family:'Cairo',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif}
body.bg-hero{background:linear-gradient(135deg,var(--blue-900) 0%,var(--blue-700) 50%,var(--blue-500) 100%);min-height:100vh;color:#15202b}
.bg-overlay{position:fixed;inset:0;z-index:2;pointer-events:none}
.sparkles{position:absolute;left:0;right:0;top:0;height:66vh;background-image:radial-gradient(rgba(255,255,255,.22) 1px, transparent 1px);background-size:72px 72px;animation:twinkle 7s ease-in-out infinite alternate;-webkit-mask-image:linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 72%, rgba(0,0,0,0) 100%);mask-image:linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 72%, rgba(0,0,0,0) 100%)}
.waves{position:absolute;left:0;right:0;bottom:0;height:35vh;overflow:hidden}
.wave-svg{position:absolute;left:0;bottom:0;width:200%;height:100%}
.wave-svg path{transform-origin:left bottom}
.wave-svg.layer-1{opacity:.9;animation:scroll 18s linear infinite}
.wave-svg.layer-2{opacity:.7;animation:scroll 24s linear infinite}
.wave-svg.layer-3{opacity:.6;animation:scroll 32s linear infinite}
.sparkle-dot{position:absolute;border-radius:50%;background:radial-gradient(rgba(255,255,255,.95), rgba(255,255,255,.15));box-shadow:0 0 10px rgba(255,255,255,.75);will-change:transform,opacity;animation:sparkle-fade 2.6s ease-in-out forwards}
.flake{position:absolute; border-radius:50%; background:radial-gradient(rgba(255,255,255,.95), rgba(255,255,255,.12) 65%); box-shadow:0 0 12px rgba(255,255,255,.75); will-change:transform,opacity; animation:flake-fall 3.2s ease-in-out forwards}
.flake::before,.flake::after{content:""; position:absolute; left:50%; top:50%; width:100%; height:2px; background:rgba(255,255,255,.95); box-shadow:0 0 6px rgba(255,255,255,.6); transform-origin:center}
.flake::before{transform:translate(-50%,-50%)}
.flake::after{transform:translate(-50%,-50%) rotate(90deg)}
.flake .flake-x::before,.flake .flake-x::after{content:""; position:absolute; left:50%; top:50%; width:100%; height:2px; background:rgba(255,255,255,.9); box-shadow:0 0 6px rgba(255,255,255,.6); transform-origin:center}
.flake .flake-x::before{transform:translate(-50%,-50%) rotate(45deg)}
.flake .flake-x::after{transform:translate(-50%,-50%) rotate(-45deg)}

.hero-content{padding:1rem 0}
.hero-title{font-size:clamp(2.75rem,7vw,5.5rem);line-height:1.05;color:#fff;letter-spacing:.02em}
.hero-subtitle{font-size:clamp(1.25rem,2.4vw,2.25rem);color:rgba(255,255,255,.9)}
.hero-copy{font-size:clamp(1.05rem,1.6vw,1.25rem);color:#e3f2fd;max-width:760px;margin-inline:auto}
.status-badge{display:inline-block;font-size:.75rem;letter-spacing:.15em;color:#fff;border:1px solid rgba(255,255,255,.45);border-radius:999px;padding:.25rem .6rem;background:rgba(255,255,255,.2)}

.btn-primary{background-color:#0e2a47;border-color:#0e2a47}
.btn-primary:hover{background-color:#123456;border-color:#123456}
.btn-cta{background-image:linear-gradient(90deg,#64b5f6,#1e88e5);border:none;color:#fff}
.btn-cta:hover{filter:brightness(.95)}
.designer-link{color:rgba(255,255,255,.92);text-decoration:none}
.container{position:relative;z-index:3}

@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes twinkle{from{opacity:.08;transform:translateY(0)}to{opacity:.18;transform:translateY(-6px)}}
@keyframes sparkle-fade{0%{opacity:0;transform:scale(.6)}10%{opacity:1;transform:scale(1)}85%{opacity:1}100%{opacity:0;transform:scale(.6)}}
@keyframes flake-fall{0%{opacity:0; transform:translateY(0) scale(.85)}10%{opacity:1}70%{opacity:1; transform:translateY(28px) scale(1)}100%{opacity:0; transform:translateY(46px) scale(.9)}}
@keyframes flake-fall-left{0%{opacity:0; transform:translate(0,0) scale(.85) rotate(0)}10%{opacity:1}70%{opacity:1; transform:translate(-14px,28px) scale(1) rotate(8deg)}100%{opacity:0; transform:translate(-22px,46px) scale(.9) rotate(12deg)}}
@keyframes flake-fall-right{0%{opacity:0; transform:translate(0,0) scale(.85) rotate(0)}10%{opacity:1}70%{opacity:1; transform:translate(14px,28px) scale(1) rotate(-8deg)}100%{opacity:0; transform:translate(22px,46px) scale(.9) rotate(-12deg)}}
.designer-link:hover{color:#fff;text-decoration:underline}