/*
Theme Name: DMB Indonesia Luxury Blog
Theme URI: https://dmbindonesia.id
Author: PT. DMB SATRIA INDONESIA
Author URI: https://dmbindonesia.id
Description: Official Luxury Maritime & Overland Tour WordPress Theme for DMB Indonesia Blog (blog.dmbindonesia.id). Perfectly matching dev.dmbindonesia.id design system with Google Stitch Tokens, Ocean Navy & Luxury Gold palette.
Version: 1.0.0
License: GNU General Public License v2 or later
Text Domain: dmb-blog
*/

/* Core Design System Root Variables */
:root {
    --color-ocean-navy: #001B3D;
    --color-luxury-gold: #D4AF37;
    --color-luxury-gold-dark: #B38F24;
    --color-warm-sand: #F5F2ED;
    --color-warm-sand-light: #FAF8F5;
    --color-earth-slate: #4A4E54;
    --color-surface: #FAF9FC;
    --color-surface-variant: #E3E2E5;
    --color-on-surface: #1B1B1E;
    --color-success-green: #2D6A4F;
    --color-royal-azure: #0047AB;
    --color-off-white: #FCFCFC;
}

/* Base Elements */
html, body {
    margin: 0;
    padding: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #1B1B1E;
    background-color: #FCFCFC;
    -webkit-font-smoothing: antialiased;
}

/* Background Utilities */
.bg-ocean-navy { background-color: #001B3D !important; }
.bg-ocean-navy\/80 { background-color: rgba(0, 27, 61, 0.8) !important; }
.bg-ocean-navy\/90 { background-color: rgba(0, 27, 61, 0.9) !important; }
.bg-ocean-navy\/95 { background-color: rgba(0, 27, 61, 0.95) !important; }
.bg-luxury-gold { background-color: #D4AF37 !important; }
.bg-luxury-gold-dark { background-color: #B38F24 !important; }
.bg-luxury-gold\/10 { background-color: rgba(212, 175, 55, 0.1) !important; }
.bg-luxury-gold\/20 { background-color: rgba(212, 175, 55, 0.2) !important; }
.bg-luxury-gold\/30 { background-color: rgba(212, 175, 55, 0.3) !important; }
.bg-warm-sand { background-color: #F5F2ED !important; }
.bg-warm-sand-light { background-color: #FAF8F5 !important; }
.bg-off-white { background-color: #FCFCFC !important; }
.bg-surface { background-color: #FAF9FC !important; }
.bg-surface-variant { background-color: #E3E2E5 !important; }
.bg-success-green { background-color: #2D6A4F !important; }
.bg-success-green\/10 { background-color: rgba(45, 106, 79, 0.1) !important; }
.bg-white\/10 { background-color: rgba(255, 255, 255, 0.1) !important; }
.bg-white\/20 { background-color: rgba(255, 255, 255, 0.2) !important; }
.bg-white\/30 { background-color: rgba(255, 255, 255, 0.3) !important; }
.bg-white\/95 { background-color: rgba(255, 255, 255, 0.95) !important; }

/* Text Color Utilities */
.text-ocean-navy { color: #001B3D !important; }
.text-luxury-gold { color: #D4AF37 !important; }
.text-luxury-gold-dark { color: #B38F24 !important; }
.text-warm-sand { color: #F5F2ED !important; }
.text-warm-sand\/90 { color: rgba(245, 242, 237, 0.9) !important; }
.text-warm-sand\/80 { color: rgba(245, 242, 237, 0.8) !important; }
.text-warm-sand\/70 { color: rgba(245, 242, 237, 0.7) !important; }
.text-warm-sand\/50 { color: rgba(245, 242, 237, 0.5) !important; }
.text-earth-slate { color: #4A4E54 !important; }
.text-earth-slate\/80 { color: rgba(74, 78, 84, 0.8) !important; }
.text-earth-slate\/70 { color: rgba(74, 78, 84, 0.7) !important; }
.text-earth-slate\/40 { color: rgba(74, 78, 84, 0.4) !important; }
.text-on-surface { color: #1B1B1E !important; }
.text-success-green { color: #2D6A4F !important; }

/* Border Color Utilities */
.border-ocean-navy { border-color: #001B3D !important; }
.border-luxury-gold { border-color: #D4AF37 !important; }
.border-luxury-gold\/20 { border-color: rgba(212, 175, 55, 0.2) !important; }
.border-luxury-gold\/30 { border-color: rgba(212, 175, 55, 0.3) !important; }
.border-luxury-gold\/40 { border-color: rgba(212, 175, 55, 0.4) !important; }
.border-luxury-gold\/50 { border-color: rgba(212, 175, 55, 0.5) !important; }
.border-surface-variant { border-color: #E3E2E5 !important; }
.border-white\/10 { border-color: rgba(255, 255, 255, 0.1) !important; }
.border-white\/20 { border-color: rgba(255, 255, 255, 0.2) !important; }

/* Typography */
.font-serif, .font-serif-title {
    font-family: 'Playfair Display', Georgia, serif !important;
}

.font-sans, .font-sans-body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

.font-caps {
    font-family: 'Montserrat', sans-serif !important;
}

/* Gradients */
.gold-gradient {
    background: linear-gradient(135deg, #D4AF37 0%, #F5E088 50%, #D4AF37 100%) !important;
}

.gold-text {
    background: linear-gradient(135deg, #B38F24 0%, #D4AF37 50%, #B38F24 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.navy-gradient {
    background: linear-gradient(180deg, #001B3D 0%, #000E21 100%) !important;
}

.glass-card {
    background: rgba(255, 255, 255, 0.88);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(212, 175, 55, 0.2);
}

.glass-card-dark {
    background: rgba(0, 27, 61, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(212, 175, 55, 0.2);
}

/* Animations */
@keyframes lightSweep {
    0% { transform: translateX(-150%) skewX(-25deg); opacity: 0; }
    15% { opacity: 0.85; }
    35% { transform: translateX(250%) skewX(-25deg); opacity: 0; }
    100% { transform: translateX(250%) skewX(-25deg); opacity: 0; }
}

.animate-light-sweep {
    position: absolute;
    top: 0;
    left: 0;
    width: 60%;
    height: 100%;
    background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.85) 50%, rgba(255,255,255,0) 100%);
    animation: lightSweep 4.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
    pointer-events: none;
}



/* Article Prose Styling */
.dmb-article-content {
    line-height: 1.85;
    font-size: 1.0625rem;
    color: #333942;
}

.dmb-article-content h2 {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.875rem;
    font-weight: 700;
    color: #001B3D;
    margin-top: 2.5rem;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid rgba(212, 175, 55, 0.3);
}

.dmb-article-content h3 {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.5rem;
    font-weight: 600;
    color: #001B3D;
    margin-top: 2rem;
    margin-bottom: 0.75rem;
}

.dmb-article-content p {
    margin-bottom: 1.5rem;
}

.dmb-article-content blockquote {
    border-left: 4px solid #D4AF37;
    background: #FAF8F5;
    padding: 1.25rem 1.5rem;
    border-radius: 0 0.75rem 0.75rem 0;
    font-style: italic;
    color: #001B3D;
    margin: 2rem 0;
}

.dmb-article-content ul, .dmb-article-content ol {
    margin-bottom: 1.5rem;
    padding-left: 1.5rem;
}

.dmb-article-content li {
    margin-bottom: 0.5rem;
}

.dmb-article-content img {
    border-radius: 1.5rem;
    box-shadow: 0 10px 25px -5px rgba(0, 27, 61, 0.1);
    margin: 2rem auto;
    max-width: 100%;
    height: auto;
}
