/**
 * NasbAfrooz Frontend Styles
 * Design inspired by modern service sites (RTL, responsive, light/dark)
 */
@font-face{font-family:yarait-fonticon-rr;src:url('fonts/yarait-fonticon-rr.eot?k1cc3e');src:url('fonts/yarait-fonticon-rr.eot?k1cc3e#iefix') format('embedded-opentype'),url('fonts/yarait-fonticon-rr.ttf?k1cc3e') format('truetype'),url('fonts/yarait-fonticon-rr.woff?k1cc3e') format('woff'),url('fonts/yarait-fonticon-rr.svg?k1cc3e#yarait-fonticon-rr') format('svg');font-weight:400;font-style:normal;font-display:block}[class*=" yitrr-"],[class^=yitrr-]{font-family:yarait-fonticon-rr!important;speak:never;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.yitrr-add:before{content:"\e900"}.yitrr-alarm-clock:before{content:"\e901"}.yitrr-angle-double-right:before{content:"\e902"}.yitrr-angle-left:before{content:"\e903"}.yitrr-angle-right:before{content:"\e904"}.yitrr-apps:before{content:"\e905"}.yitrr-at:before{content:"\e906"}.yitrr-attribution-pencil:before{content:"\e907"}.yitrr-bag-shopping-minus:before{content:"\e908"}.yitrr-battery-bolt:before{content:"\e909"}.yitrr-battery-empty:before{content:"\e90a"}.yitrr-battery-full:before{content:"\e90b"}.yitrr-battery-half:before{content:"\e90c"}.yitrr-battery-quarter:before{content:"\e90d"}.yitrr-battery-three-quarters:before{content:"\e90e"}.yitrr-bell-ring:before{content:"\e90f"}.yitrr-bookmark:before{content:"\e910"}.yitrr-box-filter:before{content:"\e911"}.yitrr-briefcase:before{content:"\e912"}.yitrr-brightness:before{content:"\e913"}.yitrr-bring-forward:before{content:"\e914"}.yitrr-bulb-1:before{content:"\e915"}.yitrr-bulb:before{content:"\e916"}.yitrr-bullseye-arrow:before{content:"\e917"}.yitrr-business-time:before{content:"\e918"}.yitrr-calendar-clock:before{content:"\e919"}.yitrr-call-incoming:before{content:"\e91a"}.yitrr-cart-minus:before{content:"\e91b"}.yitrr-cart-shopping-fast:before{content:"\e91c"}.yitrr-category:before{content:"\e91d"}.yitrr-chart-candlestick:before{content:"\e91e"}.yitrr-chart-histogram:before{content:"\e91f"}.yitrr-chart-waterfall:before{content:"\e920"}.yitrr-chat-arrow-grow:before{content:"\e921"}.yitrr-check:before{content:"\e922"}.yitrr-circle-xmark:before{content:"\e923"}.yitrr-clear-alt:before{content:"\e924"}.yitrr-clock:before{content:"\e925"}.yitrr-cloud-question:before{content:"\e926"}.yitrr-compass-alt:before{content:"\e927"}.yitrr-conveyor-belt-alt:before{content:"\e928"}.yitrr-credit-card:before{content:"\e929"}.yitrr-cross-small:before{content:"\e92a"}.yitrr-dollar:before{content:"\e92b"}.yitrr-door-open:before{content:"\e92c"}.yitrr-eco-electric:before{content:"\e92d"}.yitrr-edit:before{content:"\e92e"}.yitrr-envelope:before{content:"\e92f"}.yitrr-filter:before{content:"\e930"}.yitrr-filter-check:before{content:"\e931"}.yitrr-filter-list:before{content:"\e932"}.yitrr-fingerprint-verified:before{content:"\e933"}.yitrr-flame:before{content:"\e934"}.yitrr-flashlight:before{content:"\e935"}.yitrr-following:before{content:"\e936"}.yitrr-forklift:before{content:"\e937"}.yitrr-funnel-dollar:before{content:"\e938"}.yitrr-gem:before{content:"\e939"}.yitrr-hammer:before{content:"\e93a"}.yitrr-hammer-crash:before{content:"\e93b"}.yitrr-hand-holding-heart:before{content:"\e93c"}.yitrr-handshake:before{content:"\e93d"}.yitrr-heart-1:before{content:"\e93e"}.yitrr-heart:before{content:"\e93f"}.yitrr-heart-rate:before{content:"\e940"}.yitrr-home:before{content:"\e941"}.yitrr-home-heart:before{content:"\e942"}.yitrr-house-building:before{content:"\e943"}.yitrr-house-chimney-user:before{content:"\e944"}.yitrr-house-circle-check:before{content:"\e945"}.yitrr-industry-alt:before{content:"\e946"}.yitrr-info:before{content:"\e947"}.yitrr-instagram:before{content:"\e948"}.yitrr-interrogation:before{content:"\e949"}.yitrr-keyboard:before{content:"\e94a"}.yitrr-lamp-desk-on:before{content:"\e94b"}.yitrr-lamp-street:before{content:"\e94c"}.yitrr-laptop-mobile:before{content:"\e94d"}.yitrr-lightbulb-on:before{content:"\e94e"}.yitrr-light-ceiling:before{content:"\e94f"}.yitrr-location-arrow:before{content:"\e950"}.yitrr-map-marker:before{content:"\e951"}.yitrr-map-marker-check:before{content:"\e952"}.yitrr-map-marker-slash:before{content:"\e953"}.yitrr-map-marker-smile:before{content:"\e954"}.yitrr-marker:before{content:"\e955"}.yitrr-menu-burger:before{content:"\e956"}.yitrr-menu-dots:before{content:"\e957"}.yitrr-microchip:before{content:"\e958"}.yitrr-microchip-ai:before{content:"\e959"}.yitrr-mobile-notch:before{content:"\e95a"}.yitrr-mug-tea:before{content:"\e95b"}.yitrr-pencil:before{content:"\e95c"}.yitrr-phone-call:before{content:"\e95d"}.yitrr-phone-flip:before{content:"\e95e"}.yitrr-power:before{content:"\e95f"}.yitrr-print:before{content:"\e960"}.yitrr-qrcode:before{content:"\e961"}.yitrr-refresh:before{content:"\e962"}.yitrr-route:before{content:"\e963"}.yitrr-rv:before{content:"\e964"}.yitrr-search:before{content:"\e965"}.yitrr-settings:before{content:"\e966"}.yitrr-settings-sliders:before{content:"\e967"}.yitrr-share:before{content:"\e968"}.yitrr-shield-check:before{content:"\e969"}.yitrr-shop:before{content:"\e96a"}.yitrr-shopping-bag:before{content:"\e96b"}.yitrr-shopping-bag-add:before{content:"\e96c"}.yitrr-shopping-cart:before{content:"\e96d"}.yitrr-shopping-cart-add:before{content:"\e96e"}.yitrr-social-network:before{content:"\e96f"}.yitrr-sort-alt:before{content:"\e970"}.yitrr-star:before{content:"\e971"}.yitrr-target:before{content:"\e972"}.yitrr-telegram:before{content:"\e973"}.yitrr-temperature-down:before{content:"\e974"}.yitrr-temperature-frigid:before{content:"\e975"}.yitrr-temperature-low:before{content:"\e976"}.yitrr-temperature-up:before{content:"\e977"}.yitrr-thumbtack:before{content:"\e978"}.yitrr-time-past:before{content:"\e979"}.yitrr-time-quarter-past:before{content:"\e97a"}.yitrr-time-twenty-four:before{content:"\e97b"}.yitrr-trash:before{content:"\e97c"}.yitrr-truck-container:before{content:"\e97d"}.yitrr-truck-container-empty:before{content:"\e97e"}.yitrr-truck-front:before{content:"\e97f"}.yitrr-truck-moving:before{content:"\e980"}.yitrr-truck-tow:before{content:"\e981"}.yitrr-usd-circle:before{content:"\e982"}.yitrr-user:before{content:"\e983"}.yitrr-user-headset:before{content:"\e984"}.yitrr-users:before{content:"\e985"}.yitrr-users-alt:before{content:"\e986"}.yitrr-wallet:before{content:"\e987"}.yitrr-whatsapp:before{content:"\e988"}.yitrr-world:before{content:"\e989"}.yitrr-wrench-alt:before{content:"\e98a"}.yitrr-wrench-simple:before{content:"\e98b"}
@font-face{font-family:Kalameh;src:url('fonts/KalamehWebFaNum-Light.woff2') format('woff2'),url('fonts/KalamehWebFaNum-Light.woff') format('woff');font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Kalameh;src:url('fonts/KalamehWebFaNum-Regular.woff2') format('woff2'),url('fonts/KalamehWebFaNum-Regular.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Kalameh;src:url('fonts/KalamehWebFaNum-Medium.woff2') format('woff2'),url('fonts/KalamehWebFaNum-Medium.woff') format('woff');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Kalameh;src:url('fonts/KalamehWebFaNum-SemiBold.woff2') format('woff2'),url('fonts/KalamehWebFaNum-SemiBold.woff') format('woff');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Kalameh;src:url('fonts/KalamehWebFaNum-Bold.woff2') format('woff2'),url('fonts/KalamehWebFaNum-Bold.woff') format('woff');font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Kalameh;src:url('fonts/KalamehWebFaNum-ExtraBold.woff2') format('woff2'),url('fonts/KalamehWebFaNum-ExtraBold.woff') format('woff');font-weight:800;font-style:normal;font-display:swap}

/* ===== CSS Variables ===== */
:root {
    --primary: #0f766e;
    --primary-dark: #0d5c56;
    --primary-light: #14b8a6;
    --primary-soft: #ccfbf1;
    --accent: #ffba54;
    --accent-dark: #d97706;
    --call: #68ba0f;
    --call-hover: #579d0c;
    --danger: #dc2626;

    --bg: #f8fafc;
    --bg-card: #ffffff;
    --bg-header: rgba(255, 255, 255, 0.92);
    --bg-footer: #0f172a;
    --bg-hero: linear-gradient(135deg, #0f766e 0%, #0e7490 45%, #134e4a 100%);
    --text: #0f172a;
    --text-muted: #64748b;
    --text-on-dark: #f1f5f9;
    --border: #e2e8f0;
    --shadow: 0 4px 20px rgba(15, 23, 42, 0.08);
    --shadow-lg: 0 12px 40px rgba(15, 23, 42, 0.12);
    --radius: 14px;
    --radius-sm: 10px;
    --font: "Kalameh", "Vazirmatn", sans-serif;
    --header-h: 68px;
    --fixed-call-h: 64px;
    --transition: 0.25s ease;
}

[data-theme="dark"] {
    --bg: #0b1220;
    --bg-card: #1e283e;
    --bg-header: rgba(17, 24, 39, 0.94);
    --bg-footer: #020617;
    --bg-hero: linear-gradient(135deg, #064e3b 0%, #0c4a6e 50%, #042f2e 100%);
    --text: #e2e8f0;
    --text-muted: #94a3b8;
    --text-on-dark: #f8fafc;
    --border: #1e293b;
    --shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
    --shadow-lg: 0 12px 40px rgba(0, 0, 0, 0.45);
    --primary-soft: #134e4a;
}

/* ===== Reset ===== */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: var(--font);
    background: var(--bg);
    color: var(--text);
    line-height: 1.7;
    font-size: 15px;
    -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--primary); text-decoration: none; transition: color var(--transition); }
a:hover { color: var(--primary-light); }
ul { list-style: none; margin: 0; padding: 0; }
h1, h2, h3, h4 { line-height: 1.35; margin: 0 0 0.6em; font-weight: 600; }

.container {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 16px;
}

.skip-link {
    position: absolute;
    top: -100px;
    right: 16px;
    background: var(--primary);
    color: #fff;
    padding: 8px 16px;
    z-index: 9999;
    border-radius: 8px;
}
.skip-link:focus { top: 12px; }

/* ===== Header ===== */
.site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: var(--bg-header);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--border);
    height: var(--header-h);
    transition: box-shadow var(--transition);
}
.site-header.scrolled { box-shadow: var(--shadow); }

.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: var(--header-h);
    gap: 16px;
}

.logo {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--text);
    font-weight: 800;
    font-size: 1.15rem;
    flex-shrink: 0;
}
.logo:hover { color: var(--primary); }
.logo-icon {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: var(--bg-hero);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

.main-nav {
    display: flex;
    align-items: center;
    gap: 4px;
}
.nav-link {
    color: var(--text);
    padding: 8px 14px;
    border-radius: 8px;
    font-size: 0.92rem;
    font-weight: 500;
}
.nav-link:hover {
    background: var(--primary-soft);
    color: var(--primary);
}

.header-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.theme-toggle, .nav-toggle {
    width: 40px;
    height: 40px;
    border: 1px solid var(--border);
    background: var(--bg-card);
    color: var(--text);
    border-radius: 10px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background var(--transition), border-color var(--transition);
}
.theme-toggle:hover, .nav-toggle:hover {
    border-color: var(--primary);
    color: var(--primary);
}
.nav-toggle { display: none; }

.header-phone {
    display: flex;
    align-items: center;
    gap: 8px;
    background: var(--call);
    color: #fff !important;
    padding: 8px 14px;
    border-radius: 50px;
    font-weight: 500;
    font-size: 0.9rem;
    direction: ltr;
}
.header-phone:hover { background: var(--call-hover); color: #fff !important; }

/* ===== Hero ===== */
.hero {
    background: var(--bg-hero);
    color: var(--text-on-dark);
    padding: 56px 0 48px;
    position: relative;
    overflow: hidden;
}
.hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 20% 50%, rgba(255,255,255,0.08), transparent 50%),
                radial-gradient(circle at 80% 20%, rgba(245,158,11,0.12), transparent 40%);
    pointer-events: none;
}
.hero-inner { position: relative; z-index: 1; }
.hero-title {
    font-size: clamp(1.6rem, 4vw, 2.4rem);
    margin-bottom: 14px;
    color: #fff;
}
.hero-desc {
    font-size: 1.05rem;
    opacity: 0.92;
    max-width: 640px;
    margin-bottom: 20px;
}
.hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 20px;
    margin-bottom: 24px;
    font-size: 0.9rem;
    opacity: 0.9;
}
.hero-meta span { display: flex; align-items: center; gap: 6px; }
.hero-cta { margin-bottom: 32px; }

.hero-features {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}
.hero-feat {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.18);
    backdrop-filter: blur(6px);
    border-radius: var(--radius-sm);
    padding: 16px 12px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    font-size: 0.88rem;
    font-weight: 500;
}
.hero-feat i {
    font-size: 1.4rem;
    color: var(--accent);
}

.page-hero {
    background: var(--bg-hero);
    color: #fff;
    padding: 36px 0 40px;
}
.page-title {
    font-size: clamp(1.4rem, 3vw, 2rem);
    color: #fff;
    margin-bottom: 16px;
}
.breadcrumb {
    font-size: 0.85rem;
    margin-bottom: 12px;
    opacity: 0.9;
}
.breadcrumb a { color: #fff; opacity: 0.85; }
.breadcrumb a:hover { opacity: 1; text-decoration: underline; }
.breadcrumb .sep { margin: 0 6px; opacity: 0.5; }
.breadcrumb .current { opacity: 0.95; }

/* ===== Buttons ===== */
.na-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 20px;
    border-radius: 50px;
    font-family: inherit;
    font-size: 0.95rem;
    font-weight: 500;
    border: none;
    cursor: pointer;
    transition: transform 0.15s, background var(--transition), box-shadow var(--transition);
    text-decoration: none !important;
}
.na-btn:active { transform: scale(0.97); }
.na-btn-call {
    background: var(--call);
    color: #fff !important;
    box-shadow: 0 4px 16px rgba(22, 163, 74, 0.35);
}
.na-btn-call:hover {
    background: var(--call-hover);
    color: #fff !important;
    box-shadow: 0 6px 20px rgba(22, 163, 74, 0.45);
}
.na-btn-primary {
    background: var(--primary);
    color: #fff !important;
}
.na-btn-primary:hover { background: var(--primary-dark); color: #fff !important; }
.na-btn-lg { padding: 14px 28px; font-size: 1.05rem; }
.na-btn-block { width: 100%; }

/* ===== Widgets ===== */
.page-widgets {
    padding: 40px 20px;
}
.na-widget {
    margin-bottom: 40px;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 28px 24px;
    box-shadow: var(--shadow);
}
.na-widget-title {
    font-size: 1.35rem;
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--primary-soft);
    color: var(--text);
    position: relative;
}
.na-widget-title::after {
    content: '';
    position: absolute;
    bottom: -2px;
    right: 0;
    width: 64px;
    height: 2px;
    background: var(--primary);
}

.na-widget.reveal {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 0.5s ease, transform 0.5s ease;
}
.na-widget.reveal.visible {
    opacity: 1;
    transform: none;
}

/* Prose / text sample */
.na-prose {
    font-size: 1rem;
    line-height: 1.9;
    color: var(--text);
    font-weight: 300;
}
.na-prose p { margin: 0 0 1em; }
.na-prose ul, .na-prose ol {
    margin: 0 0 1em;
    padding-right: 1.4em;
    list-style: disc;
}
.na-prose li { margin-bottom: 0.4em; }
.na-prose strong { color: var(--primary); }
.na-prose h2, .na-prose h3 { margin-top: 1.2em; }

/* Areas chips */
.na-areas-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.na-area-chip {
    display: inline-block;
    padding: 5px 10px;
    background: var(--primary-soft);
    color: var(--primary-dark);
    border-radius: 50px;
    font-size: 0.9rem;
    font-weight: 600;
    border: 1px solid transparent;
    transition: all var(--transition);
}
[data-theme="dark"] .na-area-chip {
    color: var(--primary-light);
    border-color: var(--primary);
}
.na-area-chip:hover {
    background: var(--primary);
    color: #fff;
}

/* Services */
.na-services-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 16px;
}
.na-service-card {
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: var(--radius-sm);
    padding: 20px 16px;
    text-align: center;
    transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}
.na-service-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow);
    border-color: var(--primary-light);
}
.na-service-icon {
    width: 52px;
    height: 52px;
    margin: 0 auto 12px;
    border-radius: 14px;
    background: var(--bg-hero);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
}
.na-service-name {
    font-size: 1rem;
    margin-bottom: 8px;
}
.na-service-desc {
    font-size: 0.85rem;
    color: var(--text-muted);
    margin-bottom: 12px;
}
.na-service-price {
    font-weight: 600;
    color: var(--primary);
    font-size: 0.95rem;
}

/* Workforce */
.na-workforce-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 20px;
}
.na-worker-card {
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 24px 18px 20px;
    text-align: center;
    transition: transform var(--transition), box-shadow var(--transition);
}
.na-worker-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-lg);
}
.na-worker-photo-wrap {
    position: relative;
    width: 120px;
    height: 120px;
    margin: 0 auto 14px;
}
.na-worker-photo {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid var(--primary);
    background: var(--border);
}
.na-online-badge {
    position: absolute;
    bottom: 4px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--call);
    color: #fff;
    font-size: 0.7rem;
    font-weight: 700;
    padding: 2px 10px;
    border-radius: 20px;
    white-space: nowrap;
}
.na-worker-name { font-size: 1.1rem; margin-bottom: 4px; }
.na-worker-title {
    color: var(--text-muted);
    font-size: 0.85rem;
    margin-bottom: 14px;
}
.na-worker-stats {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-bottom: 12px;
}
.na-stat {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.na-stat strong {
    font-size: 1.05rem;
    color: var(--primary);
}
.na-stat span {
    font-size: 0.75rem;
    color: var(--text-muted);
}
.na-worker-scope {
    font-size: 0.85rem;
    color: var(--text-muted);
    margin-bottom: 14px;
}
.na-worker-scope i { color: var(--primary); margin-left: 4px; }
.na-worker-phone {
    display: block;
    margin-top: 8px;
    font-size: 0.9rem;
    direction: ltr;
    font-weight: 600;
}

/* Image widget */
.na-widget-image {
    padding: 12px;
    text-align: center;
}
.na-content-img {
    width: 100%;
    border-radius: var(--radius-sm);
    margin: 0 auto;
}
.na-widget-image figcaption {
    margin-top: 10px;
    font-size: 0.9rem;
    color: var(--text-muted);
}

/* CTA widget */
.na-widget-cta {
    background: var(--bg-hero);
    border: none;
    color: #fff;
    text-align: center;
    padding: 36px 24px;
}
.na-cta-title {
    color: #fff;
    font-size: 1.5rem;
    margin-bottom: 8px;
    border: none;
    padding: 0;
}
.na-cta-title::after { display: none; }
.na-cta-sub {
    opacity: 0.9;
    margin-bottom: 20px;
}

/* Category pages */
.category-pages-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
    padding: 20px 0;
}
.cat-page-card {
    display: block;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 22px;
    color: var(--text);
    box-shadow: var(--shadow);
    transition: transform var(--transition), border-color var(--transition);
}
.cat-page-card:hover {
    transform: translateY(-3px);
    border-color: var(--primary);
    color: var(--text);
}
.cat-page-card h2 {
    font-size: 1.1rem;
    margin-bottom: 8px;
    color: var(--primary);
}
.cat-page-card p {
    font-size: 0.9rem;
    color: var(--text-muted);
    margin-bottom: 12px;
}
.cat-page-more {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--primary);
}

/* Error */
.error-box {
    text-align: center;
    padding: 80px 16px;
}
.error-box h1 {
    font-size: 4rem;
    color: var(--primary);
    margin-bottom: 8px;
}

/* ===== Footer ===== */
.site-footer {
    background: var(--bg-footer);
    color: #cbd5e1;
    padding-top: 48px;
    margin-top: 20px;
}
.footer-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 32px;
    padding-bottom: 36px;
}
.footer-brand {
    color: #fff;
    font-size: 1.2rem;
    margin-bottom: 12px;
}
.footer-brand i { color: var(--primary-light); }
.footer-col h4 {
    color: #fff;
    font-size: 1rem;
    margin-bottom: 14px;
}
.footer-col p { font-size: 0.9rem; line-height: 1.7; margin-bottom: 10px; }
.footer-hours { color: var(--primary-light); }
.footer-links li { margin-bottom: 8px; }
.footer-links a {
    color: #94a3b8;
    font-size: 0.9rem;
}
.footer-links a:hover { color: #fff; }
.footer-phone {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #fff !important;
    font-size: 1.15rem;
    font-weight: 700;
    direction: ltr;
    margin-bottom: 10px;
}
.footer-phone:hover { color: var(--primary-light) !important; }
.footer-note { font-size: 0.85rem; color: #64748b; }
.footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.08);
    padding: 16px 0;
    text-align: center;
    font-size: 0.85rem;
    color: #64748b;
}

/* ===== Fixed Call Button ===== */
.fixed-call-btn {
    position: fixed;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1100;
    display: flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #16a34a, #15803d);
    color: #fff !important;
    padding: 12px 22px;
    border-radius: 50px;
    font-weight: 500;
    font-size: 0.95rem;
    box-shadow: 0 8px 28px rgba(22, 163, 74, 0.45);
    max-width: calc(100% - 32px);
    transition: transform 0.2s, box-shadow 0.2s;
}
.fixed-call-btn:hover {
    transform: translateX(-50%) translateY(-3px);
    box-shadow: 0 12px 32px rgba(22, 163, 74, 0.55);
    color: #fff !important;
}
.fixed-call-btn i {
    font-size: 1.15rem;
    animation: ring 2s ease infinite;
}
.fixed-call-num {
    direction: ltr;
    opacity: 0.95;
    font-size: 0.9rem;
}
.fixed-call-pulse {
    position: absolute;
    inset: -4px;
    border-radius: 50px;
    border: 2px solid rgba(22, 163, 74, 0.5);
    animation: pulse-ring 2s ease infinite;
    pointer-events: none;
}

@keyframes ring {
    0%, 100% { transform: rotate(0); }
    10%, 30% { transform: rotate(-12deg); }
    20%, 40% { transform: rotate(12deg); }
    50% { transform: rotate(0); }
}
@keyframes pulse-ring {
    0% { transform: scale(1); opacity: 1; }
    100% { transform: scale(1.12); opacity: 0; }
}

/* ===== Responsive ===== */
@media (max-width: 900px) {
    .hero-features { grid-template-columns: repeat(2, 1fr); }
    .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 768px) {
    .nav-toggle { display: flex; }
    .main-nav {
        display: none;
        position: absolute;
        top: var(--header-h);
        right: 0;
        left: 0;
        background: var(--bg-card);
        border-bottom: 1px solid var(--border);
        flex-direction: column;
        padding: 12px;
        box-shadow: var(--shadow);
        z-index: 999;
    }
    .main-nav.open { display: flex; }
    .nav-link { width: 100%; padding: 12px 16px; }
    .header-phone span { display: none; }
    .header-phone { padding: 8px 12px; }
    .hero { padding: 40px 0 36px; }
    .na-widget { padding: 20px 16px; }
    .footer-grid { grid-template-columns: 1fr; gap: 24px; }
    .fixed-call-text { display: none; }
    .fixed-call-btn { bottom: 12px; padding: 12px 18px; }
}
@media (max-width: 480px) {
    .hero-features { grid-template-columns: 1fr 1fr; gap: 8px; }
    .hero-feat { padding: 12px 8px; font-size: 0.8rem; }
    .na-workforce-grid,
    .na-services-grid { grid-template-columns: 1fr; }
}

/* Print */
@media print {
    .site-header, .fixed-call-btn, .theme-toggle, .nav-toggle { display: none !important; }
    body { padding-bottom: 0; }
    .na-widget { box-shadow: none; break-inside: avoid; }
}


/* Clickable service/area widgets (v1.1.0) */
a.na-card-link,
a.na-chip-link {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
a.na-card-link:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
}
a.na-chip-link:hover {
  filter: brightness(0.97);
}
a.na-card-link:focus-visible,
a.na-chip-link:focus-visible {
  outline: 2px solid var(--primary, #0d9488);
  outline-offset: 2px;
}
