/*
Theme Name: UB Group
Theme URI: https://ubgroup.asia
Author: UB Group Digital Team
Author URI: https://ubgroup.asia
Description: Custom WordPress theme for UB Group (Unified Brainz Virtuoso Limited). Approved UB palette (#0C1020 · #C8A84B · Cinzel · Cormorant Garamond · DM Sans). Ships with 7 page templates, 20 official brand logos, and deep integration with the UB Group Forms Manager plugin.
Version: 2.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: Proprietary
License URI: https://ubgroup.asia/terms/
Text Domain: ub-group
Tags: custom-colors, custom-menu, custom-logo, full-site-editing, translation-ready
*/

/* ══════════════════════════════════════════════════════════════════════
   UB GROUP LOCKED PALETTE (LAW_APPROVED_UB_PALETTE_05)
   Background:   #0C1020
   Background-deep: #070A16
   Gold primary: #C8A84B
   Gold light:   #E4CB7A
   Cream text:   #FAFAF7
   Red accent:   #B8312A
   Copper:       #C8622A
   Rule line:    #1C2338
   Card bg:      #0E1420
   ══════════════════════════════════════════════════════════════════════ */

:root {
    --ub-bg: #0C1020;
    --ub-bg-deep: #070A16;
    --ub-gold: #C8A84B;
    --ub-gold-l: #E4CB7A;
    --ub-gold-d: #8A6D10;
    --ub-cream: #FAFAF7;
    --ub-cream-mute: rgba(250,250,247,.65);
    --ub-cream-dim: rgba(250,250,247,.35);
    --ub-red: #B8312A;
    --ub-copper: #C8622A;
    --ub-rule: #1C2338;
    --ub-card: #0E1420;
}

/* ══════ Global resets ══════ */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
    font-weight: 300;
    background: var(--ub-bg);
    color: var(--ub-cream);
    line-height: 1.65;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--ub-gold); text-decoration: none; transition: color .2s; }
a:hover { color: var(--ub-gold-l); }

/* ══════ Typography ══════ */
h1, h2, h3, .serif-heading {
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-style: italic;
    font-weight: 600;
    line-height: 1.3;
    color: var(--ub-cream);
}
.cinzel {
    font-family: 'Cinzel', Georgia, serif;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
}

/* ══════ Layout ══════ */
.container, .wrap {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 clamp(16px, 4vw, 40px);
}

/* ══════ Nav (theme-level, minimal — actual nav built by JS in each page) ══════ */
.ub-theme-nav {
    background: var(--ub-bg-deep);
    border-bottom: 1px solid var(--ub-rule);
    padding: 14px 0;
    position: sticky; top: 0; z-index: 50;
    backdrop-filter: blur(10px);
    background: rgba(7,10,22,.92);
}
.ub-theme-nav-inner {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.ub-theme-nav-mark {
    font-family: 'Cinzel', Georgia, serif;
    font-weight: 700;
    font-size: 18px;
    letter-spacing: 4px;
    color: var(--ub-gold);
}

/* ══════ Footer ══════ */
.ub-theme-footer {
    background: var(--ub-bg-deep);
    padding: 40px 20px 20px;
    border-top: 1px solid var(--ub-rule);
    font-size: 13px;
    color: var(--ub-cream-mute);
}
.ub-theme-footer-inner {
    max-width: 1140px;
    margin: 0 auto;
    text-align: center;
}
.ub-theme-footer a { color: var(--ub-cream-mute); margin: 0 10px; }

/* ══════ WP-specific overrides ══════ */
.admin-bar .ub-theme-nav { top: 32px; }
@media (max-width: 782px) {
    .admin-bar .ub-theme-nav { top: 46px; }
}

/* ══════ Reusable utility classes ══════ */
.btn-gold {
    background: var(--ub-gold);
    color: var(--ub-bg-deep);
    padding: 14px 28px;
    border: 0;
    font-family: 'DM Sans', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2.4px;
    text-transform: uppercase;
    border-radius: 3px;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    transition: all .2s;
}
.btn-gold:hover { background: var(--ub-gold-l); transform: translateY(-1px); color: var(--ub-bg-deep); }
.btn-ghost {
    background: transparent;
    color: var(--ub-gold);
    padding: 14px 28px;
    border: 1px solid var(--ub-gold);
    font-family: 'DM Sans', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2.4px;
    text-transform: uppercase;
    border-radius: 3px;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    transition: all .2s;
}
.btn-ghost:hover { background: var(--ub-gold); color: var(--ub-bg-deep); }

.eyebrow {
    font-family: 'Cinzel', Georgia, serif;
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 5px;
    text-transform: uppercase;
    color: var(--ub-gold);
}

/* Scroll-to-top */
.ub-scroll-top {
    position: fixed;
    bottom: 20px; right: 20px;
    width: 40px; height: 40px;
    background: var(--ub-bg-deep);
    border: 1px solid rgba(200,168,75,.45);
    border-radius: 50%;
    color: var(--ub-gold);
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s, visibility .3s;
    z-index: 900;
    display: flex;
    align-items: center;
    justify-content: center;
}
.ub-scroll-top.show { opacity: 1; visibility: visible; }
@media (max-width: 768px) {
    .ub-scroll-top { width: 36px; height: 36px; bottom: 18px; right: 18px; }
}
