/*
Theme Name: EMPOWER 2CU — Living Manifesto
Description: Supremium V34 with Editorial Links & Unified Typography.
Version: 34.0.0
Author: 2CU Online PTY LTD
*/

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Cormorant+Garamond:ital,wght@0,400;0,600;0,700;1,400;1,600&display=swap');

:root {
    --cv-gold:       #DDA74F; 
    --cv-gold-light: #FCE1A5;
    --cv-gold-dark:  #B5822E;
    --cv-dark-olive: #161B14;
    
    --bg-void:       #070707;
    --bg-card:       linear-gradient(180deg, rgba(22, 27, 20, 0.8) 0%, rgba(10, 10, 10, 0.8) 100%);
    --bg-glass:      rgba(7, 7, 7, 0.95);
    
    --text-main:     #EFEFE8; 
    --text-muted:    #888888;
    
    --font-display:  'Cormorant Garamond', Georgia, serif; 
    --font-body:     'DM Sans', sans-serif; 
}

html { width: 100%; overflow-x: hidden; scroll-behavior: smooth; }
body { width: 100%; margin: 0; padding: 0; font-family: var(--font-body); background-color: var(--bg-void); color: var(--text-main); line-height: 1.7; -webkit-font-smoothing: antialiased; }
*, *::before, *::after { box-sizing: border-box; }
a { color: var(--cv-gold); text-decoration: none; transition: all 300ms ease; }
a:hover { color: var(--cv-gold-light); }
h1, h2, h3, h4, h5, h6 { font-family: var(--font-display); color: var(--text-main); margin-bottom: 1rem; font-weight: 500; line-height: 1.1; }

.text-gold { color: var(--cv-gold) !important; }
.text-metallic { background: linear-gradient(135deg, var(--cv-gold-light) 0%, var(--cv-gold) 50%, var(--cv-gold-dark) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }

::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--bg-void); }
::-webkit-scrollbar-thumb { background: rgba(221, 167, 79, 0.2); border-radius: 10px; }

/* ═══════════════════════════════════════════════════════════════
   NAVIGATION
   ═══════════════════════════════════════════════════════════════ */
header.cv2cu-nav { position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important; z-index: 9998 !important; height: 80px !important; background: var(--bg-glass) !important; backdrop-filter: blur(24px) !important; -webkit-backdrop-filter: blur(24px) !important; border-bottom: 1px solid rgba(255,255,255,0.03) !important; display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 0 3rem !important; }
a.cv2cu-nav__logo { font-family: var(--font-display) !important; font-weight: 700 !important; font-size: 1.6rem !important; color: var(--text-main) !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; }
ul.cv2cu-nav__menu { display: flex !important; gap: 2.5rem !important; list-style: none !important; margin: 0 !important; padding: 0 !important; align-items: center !important; }
ul.cv2cu-nav__menu a { color: var(--text-main) !important; font-family: var(--font-body) !important; font-weight: 500 !important; font-size: 0.85rem !important; letter-spacing: 0.05em !important; text-transform: uppercase !important; opacity: 0.8 !important; transition: opacity 0.3s !important; display: block !important; }
ul.cv2cu-nav__menu a:hover { color: var(--cv-gold) !important; opacity: 1 !important; }
button.cv2cu-nav__hamburger { display: none !important; background: transparent !important; border: none !important; color: var(--text-main) !important; cursor: pointer !important; padding: 0 !important; }

@media (max-width: 768px) {
    header.cv2cu-nav { padding: 0 1.5rem !important; height: 70px !important; }
    a.cv2cu-nav__logo { font-size: 1.2rem !important; }
    button.cv2cu-nav__hamburger { display: block !important; }
    ul.cv2cu-nav__menu { display: none !important; flex-direction: column !important; position: fixed !important; top: 70px !important; left: 0 !important; right: 0 !important; bottom: 0 !important; height: calc(100vh - 70px) !important; background: #070707 !important; padding: 2rem !important; border-top: 1px solid rgba(221, 167, 79, 0.1) !important; gap: 0 !important; text-align: center !important; z-index: 9999 !important; overflow-y: auto !important; }
    ul.cv2cu-nav__menu.open { display: flex !important; }
    ul.cv2cu-nav__menu a { font-size: 1.15rem !important; padding: 1.5rem 0 !important; border-bottom: 1px solid rgba(255,255,255,0.05) !important; }
    ul.cv2cu-nav__menu li:last-child a { border-bottom: none !important; }
}

/* ═══════════════════════════════════════════════════════════════
   THE SUPREMIUM UI KIT (Unified Editorial Links)
   ═══════════════════════════════════════════════════════════════ */
/* Replaces the bulky boxes with elegant editorial typography */
.supremium-tag { display: inline-block !important; font-family: var(--font-body) !important; font-size: 0.7rem !important; font-weight: 700 !important; letter-spacing: 0.25em !important; text-transform: uppercase !important; color: var(--cv-gold) !important; margin-bottom: 1.5rem !important; border-left: 2px solid var(--cv-gold) !important; padding-left: 12px !important; }

/* The Primary Button (Only used for ultimate calls to action) */
.btn-supremium { display: inline-flex !important; align-items: center !important; justify-content: center !important; background: var(--cv-gold) !important; color: #000 !important; font-family: var(--font-body) !important; font-weight: 700 !important; font-size: 0.75rem !important; letter-spacing: 0.15em !important; text-transform: uppercase !important; padding: 18px 36px !important; border: none !important; border-radius: 4px !important; box-shadow: 0 10px 30px rgba(221, 167, 79, 0.15) !important; cursor: pointer !important; transition: all 0.4s ease !important; text-decoration: none !important; }
.btn-supremium:hover { transform: translateY(-3px) scale(1.02) !important; box-shadow: 0 15px 40px rgba(221, 167, 79, 0.4) !important; background: var(--cv-gold-light) !important; }

/* 🔴 NEW: The Unified Editorial Link (Replaces btn-ghost) */
.link-editorial { display: inline-flex !important; align-items: center !important; font-family: var(--font-body) !important; font-weight: 600 !important; font-size: 1.05rem !important; color: var(--text-main) !important; text-decoration: none !important; padding-bottom: 4px !important; border-bottom: 1px solid rgba(255,255,255,0.2) !important; transition: all 0.3s ease !important; }
.link-editorial::after { content: '→' !important; margin-left: 12px !important; color: var(--cv-gold) !important; font-size: 1.2rem !important; transition: transform 0.3s ease !important; }
.link-editorial:hover { color: var(--cv-gold) !important; border-bottom-color: var(--cv-gold) !important; }
.link-editorial:hover::after { transform: translateX(6px) !important; }

/* The Cards */
.supremium-card { background: var(--bg-card) !important; border: 1px solid rgba(255,255,255,0.03) !important; border-radius: 16px !important; padding: 5rem 4rem !important; margin-bottom: 3rem !important; box-shadow: 0 30px 60px rgba(0,0,0,0.5) !important; transition: transform 0.5s ease, border-color 0.5s ease, box-shadow 0.5s ease !important; position: relative; overflow: hidden; }
.supremium-card:hover { transform: translateY(-4px) !important; border-color: rgba(221, 167, 79, 0.2) !important; box-shadow: 0 40px 80px rgba(0,0,0,0.8), inset 0 0 40px rgba(221,167,79,0.03) !important; }
@media (max-width: 768px) { .supremium-card { padding: 3rem 1.5rem !important; border-radius: 12px !important; margin-bottom: 2rem !important; } }

/* Fading Testimonials */
.testimonial-wrapper { position: relative; width: 100%; min-height: 280px; display: flex; justify-content: center; align-items: center; }
.testimonial-slide { position: absolute; top: 0; left: 0; width: 100%; opacity: 0; visibility: hidden; transition: opacity 1s ease-in-out, visibility 1s ease-in-out; text-align: center; }
.testimonial-slide.active { opacity: 1; visibility: visible; position: relative; z-index: 2; }

/* Sub-Navigation */
.sub-nav-bar { display: flex; justify-content: center; gap: 3rem; border-bottom: 1px solid rgba(255,255,255,0.05); padding-bottom: 1.5rem; margin-bottom: 4rem; overflow-x: hidden; white-space: nowrap; }
.sub-nav-bar a { font-family: var(--font-body); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--text-muted); padding-bottom: 1.5rem; border-bottom: 2px solid transparent; margin-bottom: -1.5rem; transition: all 0.3s; }
.sub-nav-bar a:hover, .sub-nav-bar a.active { color: var(--cv-gold); border-bottom-color: var(--cv-gold); }
@media (max-width: 768px) { .sub-nav-bar { justify-content: space-between; gap: 0; padding-left: 0.5rem; padding-right: 0.5rem; } .sub-nav-bar a { font-size: 0.55rem; letter-spacing: 0.1em; } }

/* CU Buddy Glow */
body [id*="cu-buddy"], body [class*="cu-buddy"] { animation: buddy-breathe 4s infinite alternate ease-in-out !important; border-radius: 50px !important; transition: all 0.3s ease !important; }
body.cub-is-active [id*="cu-buddy"], body.cub-is-active [class*="cu-buddy"] { box-shadow: 0 0 40px rgba(221, 167, 79, 0.4), inset 0 0 20px rgba(221, 167, 79, 0.2) !important; animation: buddy-listen 2s infinite alternate ease-in-out !important; }
@keyframes buddy-breathe { 0% { box-shadow: 0 0 15px rgba(221, 167, 79, 0.1); } 100% { box-shadow: 0 0 25px rgba(221, 167, 79, 0.25); transform: translateY(-2px); } }
@keyframes buddy-listen { 0% { box-shadow: 0 0 30px rgba(221, 167, 79, 0.3); } 100% { box-shadow: 0 0 50px rgba(221, 167, 79, 0.6); transform: scale(1.02); } }

.cu-reveal { opacity: 0; transform: translateY(30px); transition: all 1200ms cubic-bezier(0.2, 0.8, 0.2, 1); }
.cu-reveal.vis { opacity: 1; transform: none; }
