/**
 * Hero's Theme — main.css
 * Supplemental styles loaded after style.css.
 * Keep theme-wide base styles in style.css.
 */

/* ─── WPForms overrides ───────────────────────────────────────────────────── */
.wpforms-container .wpforms-field input,
.wpforms-container .wpforms-field textarea,
.wpforms-container .wpforms-field select {
    border: 1px solid var(--color-border) !important;
    border-radius: var(--radius) !important;
    font-family: var(--font-sans) !important;
    font-size: .9375rem !important;
    padding: 10px 14px !important;
    width: 100% !important;
    background: var(--color-bg) !important;
    color: var(--color-text) !important;
    transition: border-color var(--transition), box-shadow var(--transition) !important;
}

.wpforms-container .wpforms-field input:focus,
.wpforms-container .wpforms-field textarea:focus {
    outline: none !important;
    border-color: var(--color-accent) !important;
    box-shadow: 0 0 0 3px rgba(37,99,235,.12) !important;
}

.wpforms-container .wpforms-field label {
    font-size: .875rem !important;
    font-weight: 600 !important;
    color: var(--color-text) !important;
    margin-bottom: var(--space-1) !important;
}

.wpforms-container .wpforms-submit-container .wpforms-submit {
    background: var(--color-accent) !important;
    color: #fff !important;
    border: none !important;
    border-radius: var(--radius) !important;
    padding: 12px 24px !important;
    font-weight: 600 !important;
    font-size: .9375rem !important;
    cursor: pointer !important;
    transition: background var(--transition) !important;
}

.wpforms-container .wpforms-submit-container .wpforms-submit:hover {
    background: var(--color-accent-h) !important;
}

/* ─── Polylang language switcher in nav ──────────────────────────────────── */
.nav-menu .lang-item a,
.nav-mobile .lang-item a {
    font-size: .8125rem;
    font-weight: 600;
    padding: 4px 8px;
    border-radius: var(--radius-sm);
    color: var(--color-muted);
    border: 1px solid var(--color-border);
    transition: all var(--transition);
    text-decoration: none;
}
.nav-menu .lang-item-current a,
.nav-menu .lang-item a:hover,
.nav-mobile .lang-item-current a,
.nav-mobile .lang-item a:hover {
    background: var(--color-accent);
    color: #fff !important;
    border-color: var(--color-accent);
}

/* ─── Active nav link ────────────────────────────────────────────────────── */
.nav-menu a.active {
    color: var(--color-accent) !important;
}

/* ─── Scroll-margin for anchored sections (sticky header offset) ─────────── */
section[id] {
    scroll-margin-top: 80px;
}

/* ─── WordPress core block alignment ────────────────────────────────────── */
.post-content .alignleft  { float: left;  margin: 0 var(--space-4) var(--space-3) 0; }
.post-content .alignright { float: right; margin: 0 0 var(--space-3) var(--space-4); }
.post-content .aligncenter { margin-inline: auto; text-align: center; }
.post-content .alignfull  { width: 100vw; margin-left: calc(50% - 50vw); }

/* ─── WordPress responsive embed ─────────────────────────────────────────── */
.wp-block-embed__wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}
.wp-block-embed__wrapper iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

/* ─── Print styles ───────────────────────────────────────────────────────── */
@media print {
    .site-header,
    .hero-actions,
    .nav-toggle,
    .site-footer { display: none; }
    body { font-size: 12pt; color: #000; }
    a::after { content: ' (' attr(href) ')'; font-size: 10pt; color: #555; }
}
