/* ============================================
   GALICIA UNIVERSAL - PREMIUM REDESIGN
   Estilo: The New York Times / The Guardian
   ============================================ */

:root {
    --gu-primary: #C41E3A;
    --gu-primary-dark: #8B1528;
    --gu-secondary: #1A1A1A;
    --gu-accent: #0047AB;
    --gu-text: #2C2C2C;
    --gu-text-light: #666666;
    --gu-bg: #FFFFFF;
    --gu-bg-alt: #F9F9F9;
    --gu-border: #E8E8E8;
    --gu-shadow: rgba(0, 0, 0, 0.08);
    --gu-shadow-hover: rgba(0, 0, 0, 0.15);
}

/* BASE & TYPOGRAPHY */
body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    font-size: 17px !important;
    line-height: 1.7 !important;
    color: var(--gu-text) !important;
    background: var(--gu-bg) !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Playfair Display', Georgia, 'Times New Roman', serif !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    letter-spacing: -0.5px !important;
    color: var(--gu-secondary) !important;
}

h1 { font-size: 2.8rem !important; }
h2 { font-size: 2.2rem !important; }
h3 { font-size: 1.8rem !important; }
h4 { font-size: 1.5rem !important; }

a {
    color: var(--gu-primary) !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
}

a:hover {
    color: var(--gu-primary-dark) !important;
}

/* HEADER */
.site-header {
    background: var(--gu-bg) !important;
    border-bottom: 4px solid var(--gu-primary) !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
    box-shadow: 0 2px 10px var(--gu-shadow) !important;
    padding: 16px 0 !important;
}

.site-logo .logo-name {
    font-family: 'Playfair Display', serif !important;
    font-weight: 900 !important;
    font-size: 2.4rem !important;
    letter-spacing: -1px !important;
    color: var(--gu-secondary) !important;
}

.site-logo .logo-name span:first-child {
    color: var(--gu-primary) !important;
}

/* NAVIGATION */
.main-navigation, .main-nav {
    background: var(--gu-secondary) !important;
    padding: 0 !important;
}

.main-nav ul {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

.main-nav li {
    margin: 0 !important;
}

.main-nav li a {
    color: white !important;
    font-weight: 600 !important;
    padding: 16px 20px !important;
    text-transform: uppercase !important;
    font-size: 0.85rem !important;
    letter-spacing: 0.5px !important;
    transition: all 0.3s ease !important;
    display: block !important;
}

.main-nav li a:hover {
    background: var(--gu-primary) !important;
    color: white !important;
}

/* POSTS & ARTICLES */
article, .post, .inside-article {
    background: var(--gu-bg) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 12px var(--gu-shadow) !important;
    margin-bottom: 32px !important;
    transition: all 0.3s ease !important;
    border: 1px solid var(--gu-border) !important;
}

article:hover, .post:hover, .inside-article:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 12px 32px var(--gu-shadow-hover) !important;
}

.post-thumbnail, .featured-image {
    overflow: hidden !important;
    margin: 0 !important;
}

.post-thumbnail img, .featured-image img {
    width: 100% !important;
    height: 300px !important;
    object-fit: cover !important;
    transition: transform 0.4s ease !important;
}

article:hover .post-thumbnail img, .post:hover .featured-image img {
    transform: scale(1.05) !important;
}

.entry-header {
    padding: 24px 24px 16px 24px !important;
}

.entry-title {
    font-size: 1.8rem !important;
    line-height: 1.3 !important;
    margin: 12px 0 !important;
    font-weight: 800 !important;
}

.entry-title a {
    color: var(--gu-secondary) !important;
}

.entry-title a:hover {
    color: var(--gu-primary) !important;
}

.entry-meta {
    font-size: 0.85rem !important;
    color: var(--gu-text-light) !important;
    margin-bottom: 16px !important;
}

.entry-content {
    padding: 0 24px 24px 24px !important;
    font-size: 17px !important;
    line-height: 1.8 !important;
}

/* READ MORE BUTTON */
.read-more, .more-link, .wp-block-button__link {
    background: var(--gu-primary) !important;
    color: white !important;
    padding: 14px 28px !important;
    border-radius: 6px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    font-size: 0.9rem !important;
    transition: all 0.3s ease !important;
    display: inline-block !important;
    margin-top: 16px !important;
}

.read-more:hover, .more-link:hover, .wp-block-button__link:hover {
    background: var(--gu-primary-dark) !important;
    color: white !important;
    transform: translateX(4px) !important;
}

/* SIDEBAR & WIDGETS */
.widget-area, .sidebar {
    background: var(--gu-bg-alt) !important;
    padding: 32px !important;
    border-radius: 12px !important;
    border: 1px solid var(--gu-border) !important;
}

.widget {
    margin-bottom: 32px !important;
    padding-bottom: 32px !important;
    border-bottom: 1px solid var(--gu-border) !important;
}

.widget:last-child {
    border-bottom: none !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.widget-title {
    font-family: 'Playfair Display', serif !important;
    font-weight: 700 !important;
    font-size: 1.4rem !important;
    margin-bottom: 20px !important;
    position: relative !important;
    padding-bottom: 12px !important;
    color: var(--gu-secondary) !important;
}

.widget-title::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 50px !important;
    height: 3px !important;
    background: var(--gu-primary) !important;
}

/* FOOTER */
.site-footer {
    background: var(--gu-secondary) !important;
    color: white !important;
    padding: 64px 0 !important;
    margin-top: 64px !important;
    border-top: 4px solid var(--gu-primary) !important;
}

.site-footer a {
    color: #E8E8E8 !important;
}

.site-footer a:hover {
    color: white !important;
}

.footer-widget {
    margin-bottom: 32px !important;
}

.footer-widget-title {
    font-family: 'Playfair Display', serif !important;
    font-weight: 700 !important;
    font-size: 1.3rem !important;
    margin-bottom: 16px !important;
    color: white !important;
}

/* READING TIME */
.gu-reading-time {
    background: var(--gu-bg-alt) !important;
    padding: 12px 20px !important;
    border-radius: 6px !important;
    margin-bottom: 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    color: var(--gu-text-light) !important;
    border: 1px solid var(--gu-border) !important;
}

.gu-reading-time-icon {
    font-size: 1.2rem !important;
}

/* RESPONSIVE */
@media (max-width: 1024px) {
    .site-header { padding: 12px 0 !important; }
    .site-logo .logo-name { font-size: 2rem !important; }
    h1 { font-size: 2.4rem !important; }
    h2 { font-size: 2rem !important; }
}

@media (max-width: 768px) {
    body { font-size: 16px !important; }
    .post-thumbnail img, .featured-image img { height: 220px !important; }
    .entry-title { font-size: 1.5rem !important; }
    .site-logo .logo-name { font-size: 1.8rem !important; }
    .main-nav li a { padding: 12px 16px !important; font-size: 0.8rem !important; }
    h1 { font-size: 2rem !important; }
    h2 { font-size: 1.6rem !important; }
    h3 { font-size: 1.4rem !important; }
}

/* PRINT */
@media print {
    .site-header, .site-footer, .sidebar, .main-navigation { display: none !important; }
    body { font-size: 12pt !important; line-height: 1.5 !important; }
    a { text-decoration: underline !important; }
}
