/* ================================================================
   KRISTAL PLANTET — IVORY GOLD THEME  (kristal-ivory.css)
   Warm ivory + rich gold + espresso — full site override
   Load AFTER mai.css + kristal-crypto.css
   ================================================================ */

:root {
    --kp-bg:       #fdf7ec;
    --kp-bg-2:     #f7eedb;
    --kp-surface:  #fffbf4;
    --kp-border:   rgba(180,130,40,.12);
    --kp-text:     #3d2810;
    --kp-heading:  #1a0e00;
    --kp-muted:    #7a5c30;
    --kp-gold:     #c4920e;
    --kp-gold-lt:  #e8b020;
    --kp-gold-dk:  #966c08;
    --kp-grad:     linear-gradient(135deg, #966c08 0%, #c4920e 45%, #e8b020 100%);
    --kp-glow:     0 0 32px rgba(196,146,14,.24);
    --kp-radius:   18px;
    --kp-espresso: #0e0600;
    --kp-espresso-mid: #2d1a06;
}

/* ── Base ── */
html { background: #fdf7ec !important; }
body { background: #fdf7ec !important; color: #3d2810 !important; }

body::before {
    content: "";
    position: fixed;
    inset: -20% -10% auto -10%;
    height: 80vh;
    z-index: -2;
    background:
        radial-gradient(40% 50% at 18% 20%, rgba(232,176,32,.12), transparent 60%),
        radial-gradient(40% 50% at 82% 12%, rgba(196,146,14,.09), transparent 60%),
        radial-gradient(40% 60% at 60% 80%, rgba(150,108,8,.08), transparent 60%);
    filter: blur(28px);
    animation: ivAurora 20s ease-in-out infinite alternate;
    pointer-events: none;
}
body::after {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -2;
    background-image:
        linear-gradient(rgba(196,146,14,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(196,146,14,.035) 1px, transparent 1px);
    background-size: 56px 56px;
    -webkit-mask-image: radial-gradient(circle at 50% 18%, #000 0%, transparent 70%);
    mask-image: radial-gradient(circle at 50% 18%, #000 0%, transparent 70%);
    pointer-events: none;
    animation: none;
}
@keyframes ivAurora {
    0%   { transform: translate3d(-3%, -2%, 0) scale(1);    }
    100% { transform: translate3d(4%,   3%, 0) scale(1.1);  }
}

::selection { background: rgba(196,146,14,.22); color: #1a0e00; }
::-webkit-scrollbar-track { background: #f7eedb !important; }
::-webkit-scrollbar-thumb { background: linear-gradient(135deg, #966c08, #e8b020) !important; }

/* ── Typography ── */
h1, h2, h3, h4, h5, h6 { color: #1a0e00 !important; }
.section-title { color: #1a0e00 !important; }
.section-title span {
    background: linear-gradient(135deg, #966c08 0%, #c4920e 45%, #e8b020 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}
.section-label { color: #966c08 !important; }
.section-label::before, .section-label::after { background: linear-gradient(135deg, #966c08, #e8b020) !important; }
.section-desc { color: #7a5c30 !important; }

/* ── Buttons ── */
.btn-primary {
    background: linear-gradient(135deg, #966c08 0%, #c4920e 45%, #e8b020 100%) !important;
    color: #1a0e00 !important;
    border-color: transparent !important;
    box-shadow: 0 8px 28px rgba(196,146,14,.32) !important;
}
.btn-primary:hover { box-shadow: 0 14px 42px rgba(196,146,14,.48) !important; }

.btn-outline {
    background: transparent !important;
    border: 2px solid rgba(196,146,14,.45) !important;
    color: #1a0e00 !important;
}
.btn-outline:hover {
    background: rgba(196,146,14,.08) !important;
    border-color: #c4920e !important;
    color: #1a0e00 !important;
}

.btn-dark {
    background: #fffbf4 !important;
    color: #1a0e00 !important;
    border: 1.5px solid rgba(196,146,14,.32) !important;
    box-shadow: 0 2px 12px rgba(0,0,0,.06) !important;
}
.btn-dark:hover {
    background: #fef3da !important;
    border-color: #c4920e !important;
    box-shadow: 0 8px 28px rgba(196,146,14,.22) !important;
}

/* ── Navbar ── */
.navbar { background: transparent !important; backdrop-filter: none !important; box-shadow: none !important; border-bottom: none !important; }
.navbar.scrolled {
    background: rgba(253,247,236,.96) !important;
    backdrop-filter: blur(22px) !important;
    box-shadow: 0 2px 24px rgba(0,0,0,.07) !important;
    border-bottom: 1px solid rgba(196,146,14,.18) !important;
}
.nav-links a { color: #3d2810 !important; }
.nav-links a:hover, .nav-links a.active { color: #1a0e00 !important; }
.nav-links a::after { background: linear-gradient(135deg, #966c08, #e8b020) !important; }
.nav-toggle span { background: #1a0e00 !important; }

.kp-logo .kp-word b {
    background: linear-gradient(90deg, #966c08, #c4920e 55%, #966c08) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}
.kp-logo .kp-word small { color: #c4920e !important; }
.kp-logo .kp-mark { filter: drop-shadow(0 0 9px rgba(196,146,14,.5)) !important; }

.nav-login { color: #966c08 !important; border-color: rgba(196,146,14,.55) !important; }
.nav-login:hover { background: rgba(196,146,14,.08) !important; }
.nav-register { background: linear-gradient(135deg, #966c08, #c4920e, #e8b020) !important; color: #1a0e00 !important; }

@media (max-width: 768px) {
    .nav-links {
        background: #fffbf4 !important;
        border-left: 1px solid rgba(196,146,14,.18) !important;
        box-shadow: -8px 0 40px rgba(0,0,0,.08) !important;
    }
    .nav-links a { color: #1a0e00 !important; }
}

/* ── Ticker ── */
.kp-ticker {
    background: linear-gradient(90deg, #fdf0d8, #fffbf4 50%, #fdf0d8) !important;
    border-top-color: rgba(196,146,14,.2) !important;
    border-bottom-color: rgba(196,146,14,.2) !important;
}
.kp-ticker::before { background: linear-gradient(to right, #fdf0d8, transparent) !important; }
.kp-ticker::after  { background: linear-gradient(to left, #fdf0d8, transparent) !important; }
.kp-ticker-item { color: #3d2810 !important; }
.kp-ticker-item i { color: #c4920e !important; }
.kp-ticker-item b { color: #1a0e00 !important; }

/* ── Hero ── */
.hero { background: linear-gradient(145deg, #fffbf4 0%, #fdf3e2 45%, #fef8ec 100%) !important; }
.hero::before {
    background-image:
        linear-gradient(rgba(196,146,14,.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(196,146,14,.05) 1px, transparent 1px) !important;
    opacity: .7 !important;
}
.hero::after {
    background:
        radial-gradient(circle at 70% 50%, rgba(196,146,14,.12) 0%, transparent 50%),
        radial-gradient(circle at 20% 30%, rgba(232,176,32,.10) 0%, transparent 50%) !important;
}
.hero-title { color: #1a0e00 !important; }
.hero-title .highlight {
    background: linear-gradient(135deg, #966c08, #c4920e 45%, #e8b020) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}
.hero-desc { color: #7a5c30 !important; }

.kp-hero-badge {
    background: rgba(196,146,14,.10) !important;
    border: 1px solid rgba(196,146,14,.32) !important;
    color: #966c08 !important;
}
.kp-hero-badge .dot {
    background: linear-gradient(135deg, #966c08, #e8b020) !important;
    color: #1a0e00 !important;
}
.kp-hero-stats { border-top-color: rgba(196,146,14,.2) !important; }
.kp-hero-stat {
    background: #fffbf4 !important;
    border: 1px solid rgba(196,146,14,.22) !important;
    box-shadow: 0 2px 12px rgba(0,0,0,.06) !important;
}
.kp-hero-stat:hover { border-color: rgba(196,146,14,.5) !important; background: #fff !important; }
.kp-hero-stat .num { color: #1a0e00 !important; }
.kp-hero-stat .lbl { color: #7a5c30 !important; }

/* ── Orbit ── */
.kp-orbit .halo { background: radial-gradient(circle, rgba(196,146,14,.2), transparent 65%) !important; }
.kp-orbit .ring { border-color: rgba(196,146,14,.48) !important; }
.kp-orbit .ring.r2 { border-color: rgba(196,146,14,.30) !important; }
.kp-orbit .ring.r3 { border-color: rgba(150,108,8,.32) !important; }
.kp-orbit .ring::before {
    background: linear-gradient(135deg, #966c08, #e8b020) !important;
    box-shadow: 0 0 14px rgba(196,146,14,.6) !important;
}
.kp-orbit .core { filter: drop-shadow(0 0 28px rgba(196,146,14,.55)) !important; }

/* ── About ── */
.about { background: #fffbf4 !important; }
.about-text { color: #3d2810 !important; }
.about-text strong { color: #1a0e00 !important; }
.about-feature i { color: #c4920e !important; }
.about-feature span { color: #1a0e00 !important; }
.about-image img { border: 1px solid rgba(196,146,14,.2) !important; box-shadow: 0 20px 60px rgba(0,0,0,.1) !important; }

/* ── Services ── */
.services { background: #f7eedb !important; }
.service-card {
    background: #fffbf4 !important;
    border: 1px solid rgba(180,130,40,.14) !important;
    backdrop-filter: none !important;
    box-shadow: 0 2px 16px rgba(0,0,0,.06) !important;
}
.service-card::before { background: linear-gradient(135deg, #966c08, #e8b020) !important; }
.service-card:hover { background: #fff !important; border-color: rgba(196,146,14,.38) !important; box-shadow: 0 12px 44px rgba(0,0,0,.1) !important; }
.service-icon {
    background: rgba(196,146,14,.10) !important;
    border: 1px solid rgba(196,146,14,.22) !important;
    color: #966c08 !important;
}
.service-card:hover .service-icon {
    background: linear-gradient(135deg, #966c08, #e8b020) !important;
    color: #1a0e00 !important;
    border-color: transparent !important;
    box-shadow: 0 8px 20px rgba(196,146,14,.35) !important;
}
.service-title { color: #1a0e00 !important; }
.service-desc { color: #3d2810 !important; }
.service-link { color: #966c08 !important; }
.service-link:hover { color: #c4920e !important; }

/* ── Why Us — Espresso ── */
.why-us { background: linear-gradient(135deg, #1c0f02 0%, #2d1a06 50%, #1c0f02 100%) !important; }
.why-us::before {
    background:
        radial-gradient(55% 70% at 75% 20%, rgba(196,146,14,.2) 0%, transparent 60%),
        radial-gradient(40% 60% at 25% 80%, rgba(150,108,8,.15) 0%, transparent 60%) !important;
}
.why-us .section-label { color: #e8b020 !important; }
.why-us .section-label::before, .why-us .section-label::after { background: linear-gradient(135deg, #966c08, #e8b020) !important; }
.why-us .section-title { color: #f1e6c0 !important; }
.why-us .section-title span {
    background: linear-gradient(135deg, #966c08, #c4920e 45%, #e8b020) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}
.why-us .section-desc { color: rgba(241,230,192,.56) !important; }
.why-card {
    background: rgba(255,255,255,.06) !important;
    border: 1px solid rgba(255,220,150,.12) !important;
    backdrop-filter: blur(10px) !important;
}
.why-card:hover { background: rgba(255,255,255,.10) !important; border-color: rgba(196,146,14,.42) !important; }
.why-card-icon {
    background: rgba(196,146,14,.18) !important;
    border: 1px solid rgba(196,146,14,.28) !important;
    color: #e8b020 !important;
}
.why-card-title { color: #f1e6c0 !important; }
.why-card-desc { color: rgba(241,230,192,.52) !important; }

/* ── Process ── */
.process { background: #fffbf4 !important; }
.process-steps::before { background: linear-gradient(to right, transparent, #c4920e, rgba(196,146,14,.12)) !important; opacity: .55 !important; }
.step-number {
    background: #fdf7ec !important;
    border: 2px solid rgba(196,146,14,.28) !important;
    color: #1a0e00 !important;
}
.process-step:hover .step-number {
    background: linear-gradient(135deg, #966c08, #e8b020) !important;
    border-color: transparent !important;
    color: #1a0e00 !important;
    box-shadow: 0 8px 28px rgba(196,146,14,.32) !important;
}
.step-title { color: #1a0e00 !important; }
.step-desc { color: #3d2810 !important; }

/* ── CTA — Espresso ── */
.cta { background: linear-gradient(135deg, #130a00 0%, #2d1a06 55%, #130a00 100%) !important; }
.cta::before {
    background:
        radial-gradient(circle at 22% 50%, rgba(196,146,14,.2) 0%, transparent 50%),
        radial-gradient(circle at 80% 50%, rgba(232,176,32,.12) 0%, transparent 50%) !important;
}
.cta-title { color: #fff !important; }
.cta-title span {
    background: linear-gradient(135deg, #966c08, #c4920e 45%, #e8b020) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}
.cta-desc { color: rgba(255,255,255,.68) !important; }
.cta .btn-outline { border-color: rgba(255,255,255,.38) !important; color: #fff !important; background: transparent !important; }
.cta .btn-outline:hover { background: rgba(255,255,255,.1) !important; border-color: #fff !important; color: #fff !important; }

/* ── Contact ── */
.contact { background: #f7eedb !important; }
.contact-info-card {
    background: #fffbf4 !important;
    border: 1px solid rgba(180,130,40,.12) !important;
    backdrop-filter: none !important;
    box-shadow: 0 2px 12px rgba(0,0,0,.06) !important;
}
.contact-info-card:hover { border-color: rgba(196,146,14,.35) !important; box-shadow: 0 8px 32px rgba(0,0,0,.09) !important; }
.contact-info-icon { background: rgba(196,146,14,.10) !important; border: 1px solid rgba(196,146,14,.22) !important; color: #966c08 !important; }
.contact-info-label { color: #7a5c30 !important; }
.contact-info-value { color: #1a0e00 !important; }
.contact-info-value a { color: #1a0e00 !important; }
.contact-info-value a:hover { color: #c4920e !important; }

.contact-form {
    background: #fffbf4 !important;
    border: 1px solid rgba(180,130,40,.12) !important;
    backdrop-filter: none !important;
    box-shadow: 0 4px 24px rgba(0,0,0,.06) !important;
}
.contact-form h3 { color: #1a0e00 !important; }
.contact-form p { color: #7a5c30 !important; }
.form-group label { color: #3d2810 !important; }
.form-group input,
.form-group select,
.form-group textarea {
    background: #fdf7ec !important;
    border: 1.5px solid rgba(196,146,14,.22) !important;
    color: #1a0e00 !important;
}
.form-group input::placeholder,
.form-group textarea::placeholder { color: #7a5c30 !important; }
.form-group select option { background: #fffbf4; color: #1a0e00; }
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    border-color: #c4920e !important;
    background: #fffbf4 !important;
    box-shadow: 0 0 0 3px rgba(196,146,14,.16) !important;
}

/* ── Auth page wallet elements (IDs present in login.php + register.php) ── */
#walletStatusBar {
    background: #fdf7ec !important;
    border-color: rgba(196,146,14,.22) !important;
    color: #7a5c30 !important;
}
#connectWalletBtn {
    background: #fdf7ec !important;
    border-color: rgba(196,146,14,.4) !important;
    color: #966c08 !important;
}
#connectWalletBtn {
    background: #fef3da !important;
    border-color: #c4920e !important;
}

/* ── Footer — Deep Espresso ── */
.footer { background: #0e0600 !important; border-top: 1px solid rgba(196,146,14,.18) !important; }
.footer .kp-word b {
    background: linear-gradient(90deg, #c4920e, #e8b020 55%, #c4920e) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}
.footer .kp-word small { color: #e8b020 !important; }
.footer-brand-text { color: rgba(255,255,255,.38) !important; }
.footer-title { color: #f1e6c0 !important; }
.footer-links a { color: rgba(255,255,255,.38) !important; }
.footer-links a:hover { color: #e8b020 !important; }
.footer-newsletter p { color: rgba(255,255,255,.5) !important; }
.newsletter-form input {
    background: rgba(255,255,255,.06) !important;
    border-color: rgba(196,146,14,.25) !important;
    color: #f1e6c0 !important;
}
.newsletter-form input::placeholder { color: rgba(255,255,255,.35) !important; }
.newsletter-form button { background: linear-gradient(135deg, #966c08, #e8b020) !important; color: #1a0e00 !important; }
.footer-bottom { border-top-color: rgba(196,146,14,.14) !important; }
.footer-bottom p { color: rgba(255,255,255,.28) !important; }
.footer-bottom p span { color: #e8b020 !important; }
.footer-bottom-links a { color: rgba(255,255,255,.28) !important; }
.footer-bottom-links a:hover { color: #e8b020 !important; }
.social-link { background: rgba(255,255,255,.06) !important; color: rgba(255,255,255,.5) !important; border: 1px solid rgba(196,146,14,.2) !important; }
.social-link:hover { background: linear-gradient(135deg, #966c08, #e8b020) !important; color: #1a0e00 !important; border-color: transparent !important; }

/* ── Stats ── */
.stats { background: #fdf7ec !important; }
.stat-card { background: #fffbf4 !important; border: 1px solid rgba(180,130,40,.14) !important; backdrop-filter: none !important; }
.stat-number { color: #c4920e !important; }
.stat-label { color: #7a5c30 !important; }
.stat-icon { background: rgba(196,146,14,.1) !important; color: #966c08 !important; }
.clients-bar { background: #f7eedb !important; border-bottom: 1px solid rgba(196,146,14,.15) !important; }

/* ── Scroll reveal ── */
[data-reveal] {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .7s cubic-bezier(.22,1,.36,1), transform .7s cubic-bezier(.22,1,.36,1);
    transition-delay: var(--d, 0s);
}
[data-reveal].in { opacity: 1; transform: none; }

/* ── Back to top ── */
.back-to-top {
    background: linear-gradient(135deg, #966c08, #e8b020) !important;
    color: #1a0e00 !important;
    box-shadow: 0 4px 18px rgba(196,146,14,.35) !important;
}

/* ── Preloader (inline override via body state) ── */
#preloader { background: #fdf7ec !important; }
.loader-text { color: #1a0e00 !important; }
.loader-progress { background: rgba(0,0,0,.08) !important; }

/* ── Legal pages (privacy-policy, terms-and-conditions, cookie-policy) ── */
.policy-hero {
    background: linear-gradient(135deg, #1c0f02 0%, #2d1a06 50%, #1c0f02 100%) !important;
}
.policy-hero::before {
    background: radial-gradient(ellipse at 60% 50%, rgba(196,146,14,.18) 0%, transparent 70%) !important;
}
.policy-hero-label {
    background: linear-gradient(135deg, #966c08, #c4920e) !important;
    color: #1a0e00 !important;
}
.policy-hero h1 { color: #f1e6c0 !important; }
.policy-hero h1 span { color: #e8b020 !important; -webkit-text-fill-color: #e8b020 !important; }
.policy-hero p { color: rgba(241,230,192,.72) !important; }

.policy-section { background: #f7eedb !important; }
.policy-card {
    background: #fffbf4 !important;
    border: 1px solid rgba(196,146,14,.12) !important;
    box-shadow: 0 8px 40px rgba(0,0,0,.07) !important;
}

.policy-toc { background: linear-gradient(135deg, #1c0f02, #2d1a06) !important; }
.policy-toc h3 { color: #e8b020 !important; }
.policy-toc ol li a { color: rgba(241,230,192,.8) !important; }
.policy-toc ol li a:hover { color: #e8b020 !important; }

.policy-updated {
    background: rgba(196,146,14,.10) !important;
    border-color: rgba(196,146,14,.28) !important;
    color: #966c08 !important;
}
.policy-block h2 {
    color: #1a0e00 !important;
    border-bottom-color: #c4920e !important;
}
.policy-block h2 .block-num {
    background: linear-gradient(135deg, #966c08, #e8b020) !important;
    color: #1a0e00 !important;
}
.policy-block p, .policy-block ul { color: #3d2810 !important; }
.policy-block ul li::marker { color: #c4920e !important; }

.policy-contact-box {
    background: linear-gradient(135deg, #1c0f02, #2d1a06) !important;
    border: 1px solid rgba(196,146,14,.18) !important;
}
.policy-contact-box h3 { color: #e8b020 !important; }
.policy-contact-box p { color: rgba(241,230,192,.75) !important; }
.policy-contact-box a { color: #e8b020 !important; }

/* Cookie-policy specific classes */
.policy-highlight {
    background: rgba(196,146,14,.08) !important;
    border-left-color: #c4920e !important;
    color: #3d2810 !important;
}
.cookie-table thead tr { background: linear-gradient(135deg, #966c08, #c4920e) !important; }
.cookie-table thead th { color: #1a0e00 !important; border-color: rgba(196,146,14,.3) !important; }
.cookie-table tbody tr { background: transparent !important; }
.cookie-table tbody tr:nth-child(even) { background: rgba(196,146,14,.05) !important; }
.cookie-table td { border-color: rgba(196,146,14,.12) !important; color: #3d2810 !important; }
.badge-essential { background: rgba(16,185,129,.12) !important; color: #059669 !important; }
.badge-functional { background: rgba(196,146,14,.12) !important; color: #966c08 !important; }
.badge-analytics { background: rgba(99,102,241,.10) !important; color: #4f46e5 !important; }
.badge-marketing { background: rgba(239,68,68,.10) !important; color: #dc2626 !important; }
.cookie-pref-item {
    background: #fffbf4 !important;
    border-color: rgba(196,146,14,.14) !important;
}
.cookie-pref-item:hover { border-color: rgba(196,146,14,.35) !important; }
.cookie-pref-info h4 { color: #1a0e00 !important; }
.cookie-pref-info p { color: #7a5c30 !important; }
.cookie-badge { background: rgba(196,146,14,.10) !important; color: #966c08 !important; }

/* ── Mobile / Responsive ── */
@media (max-width: 480px) {
    .kp-hero-stats { flex-direction: column !important; gap: 0.75rem !important; }
    .kp-hero-stat { width: 100% !important; }
    .hero-title { font-size: clamp(1.8rem, 7vw, 2.4rem) !important; }
    .hero-buttons { flex-direction: column !important; gap: 0.75rem !important; }
    .hero-buttons .btn { width: 100% !important; justify-content: center !important; }
    .form-row { grid-template-columns: 1fr !important; }
    .contact-form { padding: 1.25rem !important; }
}

@media (max-width: 768px) {
    .kp-orbit { width: min(260px, 80vw) !important; height: min(260px, 80vw) !important; }
}

@media (prefers-reduced-motion: reduce) {
    [data-reveal] { opacity: 1; transform: none; transition: none; }
    body::before { animation: none; }
}
