﻿/* 
 * TDH Luxury Ecosystem - Base Design System
 * Shared Variables, Typography, and Core Utilities
 */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400&family=Outfit:wght@300;400;600;800&family=Noto+Serif+SC:wght@600;900&family=Open+Sans:wght@400;600;700&display=swap');

:root {
    --tdh-gold: #c5a059;
    --tdh-gold-dark: #a68445;
    --tdh-gold-light: #eaddc0;
    --tdh-platinum: #E5E4E2;
    --tdh-dark: #0f172a;
    --tdh-charcoal: #1e293b;
    --tdh-slate: #f8fafc;
    --tdh-text: #334155;
    --tdh-text-light: #64748b;
    --tdh-white: #ffffff;
    --tdh-sage: #AFC4A2;
    --tdh-sage-light: #F4F7F2;
    --tdh-bg-soft: #FDF6EE;
    --tdh-border: rgba(90, 90, 90, 0.1);

    /* Typography */
    --tdh-serif: 'Playfair Display', serif;
    --tdh-sans: 'Outfit', sans-serif;

    /* Effects */
    --tdh-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
    --tdh-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    --tdh-shadow-lg: 0 25px 50px -12px rgba(0, 0, 0, 0.15);
    --tdh-glass: rgba(255, 255, 255, 0.85);
    --tdh-transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.designers-hub {
    font-family: var(--tdh-sans);
    color: var(--tdh-text);
    line-height: 1.6;
}

/* Common Container */
.tdh-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Buttons (Legacy & Shared) */
.tdh-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 16px 36px;
    border-radius: 50px;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    transition: var(--tdh-transition);
    cursor: pointer;
    text-decoration: none;
    border: none;
    gap: 10px;
}

.tdh-btn-gold {
    background: linear-gradient(135deg, var(--tdh-gold) 0%, var(--tdh-gold-dark) 100%);
    color: white;
}

.tdh-btn-sage-solid {
    background: var(--tdh-sage);
    color: white;
    padding: 14px 28px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 700;
    font-size: 14px;
    display: inline-block;
    transition: var(--tdh-transition);
}

.tdh-luxury-font {
    font-family: var(--tdh-serif);
    font-weight: 700;
}

/* Animation */
@keyframes pdFadeInUp {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.tdh-animate-in {
    animation: pdFadeInUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
