/* Wartek Jatinegara — visual override layer
   Base css/style.css and css/responsive.css remain structurally unchanged. */
:root {
    --primary-dark: #1e1b4b;
    --primary: #4338ca;
    --primary-light: #6366f1;
    --accent-green: #f97316;
    --accent-green-dark: #ea580c;
    --white: #ffffff;
    --gray-50: #f7f8ff;
    --gray-100: #e8eaff;
    --gray-200: #d5d9f8;
    --gray-700: #404469;
    --gray-900: #22254a;
}
body { background: #fffdf8; }
.header { background: rgba(255,253,248,.96); border-bottom-color: #d5d9f8; }
.logo img { width: 40px; height: 40px; }
.logo-mark { background: linear-gradient(135deg, #4338ca 0%, #1e1b4b 100%); }
.hero { background: radial-gradient(circle at 84% 16%, rgba(249,115,22,.28), transparent 27%), linear-gradient(135deg, #1e1b4b 0%, #4338ca 58%, #2563eb 100%); }
.hero::after { content: 'JATINEGARA'; position: absolute; right: -1rem; bottom: -2.5rem; color: rgba(255,255,255,.065); font-size: clamp(4rem, 11vw, 9.5rem); font-weight: 800; letter-spacing: .08em; pointer-events: none; }
.hero-content, .hero-content h1, .hero-content p { position: relative; z-index: 1; }
.hero-content h1 { color: #fff; }
.hero-content h1 span { color: #facc15; }
.hero-subtitle { color: rgba(255,255,255,.9); }
.hero-image { filter: drop-shadow(0 1.25rem 1.5rem rgba(30,27,75,.25)); }
.eyebrow, .read-more { color: var(--primary); }
.section-alt { background: #f5f6ff; }
.service-card, .feature-card, .testimonial-card, .area-card, .stat-card { border-color: #d5d9f8; box-shadow: 0 10px 26px rgba(30,27,75,.07); }
.service-card:hover, .feature-card:hover, .area-card:hover { border-color: rgba(67,56,202,.44); transform: translateY(-4px); }
.service-icon { background: linear-gradient(135deg, #6366f1 0%, #4338ca 100%); }
.feature-icon { color: var(--primary); border-color: #d5d9f8; background: #f7f8ff; }
.cta-section { background: linear-gradient(110deg, #1e1b4b 0%, #4338ca 66%, #2563eb 100%) !important; }
.footer { background: #181638; }
.btn { cursor: pointer; }
.btn-primary { background: var(--primary); border-color: var(--primary); }
.btn-primary:hover { background: var(--primary-dark); border-color: var(--primary-dark); }
.btn-secondary { color: var(--primary); border-color: var(--primary); }
.btn-whatsapp { background: var(--accent-green); border-color: var(--accent-green); }
.btn-whatsapp:hover { background: var(--accent-green-dark); border-color: var(--accent-green-dark); }
.process-step::before, .contact-info-icon { background: var(--primary); }
.area-card svg { color: var(--accent-green); }
.wa-float { background: var(--accent-green); }
.wa-float:hover { background: var(--accent-green-dark); }
.jatinegara-ribbon { display: flex; gap: .75rem; flex-wrap: wrap; margin: 0 0 1.75rem; }
.jatinegara-ribbon span { border: 1px solid rgba(255,255,255,.25); background: rgba(255,255,255,.1); color: rgba(255,255,255,.94); border-radius: 999px; padding: .45rem .75rem; font-size: .84rem; }
.service-card .service-tag { display: inline-block; margin-bottom: .7rem; color: var(--accent-green-dark); font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.zone-note { display: block; color: var(--gray-500); font-size: .82rem; margin-top: .2rem; }
@media (max-width: 768px) { .hero::after { right: -2rem; bottom: -1rem; font-size: 4rem; } .jatinegara-ribbon { margin-bottom: 1.25rem; } }
