/* Signalique public design system: dark, sharp, minimal. */
:root {
    color-scheme: dark;
    --color-bg: #090b0e;
    --color-bg-alt: #0c0f13;
    --color-surface-1: #10141a;
    --color-surface-2: #151a21;
    --color-surface-3: #1a2029;
    --color-border: #252b34;
    --color-border-strong: #3a4350;
    --color-text: #f2f4f7;
    --color-text-muted: #9aa3af;
    --color-text-subtle: #7f8a98;
    --color-primary: #5b8cff;
    --color-primary-strong: #4778e8;
    --color-primary-fill: #3f6fd4;
    --color-primary-fill-hover: #365fc0;
    --color-primary-contrast: #fff;
    --color-secondary: #5b8cff;
    --color-accent: #5b8cff;
    --color-success: #4ade80;
    --color-warning: #fbbf24;
    --color-danger: #fb7185;
    --color-info: #60a5fa;
    --color-success-soft: #10251a;
    --color-warning-soft: #29210c;
    --color-danger-soft: #2b1218;
    --color-info-soft: #101d31;
    --color-neutral-soft: #171b21;
    --color-success-border: #245c39;
    --color-warning-border: #655117;
    --color-danger-border: #6d2937;
    --color-info-border: #294c78;
    --color-neutral-border: #343b45;
    --radius-xs: 2px;
    --radius-sm: 4px;
    --radius-md: 6px;
    --radius-lg: 8px;
    --radius-xl: 8px;
    --radius-round: 999px;
    --shadow-sm: 0 1px 2px rgb(0 0 0 / 28%);
    --shadow-md: 0 8px 24px rgb(0 0 0 / 24%);
    --shadow-lg: 0 8px 24px rgb(0 0 0 / 24%);
    --font-family-base: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-family-display: var(--font-family-base);
    --font-family-mono: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;
    --letter-spacing-tight: -0.035em;
    --font-size-2xl: clamp(1.5rem, 2.5vw, 2rem);
    --font-size-3xl: clamp(1.75rem, 3vw, 2.75rem);
    --font-size-4xl: clamp(2.25rem, 5vw, 4.25rem);
    --container-width: 1200px;
    --container-gutter: clamp(1rem, 3vw, 2rem);
    --section-spacing-y: clamp(3.5rem, 7vw, 6rem);
    --transition-base: 140ms ease;
    --bg-dark: var(--color-bg);
    --bg-dark-secondary: var(--color-bg-alt);
    --card-bg: var(--color-surface-1);
    --border-radius: var(--radius-sm);
    --border-radius-lg: var(--radius-lg);
    --shadow-glow: none;
}

html {
    background: var(--color-bg);
    scrollbar-color: var(--color-border-strong) var(--color-bg);
}

body {
    background: var(--color-bg);
    color: var(--color-text);
    letter-spacing: 0;
    scroll-padding-top: 68px;
}

.background-animation {
    display: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
.logo {
    font-family: var(--font-family-base);
}

h1 {
    font-size: var(--font-size-4xl);
}

h2,
.section-title {
    font-size: var(--font-size-3xl);
}

h3 {
    font-size: var(--font-size-2xl);
}

p {
    color: var(--color-text-muted);
}

.section-title,
.glitch,
.advantage-card h3,
.account-hero h1,
.support-hero h1,
.contact-hero h1,
.blog-hero h1,
.category-hero h1,
.product-title,
.checkout-title,
.payment-page h1 {
    background: none;
    -webkit-text-fill-color: currentColor;
    color: var(--color-text);
}

.section-title {
    display: block;
    width: auto;
    margin: 0;
    text-align: inherit;
}

.section-title::after,
.section-ender,
.glitch::before,
.glitch::after {
    display: none;
}

.section-header {
    max-width: 720px;
    margin: 0 0 clamp(2rem, 5vw, 3rem);
    text-align: left;
}

.section-header.align-left {
    margin-inline: 0;
}

.section-intro {
    max-width: 62ch;
    margin: 1rem 0 0;
    font-size: 1.05rem;
}

.eyebrow,
.service-eyebrow,
.checkout-step-badge,
.product-category-label {
    margin: 0 0 0.75rem;
    color: var(--color-primary);
    font-family: var(--font-family-mono);
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

/* Navigation */
.navbar {
    min-height: 68px;
    background: var(--color-bg);
    border-bottom: 1px solid var(--color-border);
    box-shadow: none;
    backdrop-filter: none;
}

.navbar .container {
    min-height: 68px;
    padding-block: 0;
}

.logo {
    background: none;
    color: var(--color-text);
    font-size: 1.3rem;
    letter-spacing: -0.03em;
}

.nav-link {
    color: var(--color-text-muted);
    font-size: 0.78rem;
}

.nav-link::after {
    bottom: -1.1rem;
    height: 2px;
    border-radius: 0;
    background: var(--color-primary);
}

.nav-link:is(:hover, :focus-visible),
.nav-link.is-active {
    color: var(--color-text);
}

.nav-toggle,
.mini-cart,
.mini-account,
.lang-switch {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-surface-1);
    box-shadow: none;
}

.nav-toggle:hover,
.mini-cart:hover,
.mini-account:hover,
.lang-switch:hover,
.lang-switch:focus-visible {
    border-color: var(--color-border-strong);
    background: var(--color-surface-2);
    color: var(--color-text);
    transform: none;
}

/* Actions */
.btn,
.cta-btn,
.btn-primary,
.btn-secondary,
.btn-danger,
button[type="submit"] {
    min-height: 42px;
    border-radius: var(--radius-sm);
    box-shadow: none;
    transition: color var(--transition-base), background-color var(--transition-base), border-color var(--transition-base), opacity var(--transition-base);
}

.btn-primary,
.cta-btn,
button[type="submit"]:not([class]) {
    border: 1px solid var(--color-primary-fill);
    background: var(--color-primary-fill);
    color: var(--color-primary-contrast);
}

.btn-primary:hover,
.cta-btn:hover,
button[type="submit"]:not([class]):hover {
    border-color: var(--color-primary-fill-hover);
    background: var(--color-primary-fill-hover);
    color: var(--color-primary-contrast);
    box-shadow: none;
    transform: none;
}

.btn-secondary,
.btn-secondary.ghost {
    border: 1px solid var(--color-border-strong);
    background: var(--color-surface-1);
    color: var(--color-text);
}

.btn-secondary:hover,
.btn-secondary.ghost:hover {
    border-color: var(--color-text-subtle);
    background: var(--color-surface-2);
    color: var(--color-text);
    box-shadow: none;
    transform: none;
}

.btn-danger:hover {
    box-shadow: none;
    transform: none;
}

/* Surfaces */
.card,
.feature-card,
.advantage-card,
.account-card,
.profile-card,
.product-card,
.service-card,
.service-benefit,
.testimonial-card,
.blog-card,
.related-card,
.checkout-card,
.support-card,
.info-card,
.contact-form-card,
.product-images,
.product-info,
.product-long-description,
.product-interface-showcase,
.service-summary,
.service-audience,
.service-offer,
.service-form,
.legal-content,
.empty-state {
    background: var(--color-surface-1);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    box-shadow: none;
    backdrop-filter: none;
}

.card--interactive:hover,
.feature-card:hover,
.advantage-card:hover,
.account-card:hover,
.profile-card:hover,
.product-card:hover,
.service-card:hover,
.service-benefit:hover,
.testimonial-card:hover,
.blog-card:hover,
.related-card:hover,
.info-card:hover {
    border-color: var(--color-border-strong);
    box-shadow: none;
    transform: none;
}

.advantage-icon,
.feature-icon,
.account-icon,
.empty-illustration,
.payment-option__icon {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-surface-2);
    color: var(--color-primary);
    box-shadow: none;
}

.service-image,
.product-card .product-image,
.blog-card-cover,
.related-card-cover {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-bg-alt);
    box-shadow: none;
}

.service-placeholder,
.placeholder-icon {
    color: var(--color-text-muted);
    font-family: var(--font-family-mono);
}

/* Forms */
label {
    color: var(--color-text);
}

.form-input,
input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
textarea,
select {
    min-height: 44px;
    border: 1px solid var(--color-border-strong);
    border-radius: var(--radius-sm);
    background: var(--color-surface-1);
    color: var(--color-text);
    box-shadow: none;
}

textarea {
    min-height: 120px;
}

.form-input:focus,
input:focus,
textarea:focus,
select:focus {
    border-color: var(--color-primary);
    outline: 2px solid rgb(91 140 255 / 28%);
    outline-offset: 1px;
    box-shadow: none;
    transform: none;
}

.form-input:invalid:not(:placeholder-shown),
.form-input:valid:not(:placeholder-shown) {
    border-color: var(--color-border-strong);
}

.form-input:user-invalid,
[aria-invalid="true"] {
    border-color: var(--color-danger);
}

::placeholder {
    color: var(--color-text-subtle);
    opacity: 1;
}

.form-hint,
.checkout-hint {
    color: var(--color-text-subtle);
}

.form-feedback-box,
.notice,
.alert,
.payment-hint,
.checkout-secure {
    border-radius: var(--radius-sm);
    box-shadow: none;
}

/* Product, content and commerce */
.product-content {
    align-items: start;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.product-images,
.product-info,
.product-long-description,
.product-interface-showcase {
    padding: clamp(1.25rem, 3vw, 2rem);
}

.product-main-image img,
.product-gallery-thumb,
.product-interface-image img {
    border-radius: var(--radius-sm);
}

.product-images .main-image,
.product-gallery-thumb,
.product-placeholder .placeholder-icon {
    border-color: var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-surface-2);
    box-shadow: none;
}

.product-images .main-image:hover,
.product-gallery-thumb:hover,
.product-gallery-thumb:focus-visible,
.product-gallery-thumb.is-active {
    border-color: var(--color-border-strong);
    box-shadow: none;
    transform: none;
}

.product-main-image:hover img,
.blog-card:hover img,
.related-card:hover img {
    transform: none;
}

.product-price,
.service-price,
.current-price,
.order-total {
    background: none;
    -webkit-text-fill-color: currentColor;
    color: var(--color-text);
    font-family: var(--font-family-mono);
}

.discount,
#product-price-note,
#product-price-note.price-note--connected {
    border: 1px solid var(--color-info-border);
    border-radius: var(--radius-sm);
    background: var(--color-info-soft);
    color: var(--color-info);
    box-shadow: none;
}

.product-demo-cta .demo-btn,
.product-demo-cta .demo-btn:hover,
.product-demo-cta .demo-btn:focus-visible {
    border: 1px solid var(--color-border-strong);
    border-radius: var(--radius-sm);
    background: var(--color-surface-1);
    color: var(--color-text);
    box-shadow: none;
    transform: none;
}

.product-features li,
.feature-list li,
.service-list li {
    border-bottom: 1px solid var(--color-border);
}

.product-lightbox__backdrop {
    background: rgb(0 0 0 / 88%);
    backdrop-filter: none;
}

.product-lightbox__dialog,
.product-lightbox__close,
.product-lightbox__nav {
    border-radius: var(--radius-sm);
    box-shadow: none;
}

.product-lightbox__dialog {
    background: var(--color-surface-1);
}

.product-lightbox__image {
    border-radius: var(--radius-sm);
    box-shadow: none;
}

.product-features li,
.product-features li:hover {
    border: 0;
    border-bottom: 1px solid var(--color-border);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    transform: none;
}

.product-features li::before {
    background: none;
    -webkit-text-fill-color: currentColor;
    color: var(--color-success);
}

.interface-showcase-header,
.interface-showcase-image,
.interface-gallery,
.interface-gallery__viewport {
    background: transparent;
}

.interface-showcase-header h2 {
    background: none;
    -webkit-text-fill-color: currentColor;
    color: var(--color-text);
}

.interface-showcase-image::before {
    display: none;
}

.interface-showcase-image img,
.interface-showcase-image img:hover,
.interface-gallery__item img,
.interface-gallery__item:hover {
    border-radius: var(--radius-sm);
    box-shadow: none;
    transform: none;
}

.interface-gallery__btn,
.interface-gallery__btn:hover:not(:disabled) {
    border: 1px solid var(--color-border-strong);
    border-radius: var(--radius-sm);
    background: var(--color-surface-1);
    color: var(--color-text);
    box-shadow: none;
    transform: translateY(-50%);
}

.interface-gallery__dots {
    border: 0;
    border-radius: 0;
    background: transparent;
    backdrop-filter: none;
}

.interface-gallery__dot--active {
    box-shadow: none;
    transform: none;
}

.checkout-steps,
.account-tabs,
.support-tabs,
.blog-categories {
    border-bottom: 1px solid var(--color-border);
    background: transparent;
    border-radius: 0;
    box-shadow: none;
}

.checkout-step,
.account-tab,
.support-tab,
.category-filter {
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.checkout-step.active,
.account-tab.active,
.support-tab.active,
.category-filter.active {
    border-color: var(--color-primary);
    background: transparent;
    color: var(--color-text);
    box-shadow: inset 0 -2px var(--color-primary);
}

.payment-option {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-bg-alt);
    box-shadow: none;
}

.payment-option:has(input:checked),
.payment-option.active {
    border-color: var(--color-primary);
    background: var(--color-surface-2);
    box-shadow: none;
}

.blog-grid {
    gap: 1px;
    border: 1px solid var(--color-border);
    background: var(--color-border);
}

.blog-card {
    border: 0;
    border-radius: 0;
}

.blog-tag,
.status-badge,
[class*="status-"] {
    border-radius: var(--radius-sm);
}

.cart-count {
    background: var(--color-primary-fill);
    color: var(--color-primary-contrast);
    box-shadow: none;
}

.status-customer {
    background: var(--color-primary-fill);
    color: var(--color-primary-contrast);
}

.account-address-item,
.ticket-item,
.cart-item,
.order-item {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-surface-1);
    box-shadow: none;
}

.cart-item {
    backdrop-filter: none;
}

.empty-cart,
.cart-summary {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-surface-1);
    box-shadow: none;
    backdrop-filter: none;
}

.cart-item:hover {
    border-color: var(--color-border-strong);
    box-shadow: none;
    transform: none;
}

.item-image,
.empty-cart-icon,
.account-empty-state-icon,
.profile-card > .account-icon,
.account-card > .account-icon,
.support-card h3 .icon,
.empty-state-icon {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-surface-2);
    color: var(--color-primary);
    box-shadow: none;
}

.item-image .placeholder-icon {
    border: 0;
    background: transparent;
    box-shadow: none;
}

.guide-step-number {
    border-radius: var(--radius-sm);
    background: var(--color-primary-fill);
    color: var(--color-primary-contrast);
}

/* Page composition */
.page-hero,
.category-header,
.contact-hero,
.account-hero,
.support-hero,
.blog-hero {
    padding-block: clamp(3.5rem, 7vw, 5.5rem) 2rem;
    background: var(--color-bg);
    border-bottom: 0;
    text-align: left;
}

.blog-page .page-hero {
    margin-bottom: 2rem;
    border-bottom: 1px solid var(--color-border);
    background: var(--color-bg);
    box-shadow: none;
}

.blog-page .page-hero .blog-search {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.blog-page .page-hero .blog-search input[type="search"] {
    border-color: var(--color-border-strong);
    background: var(--color-surface-1);
    color: var(--color-text);
    box-shadow: none;
}

.summary-card,
.post-hero,
.post-detail,
.post-cover figcaption,
.related-posts {
    background: var(--color-bg);
}

.summary-card {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
}

.post-hero {
    border-bottom: 1px solid var(--color-border);
}

.post-hero-tag {
    border: 1px solid var(--color-border-strong);
    border-radius: var(--radius-sm);
    background: var(--color-surface-2);
    color: var(--color-text);
    box-shadow: none;
}

.post-cover,
.post-cover:hover {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-surface-1);
    box-shadow: none;
    transform: none;
}

.post-cover figcaption {
    background: var(--color-surface-2);
}

.post-content {
    max-width: 760px;
    margin-inline: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.post-content blockquote {
    border-left: 3px solid var(--color-primary);
    border-radius: 0;
    background: var(--color-info-soft);
    box-shadow: none;
}

.share-box {
    padding: 1.5rem 0;
    border-block: 1px solid var(--color-border);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.share-link,
.share-link:hover {
    border: 1px solid var(--color-border-strong);
    border-radius: var(--radius-sm);
    background: var(--color-surface-1);
    color: var(--color-text);
    box-shadow: none;
    transform: none;
}

.page-hero .container,
.category-header .container,
.contact-hero .container,
.blog-hero .container {
    max-width: var(--container-width);
}

.breadcrumb-trail {
    border-bottom: 1px solid var(--color-border);
    background: var(--color-bg-alt);
    backdrop-filter: none;
}

.breadcrumb-trail__list {
    padding-block: 0.75rem;
    font-family: var(--font-family-mono);
    font-size: 0.72rem;
}

.page-category .services-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    border: 1px solid var(--color-border);
    background: var(--color-border);
}

.page-category .service-card {
    display: grid;
    grid-template-columns: 72px 1fr;
    align-items: start;
    gap: 1rem 1.25rem;
    padding: 1.5rem;
    border: 0;
    border-radius: 0;
    text-align: left;
}

.page-category .service-image { width: 64px; }
.page-category .service-card > p,
.page-category .service-card > .service-meta,
.page-category .service-card > .btn-secondary { grid-column: 1 / -1; }
.page-category .service-meta { align-items: flex-start; }

.filter-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    border-bottom: 1px solid var(--color-border);
}

.filter-link {
    padding: 0.75rem 1rem;
    border: 0;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    background: transparent;
    color: var(--color-text-muted);
}

.filter-link:hover,
.filter-link.active {
    border-bottom-color: var(--color-primary);
    background: transparent;
    color: var(--color-text);
}

.contact-page main { padding-block: 0 4rem; }
.contact-hero { margin: 0; }
.contact-hero .section-subtitle { max-width: 64ch; margin: 0; color: var(--color-text-muted); }
.contact-overview { grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr); gap: 1px; background: var(--color-border); border: 1px solid var(--color-border); }
.info-card,
.contact-form-card { padding: clamp(1.5rem, 4vw, 2.5rem); border: 0; border-radius: 0; }
.info-item { padding: 1rem 0; border-top: 1px solid var(--color-border); border-radius: 0; }
.info-link:hover { border-color: var(--color-border); background: transparent; transform: none; }
.info-link:hover .info-icon { background: var(--color-surface-2); color: var(--color-primary); transform: none; }
.info-icon { width: 40px; height: 40px; border-radius: var(--radius-sm); background: var(--color-surface-2); }
.contact-form .form-group { display: grid; gap: 0.45rem; }
.contact-form label { font-size: 0.86rem; font-weight: 600; }
.optional-label { margin-left: 0.35rem; color: var(--color-text-subtle); font-size: 0.75rem; font-weight: 400; }
.faq-section .container { max-width: 800px; text-align: left; }
.faq-section .section-subtitle { margin-inline: 0; }
.faq-grid { gap: 0; border-top: 1px solid var(--color-border); }
.faq-item { padding: 1.25rem 0; border: 0; border-bottom: 1px solid var(--color-border); border-radius: 0; background: transparent; }
.faq-item[open] { border-color: var(--color-border-strong); background: transparent; }

.account-tabs::before,
.account-tabs button::before,
.account-tabs a::before,
.support-tabs::before,
.support-tabs button::before { display: none; }
.account-tabs,
.support-tabs { padding: 0; gap: 0; backdrop-filter: none; overflow-x: auto; }
.account-tabs button,
.account-tabs a,
.support-tabs button { border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: transparent; color: var(--color-text-muted); transform: none; }
.account-tabs button:hover,
.account-tabs a:hover,
.support-tabs button:hover { border-bottom-color: var(--color-border-strong); color: var(--color-text); }
.account-tabs button.active,
.account-tabs a.active,
.support-tabs button.active { border-bottom-color: var(--color-primary); background: transparent; color: var(--color-text); box-shadow: none; transform: none; }
.account-tabs button:hover .tab-icon,
.account-tabs button.active .tab-icon,
.account-tabs a:hover .tab-icon,
.account-tabs a.active .tab-icon { transform: none; }
.tab-content { animation: none; }
.profile-card,
.account-card,
.support-card { backdrop-filter: none; }

.auth-tab-nav {
    padding: 0;
    border-bottom: 1px solid var(--color-border);
    border-radius: 0;
    background: transparent;
    backdrop-filter: none;
}

.auth-tab-btn {
    border: 0;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    background: transparent;
}

.auth-tab-btn.active,
.auth-tab-btn:not(.active):hover {
    border-bottom-color: var(--color-primary);
    background: transparent;
    color: var(--color-text);
    box-shadow: none;
}

.account-address-badge,
.page-button.active {
    border-color: var(--color-primary-fill);
    background: var(--color-primary-fill);
    color: var(--color-primary-contrast);
}

.legal-page main,
.legal-content,
.blog-post-content { max-width: 760px; margin-inline: auto; }

.error-digit {
    background: none;
    -webkit-text-fill-color: currentColor;
    color: var(--color-text);
}

.error-links {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.quick-links {
    gap: 0;
    border-top: 1px solid var(--color-border);
}

.quick-links a,
.quick-links a:hover {
    border: 0;
    border-bottom: 1px solid var(--color-border);
    border-radius: 0;
    background: transparent;
    color: var(--color-text-muted);
    transform: none;
}

.service-page {
    background: var(--color-bg);
}

.service-page .btn-primary,
.service-page .btn-primary:hover {
    border-color: var(--color-primary-fill);
    border-radius: var(--radius-sm);
    background: var(--color-primary-fill);
    color: var(--color-primary-contrast);
}

.service-page .btn-primary:hover {
    border-color: var(--color-primary-fill-hover);
    background: var(--color-primary-fill-hover);
}

.notification {
    border-radius: var(--radius-sm);
    background: var(--color-surface-1);
    box-shadow: var(--shadow-sm);
}

.notification--success { background: var(--color-success-soft); }
.notification--error { background: var(--color-danger-soft); }
.notification--info { background: var(--color-info-soft); }
.notification--warning { background: var(--color-warning-soft); }

@media (max-width: 780px) {
    .page-category .services-grid,
    .contact-overview { grid-template-columns: 1fr; }
}

/* Footer and floating support */
.footer {
    border-top: 1px solid var(--color-border);
    background: var(--color-bg-alt);
    box-shadow: none;
}

.footer-content {
    border-bottom-color: var(--color-border);
}

.footer-section h3,
.footer-section h4 {
    background: none;
    color: var(--color-text);
}

.social-links a,
.whatsapp-float,
.ai-support-toggle {
    border: 1px solid var(--color-border-strong);
    border-radius: var(--radius-sm);
    background: var(--color-surface-1);
    color: var(--color-text);
    box-shadow: none;
}

.whatsapp-float,
.ai-support-toggle {
    width: 44px;
    height: 44px;
}

.social-links a:hover,
.whatsapp-float:hover,
.ai-support-toggle:hover {
    border-color: var(--color-text-subtle);
    background: var(--color-surface-2);
    color: var(--color-text);
    box-shadow: none;
    transform: none;
}

@media (max-width: 960px) {
    .nav-content {
        inset-inline: 0;
        padding: 1rem var(--container-gutter);
        border: 0;
        border-bottom: 1px solid var(--color-border);
        border-radius: 0;
        background: var(--color-bg);
        box-shadow: none;
        transform: none;
    }

    .nav-content.is-open {
        transform: none;
    }

    .nav-link::after {
        bottom: 0;
    }
}

@media (max-width: 768px) {
    :root {
        --section-spacing-y: clamp(3.5rem, 14vw, 4rem);
    }

    h1 {
        font-size: clamp(2.25rem, 11vw, 3.25rem);
    }

    h2,
    .section-title {
        font-size: clamp(1.75rem, 8vw, 2.25rem);
    }

    .blog-grid {
        display: grid;
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}
