/**
 * Tellingbeatzz — Visual Polish Pass 1
 * Monochrome refinement: no new colors introduced.
 * Scoped to stable Elementor widget classes confirmed against live markup.
 */

/* ---------------------------------------------------
   1. Buttons — unify feel, add deliberate hover feedback.
   Elementor uses one shared .elementor-button class across
   every CTA on the site, so this refines that one style well
   rather than faking a hierarchy that doesn't exist in the markup.
--------------------------------------------------- */
.elementor-button {
    transition: background-color 0.2s ease, color 0.2s ease, transform 0.15s ease !important;
    letter-spacing: 0.01em;
}

.elementor-button:hover {
    transform: translateY(-1px);
}

.elementor-button.elementor-button-link:not([style*="background"]) {
    border: 1.5px solid #000;
}

.elementor-button.elementor-button-link:not([style*="background"]):hover {
    background-color: #000 !important;
    color: #fff !important;
}

/* Respect users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
    .elementor-button,
    .elementor-button:hover {
        transition: none !important;
        transform: none !important;
    }
}

/* ---------------------------------------------------
   2. Testimonial images — turn the shared placeholder
   photo into a deliberate minimalist silhouette treatment
   instead of a flat, accidental-looking black circle.
--------------------------------------------------- */
.elementor-testimonial-image img {
    filter: grayscale(100%) contrast(1.1);
    border: 1.5px solid #000;
    box-shadow: 0 0 0 4px #fff, 0 0 0 5px #e5e5e5;
}

/* ---------------------------------------------------
   3. Typography hierarchy — Roboto is already loaded
   (100–900), just not used with any weight variation.
   Every heading level currently reads at the same heavy
   weight; this gives each level real, deliberate contrast.
   Scoped to :not([style]) so it never fights headings
   that already carry an intentional inline weight
   (e.g. the license-card H4s).
--------------------------------------------------- */
h1:not([style]) {
    font-weight: 700 !important;
    letter-spacing: -0.02em;
    line-height: 1.05;
}

h2:not([style]) {
    font-weight: 700 !important;
    letter-spacing: -0.015em;
    line-height: 1.15;
}

h3:not([style]) {
    font-weight: 700 !important;
    letter-spacing: -0.01em;
    line-height: 1.2;
}

h4:not([style]) {
    font-weight: 600 !important;
    letter-spacing: normal;
    line-height: 1.3;
}

/* ---------------------------------------------------
   4. Accessible keyboard focus states (quality floor,
   doesn't change default appearance for mouse users).
--------------------------------------------------- */
.elementor-button:focus-visible,
a:focus-visible {
    outline: 2px solid #000;
    outline-offset: 3px;
}

.o-hero .o-hero__content .o-hero__content__title {
    font-weight: 700 !important;
}