/**
 * TCV Consumption Layer
 * 
 * Purpose: Applies design tokens to specific UI sections using scoped selectors.
 * Loaded AFTER: tcv-base.css, site-overrides.css
 *
 * RULES:
 * - All values must use var(--tcv-*) tokens.
 * - ALLOWED LITERALS: 0, auto (only).
 */

/* ==========================================================================
   HERO SECTION
   Selector: .tcv-hero-section (Injected by Step 02c1)
   ========================================================================== */
.tcv-hero-section.wp-block-cover {
    min-height: var(--tcv-hero-min-height);
}

.tcv-hero-section .wp-block-cover__background {
    opacity: var(--tcv-hero-overlay-opacity);
    background-color: var(--tcv-color-overlay-dark);
}

.tcv-hero-section .wp-block-cover__inner-container {
    max-width: var(--tcv-hero-max-width);
    margin-inline: auto;
}

.tcv-hero-section .wp-block-heading {
    color: var(--tcv-color-text-inverted);
    font-size: var(--tcv-text-display);
    font-weight: var(--tcv-font-weight-bold);
    text-align: var(--tcv-hero-content-align);
    transform: scale(var(--tcv-hero-heading-scale));
}

/* ==========================================================================
   START HERE SECTION
   Selector: .tcv-start-here-section (Injected by Step 04a)
   ========================================================================== */
.tcv-start-here-section {
    padding-block: var(--tcv-section-block-padding);
    padding-inline: var(--tcv-section-inline-padding);
    max-width: var(--tcv-container-max-width);
    margin-inline: auto;
    background-color: var(--tcv-color-surface-secondary);
}

.tcv-start-here-section>.wp-block-heading {
    margin-bottom: var(--tcv-space-xl);
    font-size: var(--tcv-text-h2);
    color: var(--tcv-color-text-primary);
}

/* Card Grid Layout */
.tcv-start-here-section .wp-block-columns {
    gap: var(--tcv-gutter-inline);
}

/* Individual Cards */
.tcv-start-here-section .wp-block-column {
    background-color: var(--tcv-color-surface-primary);
    padding: var(--tcv-card-padding);
    border-radius: var(--tcv-card-radius);
    box-shadow: var(--tcv-card-shadow-base);
    transition: transform var(--tcv-transition-base), box-shadow var(--tcv-transition-base);
    border: 1px solid var(--tcv-color-border-subtle);
}

.tcv-start-here-section .wp-block-column:hover {
    transform: translateY(var(--tcv-card-hover-lift));
    box-shadow: var(--tcv-card-shadow-hover);
    border-color: var(--tcv-color-border-accent);
}

.tcv-start-here-section .wp-block-column h3 {
    font-size: var(--tcv-text-h3);
    margin-bottom: var(--tcv-space-sm);
    color: var(--tcv-color-text-primary);
}

.tcv-start-here-section .wp-block-column p {
    font-size: var(--tcv-text-body);
    color: var(--tcv-color-text-secondary);
    line-height: var(--tcv-line-height-normal);
}

/* ==========================================================================
   THIS WEEK SECTION
   Selector: .tcv-this-week-section (Injected by Step 04b)
   ========================================================================== */
.tcv-this-week-section {
    padding-block: var(--tcv-section-block-padding);
    padding-inline: var(--tcv-section-inline-padding);
    max-width: var(--tcv-content-max-width);
    margin-inline: auto;
    background-color: var(--tcv-color-surface-primary);
}

.tcv-this-week-section h2 {
    font-size: var(--tcv-text-h2);
    color: var(--tcv-color-text-primary);
    margin-bottom: var(--tcv-space-lg);
}

.tcv-this-week-section ul {
    list-style: none;
    padding: 0;
    margin: 0 0 var(--tcv-space-lg) 0;
}

.tcv-this-week-section li {
    padding: var(--tcv-space-sm) 0;
    border-bottom: 1px solid var(--tcv-color-border-subtle);
    font-size: var(--tcv-text-body);
    color: var(--tcv-color-text-secondary);
}

.tcv-this-week-section li:last-child {
    border-bottom: none;
}

/* ==========================================================================
   BUTTONS (Shared)
   ========================================================================== */
.tcv-start-here-section .wp-block-button .wp-block-button__link,
.tcv-this-week-section .wp-block-button .wp-block-button__link {
    background-color: var(--tcv-color-interactive-focus);
    color: var(--tcv-color-text-inverted);
    border-radius: var(--tcv-card-radius);
    padding-block: var(--tcv-space-sm);
    padding-inline: var(--tcv-space-md);
    text-decoration: none;
    transition: background-color var(--tcv-transition-base);
}

.tcv-start-here-section .wp-block-button .wp-block-button__link:hover,
.tcv-this-week-section .wp-block-button .wp-block-button__link:hover {
    background-color: var(--tcv-color-interactive-hover);
}

/* ==========================================================================
   DISCOVERY BAND (Step 04c)
   Selector: .tcv-discovery-band (Injected by Step 04c)
   ========================================================================== */
.tcv-discovery-band {
    background-color: var(--tcv-color-surface-secondary);
    padding-block: var(--tcv-section-block-padding);
    margin-top: 0;
    margin-bottom: var(--tcv-section-block-padding);
}

.tcv-discovery-band .tcv-discovery-title {
    color: var(--tcv-color-text-primary);
    font-size: var(--tcv-text-h2);
    margin-bottom: var(--tcv-space-lg);
}

/* Full-bleed constrained container adjustments */
.tcv-discovery-band .wp-block-columns {
    gap: var(--tcv-gutter-inline);
    margin-top: 0;
    margin-bottom: 0;
}

/* Tile Cards */
.tcv-discovery-band .wp-block-column {
    position: relative;
    border-radius: var(--tcv-card-radius);
    overflow: hidden;
    box-shadow: var(--tcv-card-shadow-base);
    transition: transform var(--tcv-transition-base), box-shadow var(--tcv-transition-base);
}

.tcv-discovery-band .wp-block-column:hover {
    transform: translateY(var(--tcv-card-hover-lift));
    box-shadow: var(--tcv-card-shadow-hover);
}

/* Tile Image */
.tcv-discovery-band .wp-block-image {
    margin: 0;
    height: 100%;
}

.tcv-discovery-band .wp-block-image img {
    display: block;
    width: 100%;
    height: 300px;
    /* Specific tile height token */
    object-fit: cover;
    transition: transform var(--tcv-transition-base);
}

.tcv-discovery-band .wp-block-column:hover .wp-block-image img {
    transform: scale(1.05);
}

/* Tile Overlay Heading */
.tcv-discovery-band .wp-block-heading {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: var(--tcv-space-md);
    background: linear-gradient(to top, var(--tcv-color-overlay-dark), transparent);
    margin: 0;
    z-index: 10;
}

.tcv-discovery-band .wp-block-heading a {
    color: var(--tcv-color-text-inverted);
    text-decoration: none;
    font-size: var(--tcv-text-h3);
    font-weight: var(--tcv-font-weight-medium);
}