/* CD HERO */
.cd-hero { position: relative; display: grid; place-items: center; width: 100%; min-height: min(90vh, 700px); overflow: hidden; background: #2c2a26; }
.cd-hero__image { width: 100%; height: 100%; min-height: inherit; object-fit: contain; object-position: center; }
.cd-hero__overlay { position: absolute; inset: 0; background: linear-gradient(to bottom, transparent 20%, rgb(26 25 22 / 0.75) 100%); pointer-events: none; }
.cd-hero__content { position: absolute; inset-inline: 0; bottom: 0; width: min(100% - (var(--cd-gutter) * 2), 720px); padding-block: var(--cd-space-lg); color: var(--cd-white); }
.cd-hero__eyebrow { margin-bottom: var(--cd-space-sm); color: var(--cd-accent); font-size: 0.72rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; }
.cd-hero__title { margin-bottom: var(--cd-space-sm); color: var(--cd-white); font-size: clamp(2.4rem, 5vw, 4rem); font-weight: 300; }
.cd-hero__description { max-width: 520px; margin-bottom: var(--cd-space-md); color: rgb(255 255 255 / 0.82); font-size: 1rem; font-weight: 300; line-height: 1.75; }
.cd-hero__cta { display: inline-flex; align-items: center; gap: 0.5rem; min-height: 44px; padding: 0.875rem 1.75rem; border-radius: var(--cd-radius-pill); background: var(--cd-white); color: var(--cd-text); font-size: 0.85rem; font-weight: 700; letter-spacing: 0.05em; transition: transform var(--cd-transition), box-shadow var(--cd-transition); }
.cd-hero__cta:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgb(0 0 0 / 0.20); }
.cd-hero__cta svg { transition: transform var(--cd-transition); }
.cd-hero__cta:hover svg { transform: translateX(4px); }
@media (max-width: 640px) { .cd-hero { min-height: 560px; } }
