:root {
    --color-primary: #0F172A;
    --color-primary-hover: #1E293B;
    --color-secondary: #2563EB;
    --color-secondary-hover: #1D4ED8;
    --color-accent: #EA580C;
    --color-accent-hover: #C2410C;
    --color-bg-light: #FFFFFF;
    --color-bg-subtle: #F8FAFC;
    --color-bg-surface: #F1F5F9;
    --color-text-primary: #0F172A;
    --color-text-secondary: #475569;
    --color-text-muted: #94A3B8;
    --color-border: #E2E8F0;
    --color-border-focus: #2563EB;
    --font-headings: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

body {
    font-family: var(--font-body);
    color: var(--color-text-primary);
    background-color: var(--color-bg-subtle);
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

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

code,
kbd,
samp,
pre {
    font-family: var(--font-mono);
}

.text-muted {
    color: #94A3B8 !important;
}

.transition-fast {
    transition: color 150ms ease, background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
}

/* ===== header ===== */
.site-header-block {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

.site-header-block .js-dropdown-menu {
    display: none;
}

.site-header-block .js-dropdown-menu.is-open {
    display: block;
}

.site-header-block .js-mobile-dropdown-menu {
    display: none;
}

.site-header-block .js-mobile-dropdown-menu.is-open {
    display: block;
}

/* ===== hero_section ===== */
.wm-hero-block h1,
.wm-hero-block h2,
.wm-hero-block h3 {
    hyphens: auto;
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif
}

.wm-hero-block video {
    pointer-events: none
}

/* ===== our_core_services ===== */
.services-grid-block {
    position: relative;
    width: 100%;
}

.services-grid-block .services-grid-block__card {
    min-height: 100%;
}

.services-grid-block .services-grid-block__card img {
    transition: transform 0.25s ease-in-out;
}

.services-grid-block .services-grid-block__card:hover img {
    transform: scale(1.02);
}

.services-grid-block .services-grid-block__action-btn {
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.services-grid-block .services-grid-block__action-btn:hover {
    border-color: #cbd5e1;
    color: #0f172a;
}

/* ===== when_to_upgrade_your_wiring ===== */
.when-to-replace-section .js-check-label.is-active {
    background-color: #EFF6FF;
    border-color: #2563EB
}

.when-to-replace-section input[type="checkbox"] {
    accent-color: #2563EB;
    width: 1rem;
    height: 1rem;
    cursor: pointer
}

/* ===== how_we_work ===== */
.how-we-work-section .js-process-step-btn {
    text-align: left;
}

.how-we-work-section .js-process-step-btn:focus-visible {
    outline: 2px solid #2563EB;
    outline-offset: 2px;
}

.how-we-work-section .js-step-panel {
    animation: none;
}

/* ===== payment_terms_and_contracts ===== */
.payment-terms-block {
    position: relative;
    word-break: break-word;
    hyphens: auto;
}

.payment-terms-block .js-term-tab.active {
    background-color: #EFF6FF;
    border-color: #2563EB;
    color: #1E3A8A;
    font-weight: 600;
}

.payment-terms-block .js-term-panel.hidden {
    display: none;
}

/* ===== questions_to_ask_any_contractor ===== */
.contractor-checklist-block .js-question-card {
    transition: border-color 0.15s ease, background-color 0.15s ease;
}

.contractor-checklist-block .js-question-card.is-checked {
    border-color: #2563eb;
    background-color: #f8fafc;
}

.contractor-checklist-block .js-filter-btn {
    cursor: pointer;
}

/* ===== interactive_product_tour ===== */
.interactive-panel-tour .border-slate-850 {
    border-color: #1e293b
}

.interactive-panel-tour .tour-nav-btn.active {
    background-color: #1e293b;
    border-color: #3b82f6;
    color: #ffffff
}

.interactive-panel-tour .js-hotspot.active-hotspot {
    outline: 2px solid #3b82f6;
    border-color: #3b82f6
}

/* ===== why_choose_wavemartanny ===== */
.wm-advantages-block {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

.wm-advantages-block h2,
.wm-advantages-block h3 {
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
    hyphens: auto;
}

.wm-advantages-block .js-adv-card.is-hidden {
    display: none;
}

.wm-advantages-block .js-adv-tab-btn.active {
    background-color: #0F172A;
    color: #FFFFFF;
    border-color: #0F172A;
}

.wm-advantages-block .js-adv-card {
    will-change: border-color;
}

/* ===== request_an_inspection ===== */
.lead-form-section .lead-form-input::placeholder,
.lead-form-section .lead-form-textarea::placeholder {
    color: #64748B;
    opacity: 1;
}

.lead-form-section .lead-form-select option {
    color: #0F172A;
    background-color: #FFFFFF;
}

.lead-form-section .lead-form-select:invalid {
    color: #64748B;
}

.lead-form-section .lead-form-input:focus,
.lead-form-section .lead-form-select:focus,
.lead-form-section .lead-form-textarea:focus {
    border-color: #2563EB;
    box-shadow: 0 0 0 1px #2563EB;
}

/* ===== footer ===== */
.site-footer .footer-nav-link {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.site-footer .footer-nav-link:hover i {
    color: #3b82f6;
}

.site-header-block {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

.site-header-block .js-dropdown-menu {
    display: none;
}

.site-header-block .js-dropdown-menu.is-open {
    display: block;
}

.site-header-block .js-mobile-dropdown-menu {
    display: none;
}

.site-header-block .js-mobile-dropdown-menu.is-open {
    display: block;
}

.blog-catalog-page h1,
.blog-catalog-page h2,
.blog-catalog-page h3 {
    hyphens: auto;
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}

.blog-catalog-page input::placeholder {
    color: #94A3B8;
    opacity: 1;
}

.blog-catalog-page .js-blog-card {
    min-height: 100%;
}

.site-footer .footer-nav-link {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.site-footer .footer-nav-link:hover i {
    color: #3b82f6;
}


/* ===== PAGE: contact ===== */
.contact-form-block input::placeholder, .contact-form-block textarea::placeholder {
  color: #94a3b8;
  opacity: 1;
}
.contact-form-block input:focus, .contact-form-block textarea:focus {
  border-color: #2563eb;
}

/* ===== PAGE: privacy ===== */
.privacy-policy-view {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}
.privacy-policy-view h1,
.privacy-policy-view h2,
.privacy-policy-view h3 {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}
.privacy-policy-view .js-filter-tag.active {
  background-color: #0F172A;
  color: #FFFFFF;
  border-color: #0F172A;
}
.privacy-policy-view .js-policy-article.is-hidden {
  display: none;
}

/* ===== PAGE: terms ===== */
.terms-content-section article { transition: background-color 0.2s ease; }
.terms-content-section .js-terms-link.active { background-color: #EFF6FF; color: #2563EB; border-color: #BFDBFE; font-weight: 600; }
.terms-content-section .js-terms-link.active i { color: #2563EB; }

/* ===== PAGE: disclaimer ===== */
.disclaimer-section { font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; } .disclaimer-section h1, .disclaimer-section h2, .disclaimer-section h3 { font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif; hyphens: auto; }

.comment-item {
    box-sizing: border-box;
    position: relative;
}

.comment-avatar {
    width: 2.75rem;
    height: 2.75rem;
    min-width: 2.75rem;
    object-fit: cover;
    user-select: none;
    letter-spacing: 0.05em;
}

.comment-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 9999px;
}

.reply-item {
    box-sizing: border-box;
    position: relative;
}

.reply-avatar {
    width: 2.25rem;
    height: 2.25rem;
    min-width: 2.25rem;
    object-fit: cover;
    user-select: none;
    letter-spacing: 0.05em;
}

.reply-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 9999px;
}


/* ===== PAGE TEMPLATE: services ===== */
.site-header-block {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

.site-header-block .js-dropdown-menu {
    display: none;
}

.site-header-block .js-dropdown-menu.is-open {
    display: block;
}

.site-header-block .js-mobile-dropdown-menu {
    display: none;
}

.site-header-block .js-mobile-dropdown-menu.is-open {
    display: block;
}

.site-footer .footer-nav-link {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.site-footer .footer-nav-link:hover i {
    color: #3b82f6;
}

.wm-detail-page h1,
.wm-detail-page h2,
.wm-detail-page h3,
.wm-detail-page h4,
.wm-detail-page h5 {
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
    hyphens: auto;
}

.wm-detail-page .wm-article-body p {
    line-height: 1.75;
}

/* ===== PAGE TEMPLATE: portfolio ===== */
.site-header-block {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

.site-header-block .js-dropdown-menu {
    display: none;
}

.site-header-block .js-dropdown-menu.is-open {
    display: block;
}

.site-header-block .js-mobile-dropdown-menu {
    display: none;
}

.site-header-block .js-mobile-dropdown-menu.is-open {
    display: block;
}

.site-footer .footer-nav-link {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.site-footer .footer-nav-link:hover i {
    color: #3b82f6;
}

.wm-detail-page h1,
.wm-detail-page h2,
.wm-detail-page h3,
.wm-detail-page h4,
.wm-detail-page h5 {
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
    hyphens: auto;
}

.wm-detail-page .wm-article-body p {
    line-height: 1.75;
}

/* ===== PAGE TEMPLATE: blog ===== */
.site-header-block {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

.site-header-block .js-dropdown-menu {
    display: none;
}

.site-header-block .js-dropdown-menu.is-open {
    display: block;
}

.site-header-block .js-mobile-dropdown-menu {
    display: none;
}

.site-header-block .js-mobile-dropdown-menu.is-open {
    display: block;
}

.site-footer .footer-nav-link {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.site-footer .footer-nav-link:hover i {
    color: #3b82f6;
}

.wm-detail-page h1,
.wm-detail-page h2,
.wm-detail-page h3,
.wm-detail-page h4,
.wm-detail-page h5 {
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
    hyphens: auto;
}

.wm-detail-page .wm-article-body p {
    line-height: 1.75;
}